Esta página fornece informações sobre como configurar um balanceador de carga de rede de encaminhamento interno ou um balanceador de carga de aplicações interno (pré-visualização) para que seja registado automaticamente no Service Directory.
Quando cria o equilibrador de carga, pode registá-lo como um ponto final num espaço de nomes do Service Directory e num serviço existentes à sua escolha. As aplicações cliente podem, em seguida, usar o Service Directory (através de HTTP ou gRPC) e/ou o DNS (se tiver criado uma zona de DNS do Service Directory) para resolver o endereço do serviço de balanceamento de carga interno e estabelecer ligação diretamente ao mesmo.
Limitações
A integração do Service Directory com o balanceamento de carga interno tem as seguintes limitações:
- O registo automático aplica-se apenas aos balanceadores de carga internos e de rede. Pode registar serviços de equilíbrio de carga do Google Kubernetes Engine através da integração do GKE. Pode registar balanceadores de carga globais e entradas e gateways do Google Kubernetes Engine chamando a API Service Directory.
- Só pode usar o registo automático no momento da criação da regra de encaminhamento. O registo automático através da atualização da CLI Google Cloud para uma regra de encaminhamento já existente não está disponível.
- Pode registar equilibradores de carga internos no Service Directory nos projetos anfitrião ou de serviço de uma configuração de rede de VPC partilhada. No entanto, todos os componentes de equilíbrio de carga e back-ends têm de existir no mesmo projeto. Para mais detalhes, consulte as limitações do balanceamento de carga interno.
- O Service Directory não fornece conetividade, o que significa que, embora o Service Directory armazene o endereço IP virtual do balanceador de carga interno, a procura do balanceador de carga interno no Service Directory não garante que se possa estabelecer ligação ao endereço IP virtual.
Antes de começar
Estas instruções requerem o seguinte:
Já tem de ter um espaço de nomes e um serviço do Service Directory implementados. Caso contrário, crie um espaço de nomes e um serviço através do procedimento em Configurar o Service Directory.
O espaço de nomes e o serviço do Service Directory têm de estar no mesmo projeto e região que a regra de encaminhamento do balanceador de carga interno que está a criar.
Já tem de ter configurado os recursos necessários para criar uma regra de encaminhamento do balanceador de carga interno.
- Para ver informações sobre como criar um balanceador de carga de rede de encaminhamento interno, consulte o artigo Configure um balanceador de carga de rede de encaminhamento interno.
- Para ver informações sobre como criar um Application Load Balancer interno, consulte o artigo Configure um Application Load Balancer interno.
Configure regras de encaminhamento para registar um balanceador de carga interno no Service Directory
Tem de configurar uma regra de encaminhamento para registar o balanceador de carga interno no Service Directory. Para registar um Network Load Balancer de encaminhamento interno ou um Application Load Balancer interno, consulte as secções seguintes.
Registe um balanceador de carga de rede de passagem interno
Para registar um Network Load Balancer de encaminhamento interno, execute o comando gcloud compute forwarding-rules
create
e defina a flag service-directory-registration
:
gcloud compute forwarding-rules create FORWARDING_RULE_NAME \ --region=REGION \ --load-balancing-scheme=INTERNAL \ --network=NETWORK_NAME \ --subnet=SUBNET_NAME \ --address=RESERVED_IP_ADDRESS \ --ip-protocol=PROTOCOL_TYPE \ --ports=PORT_NUMBER \ --backend-service=BACKEND_SERVICE_NAME \ --backend-service-region=REGION \ --service-directory-registration=SD_SERVICE_NAME
Substitua o seguinte:
FORWARDING_RULE_NAME
: um nome para a regra de encaminhamento que quer criarREGION
: a região na qual criar a regra de encaminhamentoNETWORK_NAME
: a rede à qual esta regra de encaminhamento se aplicaSUBNET_NAME
: a sub-rede à qual esta regra de encaminhamento se aplicaRESERVED_IP_ADDRESS
: o endereço IP que a regra de encaminhamento servePROTOCOL_TYPE
: o protocolo IP que a regra vai publicarPORT_NUMBER
: uma lista de portas separadas por vírgulasBACKEND_SERVICE_NAME
: serviço de back-end de destino que recebe o tráfegoSD_SERVICE_NAME
: o nome totalmente qualificado do serviço do Service Directory onde quer registar o ponto final. Tem de estar no mesmo projeto e região que a regra de encaminhamento que está a ser criada. Por exemplo: projects/PROJECT
/locations/REGION
/namespaces/NAMESPACE_NAME
/services/SERVICE_NAME
.
Registe um balanceador de carga de aplicações interno
Para registar um Application Load Balancer interno regional, execute o comando gcloud compute forwarding-rules
create
e defina a flag service-directory-registration
:
gcloud beta compute forwarding-rules create FORWARDING_RULE_NAME \ --region=REGION \ --load-balancing-scheme=INTERNAL_MANAGED \ --network=NETWORK_NAME \ --address=RESERVED_IP_ADDRESS \ --target-https-proxy=PROXY_NAME \ --target-https-proxy-region=PROXY_REGION \ --ports=PORT_NUMBER \ --service-directory-registration=SD_SERVICE_NAME
Substitua o seguinte:
FORWARDING_RULE_NAME
: um nome para a regra de encaminhamento que quer criarREGION
: a região na qual criar a regra de encaminhamentoNETWORK_NAME
: a rede à qual esta regra de encaminhamento se aplicaRESERVED_IP_ADDRESS
: o endereço IP que a regra de encaminhamento servePROXY_NAME
: o proxy de destino que recebe o tráfegoPROXY_REGION
: a região em que o proxy vai operarPORT_NUMBER
: uma lista de portas separadas por vírgulasSD_SERVICE_NAME
: o nome totalmente qualificado do serviço do Service Directory onde quer registar o ponto final. Este serviço tem de estar no mesmo projeto e região que a regra de encaminhamento que está a ser criada. Por exemplo: projects/PROJECT
/locations/REGION
/namespaces/NAMESPACE_NAME
/services/SERVICE_NAME
.
Valide o ponto final
Um ou mais pontos finais do Service Directory criados quando regista um balanceador de carga interno têm as seguintes caraterísticas:
- O ponto final tem o mesmo nome que o nome da regra de encaminhamento com o número de porta especificado (
<forwarding rule name>-<port>
). Por exemplo, se criar uma regra de encaminhamentoRULE
com--port=8080
, recebe um ponto final denominadoRULE-8080
. Para a mesma regra, se especificou duas portas--port=8080, 8081
, recebe dois pontos finais,RULE-8080
eRULE-8081
. Se especificar--port=ALL
, o ponto final do diretório de serviços é registado com a porta0
. Se for o proprietário do balanceador de carga interno, tem de garantir que o autor da chamada da API sabe a porta à qual se ligar. - Não pode modificar nem eliminar o ponto final através da API Service Directory pública. O ponto final só é eliminado automaticamente quando elimina a regra de encaminhamento. Isto significa que não pode eliminar o serviço e o espaço de nomes no qual o ponto final reside enquanto a regra de encaminhamento existir.
- O ponto final em si não é faturado, embora os detalhes de preços normais se apliquem a quaisquer chamadas API para o ponto final.
Para confirmar que o ponto final foi criado, resolva o serviço no Service Directory. Deve ver um ponto final com o mesmo nome que o nome da regra de encaminhamento com o número de porta especificado.
Para resolver o serviço no diretório de serviços, faça o seguinte:
gcloud
Execute o comando gcloud service-directory services
resolve
:
gcloud service-directory services resolve SD_SERVICE_NAME \ --namespace=SD_NAMESPACE_NAME \ --location=REGION
Substitua o seguinte:
SD_SERVICE_NAME
: o nome do serviço do diretório de serviços a resolver. Tem de estar no nome do espaço de nomes do diretório de serviços.SD_NAMESPACE_NAME
: o nome que atribuiu ao espaço de nomes que contém o seu serviço.REGION
: a região que contém o espaço de nomes. Trusted Cloud Esta deve ser a mesma região em que criou a regra de encaminhamento.
Opcional: crie uma zona do Service Directory através do Cloud DNS
Pode resolver pontos finais do Service Directory registados através desta integração usando o DNS como qualquer outro ponto final do Service Directory. Para criar uma zona do Service Directory através do Cloud DNS, consulte o artigo Configurar uma zona do Service Directory.
Para verificar se a zona está configurada corretamente, pode executar uma consulta de DNS da zona do diretório de serviços. Para obter instruções sobre como consultar através de DNS, consulte o artigo Consultar através de DNS. Se a sua zona estiver configurada corretamente, deve ver o endereço IP do equilibrador de carga interno na saída do comando.
Limpeza
Para eliminar os recursos que criou, faça o seguinte:
gcloud
Para eliminar a regra de encaminhamento, execute o comando
gcloud compute forwarding-rules delete
:gcloud compute forwarding-rules delete FORWARDING_RULE_NAME \ --region=REGION \
Substitua o seguinte:
FORWARDING_RULE_NAME
: o nome da regra de encaminhamento que criouREGION
: a região da regra de encaminhamento
Para mais detalhes, consulte o artigo Eliminar uma regra de encaminhamento.
Para confirmar que a eliminação da regra de encaminhamento eliminou automaticamente o ponto final do Service Directory, execute o comando
gcloud service-directory services resolve
descrito na secção Validar o ponto final no seu serviço do Service Directory.Para eliminar a zona, se tiver criado uma, siga as instruções em Elimine uma zona gerida.
Para eliminar o espaço de nomes e o serviço do Service Directory, consulte o artigo Eliminar recursos.
O que se segue?
- Para ver uma vista geral do Service Directory, consulte a vista geral do Service Directory.
- Para encontrar soluções para problemas comuns que pode encontrar ao usar o Service Directory, consulte a secção Resolução de problemas.