Esta documentação é referente à versão mais recente do Cloud Run for Anthos, que usa frotas do Anthos e o Anthos Service Mesh. Saiba mais

A versão anterior foi arquivada, mas a documentação continua disponível para os usuários existentes.

Como usar domínios de teste

Saiba como acessar os serviços do Cloud Run for Anthos no cluster para fins de teste antes de optar por mapear um domínio personalizado.

Por padrão, os serviços que você implanta nos clusters do Cloud Run for Anthos são definidos como o domínio base nip.io. Portanto, é possível testar seus serviços e enviar solicitações imediatamente sem outras configurações. Por exemplo, http://{SERVICE_NAME}.{NAMESPACE}.kuberun.{EXTERNAL_IP}.nip.io.

Observe que podem haver problemas relacionados à confiabilidade das solicitações ao usar caracteres curinga de DNS, incluindo o domínio nip.io, que é um serviço de caractere curinga DNS gratuito. Por outro lado, a configuração e o uso de um domínio personalizado para testes podem oferecer maior confiabilidade.

Também é possível acessar seus serviços por meio do endereço IP externo.

Como usar o domínio de teste nip.io

Para acessar um serviço usando o domínio base nip.io padrão, é possível localizar o URL no Console do Google Cloud ou construir o URL manualmente.

Console

  1. No Console do Cloud, acesse a página Cloud Run for Anthos.

    Acessar o Cloud Run for Anthos

  2. Na lista, clique no serviço com o URL que você quer.

  3. Próximo à parte superior da página, aparece o URL.

    Por exemplo: http://my-service.default.kuberun.11.111.11.111.nip.io

    URL do serviço

    Em que my-service é o nome do Cloud Run for Anthos, default é o namespace e 11.111.11.111 é o nome. Endereço IP do seu balanceador de carga externo.

Manualmente

Para construir manualmente o URL para o serviço, use o nome do serviço, o namespace em que o serviço está em execução e o endereço IP do balanceador de carga:

http://SERVICE.NAMESPACE.kuberun.EXTERNAL_IP.nip.io

Substitua:

  • SERVICE_NAME pelo nome do serviço;
  • NAMESPACE pelo namespace em que você implantou o serviço. Por padrão, os serviços são implantados no namespace default.
  • Substitua EXTERNAL_IP pelo endereço IP externo do balanceador de carga.

Por exemplo, se você tiver um serviço chamado hello no namespace default e seu endereço IP externo for 12.345.67.890, o URL poderá ser assim:

http://hello.default.kuberun.12.345.67.890.nip.io

Como usar o endereço IP externo

Outra opção é usar o endereço IP externo do balanceador de carga para acessar seus serviços com comandos cURL ou configurando manualmente um serviço curinga DNS alternativo.

Antes de começar

Como conseguir o endereço IP externo

Quando o cluster do Anthos é criado, o controlador de entrada do Istio cria um balanceador de carga do Google Cloud Network com um endereço IP disponível publicamente.

Para configurar o acesso ao serviço com cURL ou serviço DNS, primeiro você precisa receber o endereço IP externo do serviço do balanceador de carga:

Console

Para conseguir o endereço IP externo do balanceador de carga no Console do Google Cloud:
  1. Acesse a página do GKE no Console do Cloud:
    Acessar o GKE
  2. Clique em Serviços e entrada.
  3. Identifique o serviço que é a entrada do Istio do seu cluster. O Tipo do serviço será Balanceador de carga externo e o Nome será istio-ingressgateway.
  4. Depois de encontrar o serviço de entrada do Istio do cluster, copie o Endpoint dele. Esse será o endereço IP sem o número da porta. Por exemplo, é possível ver 00.000.000.000:11 listado como um endpoint, mas só precisa copiar 00.000.000.000.

kubectl

Para receber o IP externo do balanceador de carga, execute o seguinte comando:

kubectl get svc istio-ingressgateway -n ASM-INGRESS-NAMESPACE

Substitua ASM-INGRESS-NAMESPACE pelo namespace em que a entrada do Anthos Service Mesh está localizada. Especifique istio-system se você instalou o Anthos Service Mesh usando a configuração padrão.

A resposta resultante será semelhante a:

NAME                   TYPE           CLUSTER-IP     EXTERNAL-IP  PORT(S)
istio-ingressgateway   LoadBalancer   XX.XX.XXX.XX   pending      80:32380/TCP,443:32390/TCP,32400:32400/TCP

em que o valor EXTERNAL-IP é o endereço IP externo do balanceador de carga.

Depois de conseguir o endereço IP externo do balanceador de carga, é possível usá-lo em comandos cURL ou com um serviço DNS curinga para acessar seus serviços do Cloud Run for Anthos.

Como usar o cURL

É possível usar comandos cURL com o domínio base nip.io padrão para enviar solicitações ao serviço.

Especifique o endereço IP externo do balanceador de carga junto com os nomes do seu serviço e namespace no comando cURL:

curl --header 'Host: SERVICE_NAME.NAMESPACE.kuberun.EXTERNAL_IP.nip.io' EXTERNAL_IP

Substitua:

  • SERVICE_NAME pelo nome do serviço do Cloud Run for Anthos.
  • NAMESPACE pelo namespace em que o serviço está sendo executado.
  • Substitua EXTERNAL_IP pelo endereço IP externo do balanceador de carga.

Exemplo:

curl --header 'Host: my-service.default.kuberun.12.345.67.890.nip.io' http://12.345.67.890

Como usar outros serviços de caractere curinga do DNS

Por padrão, os serviços do Cloud Run for Anthos usam o serviço de caractere curinga nip.io do DNS. No entanto, é possível optar por usar outros serviços como o sslip.io. Para configurar outros serviços curinga de DNS, primeiro você precisa conseguir o endereço IP externo do seu balanceador de carga e, em seguida, usar esse endereço IP para configurar o serviço.

Como configurar o domínio do cluster

O Cloud Run for Anthos usa o ConfigMap config-domain para definir o domínio base que todos os serviços implantados do Cloud Run para Anthos usam. É possível atualizar esse ConfigMap com o Console do Google Cloud ou com os comandos kubectl.

Console

Para alterar o domínio base padrão de nip.io para um dos serviços de DNS curinga no Console do Cloud, siga estas etapas:

  1. Acesse a página Mapeamentos de domínio do Cloud Run for Anthos no Console do Console do Cloud:

    Acessar mapeamentos de domínio

  2. Selecione Adicionar mapeamento > Adicionar domínio padrão do cluster.

  3. Marque a caixa de seleção ao lado de "Aplicar este mapeamento de domínio a todos os serviços do Cloud Run para Anthos implantados neste cluster".

  4. Selecione o cluster no menu suspenso.

  5. No campo Domínio, insira o site DNS com o caractere curinga que você quer usar. Exemplo: sslip.io

kubectl

Para alterar o domínio base padrão de nip.io para um dos sites curinga DNS, use o comando:

kubectl patch configmap config-domain --namespace knative-serving --patch \
  '{"data": {"kuberun.EXTERNAL_IP.nip.io": null, "DNS_SERVICE": ""}}'

Substituir

  • EXTERNAL_IP pelo endereço IP externo do balanceador de carga;
  • DNS_SERVICE pelo site de DNS curinga que você está usando. Exemplo: sslip.io

Seu serviço já está disponível em http://{SERVICE_NAME}.{NAMESPACE}.kuberun.{EXTERNAL_IP}.{DNS_SERVICE}.