Começo rápido

Este tópico mostra como criar uma carga de trabalho no GKE na AWS e expô-la internamente ao seu cluster.

Antes de começar

Antes de começar a usar o GKE na AWS, certifique-se de ter executado as seguintes tarefas:

  • Instalar um serviço de gerenciamento .
  • Crie um cluster de usuários .
  • No seu diretório anthos-aws , use anthos-gke para alternar o contexto para seu cluster de usuários.
    cd anthos-aws
    env HTTPS_PROXY=http://localhost:8118 \
      anthos-gke aws clusters get-credentials CLUSTER_NAME
    Substitua CLUSTER_NAME pelo nome do seu cluster de usuário.

Você pode executar essas etapas com kubectl ou com o Google Cloud console se você tiver autenticado com Connect . Se você estiver usando o Google Cloud console, pule para Iniciar uma implantação do NGINX .

Para se conectar aos seus recursos do GKE na AWS, siga as seguintes etapas. Selecione se você já possui uma VPC da AWS (ou conexão direta com sua VPC) ou se criou uma VPC dedicada ao criar seu serviço de gerenciamento.

VPC existente

Se você tiver uma conexão direta ou VPN com uma VPC existente, omita a linha env HTTP_PROXY=http://localhost:8118 dos comandos neste tópico.

VPC dedicada

Ao criar um serviço de gerenciamento em uma VPC dedicada, o GKE na AWS inclui um bastião host em uma sub-rede pública.

Para se conectar ao seu serviço de gerenciamento, execute as seguintes etapas:

  1. Acesse o diretório com a configuração do GKE na AWS. Você criou este diretório ao instalar o serviço de gerenciamento .

    cd anthos-aws

  2. Para abrir o túnel, execute o script bastion-tunnel.sh . O túnel encaminha para localhost:8118 .

    Para abrir um túnel para o host bastião, execute o seguinte comando:

    ./bastion-tunnel.sh -N
    

    As mensagens do túnel SSH aparecem nesta janela. Quando estiver pronto para encerrar a conexão, interrompa o processo usando Control+C ou fechando a janela.

  3. Abra um novo terminal e entre no diretório anthos-aws .

    cd anthos-aws
  4. Verifique se você consegue se conectar ao cluster com kubectl .

    env HTTPS_PROXY=http://localhost:8118 \
    kubectl cluster-info
    

    A saída inclui a URL para o servidor da API do serviço de gerenciamento.

Iniciar uma implantação do NGINX

Nesta seção, você cria uma implantação do servidor web NGINX chamada nginx-1 .

kubectl

  1. Use kubectl create para criar a implantação.

    env HTTPS_PROXY=http://localhost:8118 \
    kubectl create deployment --image nginx nginx-1
    
  2. Use kubectl para obter o status da implantação. Anote o NAME do pod.

    env HTTPS_PROXY=http://localhost:8118 \
    kubectl get deployment
    

Console

Para iniciar uma implantação do NGINX com o Google Cloud console, execute as seguintes etapas:

  1. Acesse o menu Cargas de trabalho do GKE emGoogle Cloud console.

    Visite o menu Cargas de trabalho

  2. Clique em Implantar .

  3. Em Editar contêiner , selecione Imagem de contêiner existente para escolher uma imagem de contêiner disponível no Registro de Contêineres. Preencha o caminho da imagem com a imagem de contêiner que deseja usar e sua versão. Para este início rápido, use nginx:latest .

  4. Clique em Concluído e depois em Continuar . A tela Configuração será exibida.

  5. Você pode alterar o nome do aplicativo e o namespace do Kubernetes da sua implantação. Para este início rápido, você pode usar o nome do aplicativo nginx-1 e o namespace default

  6. No menu suspenso Cluster , selecione seu cluster de usuário. Por padrão, seu primeiro cluster de usuário é chamado de cluster-0 .

  7. Clique em Implantar . O GKE na AWS iniciará sua implantação do NGINX. A tela de detalhes da implantação será exibida.

Expondo seus pods

Esta seção mostra como fazer um dos seguintes procedimentos:

  • Exponha sua implantação internamente no seu cluster e confirme se ela está disponível com kubectl port-forward .

  • Exponha sua implantação a partir do Google Cloud console para os endereços permitidos pelo seu grupo de segurança do pool de nós.

kubectl

  1. Exponha a porta 80 da implantação no cluster com kubectl expose .

    env HTTPS_PROXY=http://localhost:8118 \
    kubectl expose deployment nginx-1 --port=80
    

    A implantação agora pode ser acessada de dentro do cluster.

  2. Encaminhe a porta 80 na implantação para a porta 8080 na sua máquina local com kubectl port-forward .

    env HTTPS_PROXY=http://localhost:8118 \
    kubectl port-forward deployment/nginx-1 8080:80
    
  3. Conecte-se a http://localhost:8080 com curl ou seu navegador. A página padrão do NGINX será exibida.

    curl http://localhost:8080
    

Console

  1. Acesse o menu Cargas de trabalho do GKE em Google Cloud console.

    Visite o menu Cargas de trabalho

  2. Na tela de detalhes da implantação , clique em Expor . A tela "Expor uma implantação" será exibida.

  3. Na seção Mapeamento de porta , deixe a porta padrão ( 80 ) e clique em Concluído .

  4. Para Tipo de serviço , selecione Balanceador de carga . Para obter mais informações sobre outras opções, consulte Serviços de publicação (ServiceTypes) na documentação do Kubernetes.

  5. Clique em Expor . A tela de detalhes do serviço é exibida. O GKE na AWS cria um Balanceador de Carga Elástico Clássico para o serviço.

  6. Clique no link para Endpoints Externos . Se o balanceador de carga estiver pronto, a página da web padrão do NGINX será exibida.

Visualize sua implantação em Google Cloud console

Se o seu cluster estiver conectado a Google Cloud console , você pode visualizar sua implantação na página Cargas de trabalho do GKE. Para visualizar sua carga de trabalho, siga estas etapas:

  1. No seu navegador, visite a página Cargas de trabalho do Google Kubernetes Engine.

    Visite a página de cargas de trabalho do Google Kubernetes Engine

    A lista de cargas de trabalho é exibida.

  2. Clique no nome da sua carga de trabalho, nginx-1 . A tela de detalhes da implantação será exibida.

  3. Nesta tela, você pode obter detalhes sobre sua implantação; visualizar e editar a configuração do YAML; e realizar outras ações do Kubernetes.

Para obter mais informações sobre as opções disponíveis nesta página, consulte Implantar um aplicativo sem estado na documentação do GKE.

Limpar

Para excluir sua implantação do NGINX, use kubectl delete ou o Google Cloud console.

kubectl

env HTTPS_PROXY=http://localhost:8118 \
kubectl delete service nginx-1 &&\
kubectl delete deployment nginx-1

Console

  1. Visite o menu da página Serviços e Ingresso na Google Cloud console.

    Visite a página Serviços e Ingresso

  2. Encontre o seu serviço NGINX e clique em seu nome . Por padrão, o nome é nginx-1-service . A tela de detalhes do serviço será exibida.

  3. Clique em Excluir confirme que deseja excluir o Serviço. O GKE na AWS exclui o balanceador de carga.

  4. Acesse a página Cargas de trabalho do Google Kubernetes Engine.

    Visite a página de cargas de trabalho do Google Kubernetes Engine

    A lista de cargas de trabalho é exibida.

  5. Clique no nome da sua carga de trabalho, nginx-1 . A tela de detalhes da implantação será exibida.

  6. Clique em Excluir confirme que deseja excluir a implantação. O GKE na AWS exclui a implantação.

O que vem a seguir?

Crie um balanceador de carga interno ou externo usando um dos seguintes serviços:

Você pode usar outros tipos de cargas de trabalho do Kubernetes com o GKE na AWS. Consulte a documentação do GKE para obter mais informações sobre como implantar cargas de trabalho .