O mTLS da Apigee é compatível com vários data centers para que você possa escalonar sua configuração para incluir topologias mais complexas, como uma instalação de cluster de 12 nós.
O processo de instalação do mTLS em uma topologia de vários data centers é o mesmo que ocorre para topologias mais simples. No entanto, é necessário garantir que a instalação atenda aos pré-requisitos e que você mude os arquivos de configuração conforme descrito nas seções a seguir.
Pré-requisitos
Para usar o mTLS do Apigee com vários data centers, você precisa:
- Desinstale o
apigee-mtls
e reinstale-o com a configuração de vários data centers. Não é possível modificar uma configuração atual. Para mais informações, consulte Mudar uma configuração apigee-mtls existente. - Abra a porta 8302 em todos os hosts que executam mTLS.
- Verifique se todos os membros do cluster mTLS têm endereços IP exclusivos, consistentes para todos os membros do cluster.
- Ao especificar arquivos de configuração, use caminhos absolutos nos comandos em que possa haver ambiguidade.
- Adicione propriedades de configuração de vários data centers, conforme descrito em Arquivos de configuração para vários data centers.
Arquivos de configuração para vários data centers
Para usar o mTLS da Apigee com vários data centers, crie um arquivo de configuração separado para cada data center.
Em cada um dos arquivos de configuração:
- Mude o valor da propriedade de configuração
ALL_IP
para incluir todos os endereços IP do host em todas as regiões. - Verifique se o valor da propriedade
REGION
é o nome da região ou do data center atual. Por exemplo, "dc-1". - Adicione as seguintes propriedades:
Propriedade Descrição APIGEE_MTLS_MULTI_DC_ENABLE
Se você está usando ou não uma configuração de vários data centers. Defina como "y" se você estiver configurando vários data centers. Caso contrário, omita ou defina como "n". O padrão é omitido. MTLS_LOCAL_REGION_IP
Uma lista delimitada por espaço de todos os endereços IP usados pela região atual que você está configurando. Por exemplo, "10.0.0.1 10.0.0.2 10.0.0.3". Para a segunda região na configuração, use a propriedade
MTLS_REMOTE_REGION_1_IP
.MTLS_REMOTE_REGION_1_NAME
O nome da segunda região em uma configuração de vários data centers. Por exemplo, "dc-2". No arquivo de configuração da segunda região, você vai usar "dc-2" para
REGION
e "dc-1" paraMTLS_REMOTE_REGION_1_NAME.
.MTLS_REMOTE_REGION_1_IP
Uma lista delimitada por espaços de todos os endereços IP usados pela segunda região em uma configuração de vários data centers. Por exemplo, "10.0.0.4 10.0.0.5 10.0.0.6".
Os exemplos a seguir mostram os arquivos de configuração de dois data centers ("dc-1" e "dc-2"). As propriedades específicas de uma configuração de vários data centers são destacadas):
Arquivo de configuração dc-1
ALL_IP="10.126.0.114 10.126.0.113 10.126.0.96 10.126.0.132 10.126.0.133 10.126.0.104 10.126.0.106 10.126.0.105 10.126.0.95 10.126.0.102 10.126.0.100 10.126.0.112" LDAP_MTLS_HOSTS="10.126.0.114 10.126.0.106" ZK_MTLS_HOSTS="10.126.0.114 10.126.0.113 10.126.0.96 10.126.0.106 10.126.0.105 10.126.0.95" CASS_MTLS_HOSTS="10.126.0.114 10.126.0.113 10.126.0.96 10.126.0.106 10.126.0.105 10.126.0.95" PG_MTLS_HOSTS="10.126.0.104 10.126.0.112" RT_MTLS_HOSTS="10.126.0.113 10.126.0.96 10.126.0.105 10.126.0.95" MS_MTLS_HOSTS="10.126.0.114 10.126.0.106" MP_MTLS_HOSTS="10.126.0.113 10.126.0.96 10.126.0.105 10.126.0.95" QP_MTLS_HOSTS="10.126.0.132 10.126.0.133 10.126.0.102 10.126.0.100" ENABLE_SIDECAR_PROXY="y" ENCRYPT_DATA="zRNQ9lhRySNTfegiLLLfIQ==" PATH_TO_CA_CERT="/opt/consul-agent-ca.pem" PATH_TO_CA_KEY="/opt/consul-agent-ca-key.pem" APIGEE_MTLS_MULTI_DC_ENABLE="y" REGION="dc-1" MTLS_LOCAL_REGION_IP="10.126.0.114 10.126.0.113 10.126.0.96 10.126.0.132 10.126.0.133 10.126.0.104" MTLS_REMOTE_REGION_1_NAME="dc-2" MTLS_REMOTE_REGION_1_IP="10.126.0.106 10.126.0.105 10.126.0.95 10.126.0.102 10.126.0.100 10.126.0.112"
Arquivo de configuração dc-2
ALL_IP="10.126.0.114 10.126.0.113 10.126.0.96 10.126.0.132 10.126.0.133 10.126.0.104 10.126.0.106 10.126.0.105 10.126.0.95 10.126.0.102 10.126.0.100 10.126.0.112" LDAP_MTLS_HOSTS="10.126.0.114 10.126.0.106" ZK_MTLS_HOSTS="10.126.0.114 10.126.0.113 10.126.0.96 10.126.0.106 10.126.0.105 10.126.0.95" CASS_MTLS_HOSTS="10.126.0.114 10.126.0.113 10.126.0.96 10.126.0.106 10.126.0.105 10.126.0.95" PG_MTLS_HOSTS="10.126.0.104 10.126.0.112" RT_MTLS_HOSTS="10.126.0.113 10.126.0.96 10.126.0.105 10.126.0.95" MS_MTLS_HOSTS="10.126.0.114 10.126.0.106" MP_MTLS_HOSTS="10.126.0.113 10.126.0.96 10.126.0.105 10.126.0.95" QP_MTLS_HOSTS="10.126.0.132 10.126.0.133 10.126.0.102 10.126.0.100" ENABLE_SIDECAR_PROXY="y" ENCRYPT_DATA="zRNQ9lhRySNTfegiLLLfIQ==" PATH_TO_CA_CERT="/opt/consul-agent-ca.pem" PATH_TO_CA_KEY="/opt/consul-agent-ca-key.pem" APIGEE_MTLS_MULTI_DC_ENABLE="y" REGION="dc-2" MTLS_LOCAL_REGION_IP="10.126.0.106 10.126.0.105 10.126.0.95 10.126.0.102 10.126.0.100 10.126.0.112" MTLS_REMOTE_REGION_1_NAME="dc-1" MTLS_REMOTE_REGION_1_IP="10.126.0.114 10.126.0.113 10.126.0.96 10.126.0.132 10.126.0.133 10.126.0.104"
Para informações sobre as propriedades de configuração padrão, consulte Etapa 1: atualizar o arquivo de configuração.
Testar uma configuração de vários data centers
O comando raft list-peers
exibe uma lista de endereços IP definidos em MTLS_LOCAL_REGION_IP
, o que significa que eles estão localizados no mesmo data center.
Os exemplos a seguir mostram a saída de um comando raft list-peers
:
[ec2-user]# consul operator raft list-peers Node ID Address State Voter RaftProtocol prc-test-1-2119 d1361917-b244-42 10.126.0.151:8300 leader true 3 prc-test-0-2119 fad66fc3-22a0-43 10.126.0.155:8300 follower true 3 prc-test-2-2119 78847b12-dd83-44 10.126.0.159:8300 follower true 3 prc-test-6-2119 60bb50ac-37b6-52 10.126.0.152:8300 leader true 3 prc-test-7-2119 515bbdfd-e968-53 10.126.0.147:8300 follower true 3 prc-test-8-2119 d869c9a5-b4f6-54 10.126.0.158:8300 follower true 3
O mTLS do Apigee foi testado em dois data centers. No entanto, é possível especificar configurações de até oito data centers usando as seguintes propriedades:
MTLS_REMOTE_REGION_[2-8]_IP
MTLS_REMOTE_REGION_[2-8]_NAME