Configurar vários data centers para o mTLS da Apigee

A Apigee mTLS oferece suporte a vários data centers. Assim, é possível escalonar a configuração para incluir topologias mais complexas, como uma instalação em cluster de 12 nós.

O processo de instalação do mTLS em uma topologia de vários data centers é o mesmo para topologias mais simples. No entanto, você precisa garantir que a instalação atenda aos pré-requisitos e que os arquivos de configuração sejam alterados conforme descrito nas seções a seguir.

Pré-requisitos

Para usar o mTLS da 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 Alterar uma configuração atual do apigee-mtls.
  • Abra a porta 8302 em cada host que esteja executando 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 existir 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:

  1. Altere o valor da propriedade de configuração ALL_IP para incluir todos os endereços IP do host em todas as regiões.
  2. Verifique se o valor da propriedade REGION é o nome da região ou do data center atual. Por exemplo, "dc-1".
  3. Adicione as seguintes propriedades:
    Propriedade Descrição
    APIGEE_MTLS_MULTI_DC_ENABLE Se você usa 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 região second na configuração, use a propriedade MTLP_REMOTE_REGION_1_IP.

    MTLS_REMOTE_REGION_1_NAME O nome da região second em uma configuração de vários data centers. Por exemplo, "dc-2".

    No arquivo de configuração da região second, você usará "dc-2" para REGION e "dc-1" para MTLS_REMOTE_REGION_1_NAME.

    MTLS_REMOTE_REGION_1_IP Uma lista delimitada por espaço 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 estã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"

Saiba mais sobre as propriedades da configuração padrão em 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 um exemplo de 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 da Apigee foi testado em dois data centers e é compatível apenas com dois. 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

Como mencionado anteriormente, não há suporte para configurações de mais de dois data centers.