Conceitos básicos do Amazon EKS - eksctl
Este guia ajuda você a criar todos os recursos necessários para começar a usar o Amazon Elastic Kubernetes Service (Amazon EKS) com o eksctl
, um utilitário de linha de comando simples para criar e gerenciar clusters do Kubernetes no Amazon EKS. No final deste tutorial, você terá um cluster do Amazon EKS em execução, no qual poderá implantar as aplicações.
Os procedimentos neste guia criam automaticamente vários recursos que você precisa criar manualmente ao criar o cluster usando o comando AWS Management Console. Se preferir criar manualmente a maioria dos recursos e entender melhor como eles interagem entre si, use o AWS Management Console para criar os clusters e a computação. Para mais informações, consulte Conceitos básicos do Amazon EKS - AWS Management Console e AWS CLI.
Pré-requisitos
Antes de iniciar este tutorial, você deve instalar e configurar as ferramentas a seguir e os recursos necessários para criar e gerenciar um cluster do Amazon EKS.
-
kubectl
: uma ferramenta de linha de comando para trabalhar com clusters do Kubernetes. Este guia requer que você use a versão1.22
ou superior. Para mais informações, consulte Instalar ou atualizar o kubectl. -
eksctl
– Uma ferramenta de linha de comando para trabalhar com clusters EKS que automatiza várias tarefas individuais. Este guia requer que você use a versão0.105.0
ou superior. Para mais informações, consulte Instalar ou atualizar o eksctl. -
Permissões obrigatórias do IAM: o principal de segurança do IAM que você está usando deve ter permissões para trabalhar com funções do Amazon EKS IAM e funções vinculadas ao serviço, o AWS CloudFormation e uma VPC com recursos relacionados. Para obter mais informações, consulte Ações, recursos e chaves de condição do Amazon Elastic Container Service for Kubernetes e Uso de funções vinculadas a serviço no Guia do usuário do IAM. Você deve concluir todas as etapas deste manual como o mesmo usuário.
Etapa 1: Criar o cluster e nós do Amazon EKS
Para começar da forma mais simples e rápida possível, este tópico inclui etapas para criar um cluster e nós com configurações padrão. Antes de criar um cluster e nós para uso em produção, recomendamos que você se familiarize com todas as configurações e implante um cluster e nós com as configurações que atendam aos seus requisitos. Para obter mais informações, consulte Criar um cluster do Amazon EKS e Nós do Amazon EKS. Algumas configurações poderão ser habilitadas apenas durante a criação do cluster e dos nós.
Você pode criar um cluster com um dos seguintes tipos de nós. Para saber mais sobre cada tipo, consulte Nós do Amazon EKS. Depois que o cluster for implantado, você pode adicionar outros tipos de nós.
-
Fargate: Linux: selecione este tipo de nó se quiser executar aplicações do Linux no AWS Fargate. O Fargate é um mecanismo de computação com tecnologia sem servidor que permite a implantação de pods do Kubernetes sem gerenciar instâncias do Amazon EC2.
-
Nós gerenciados: Linux: selecione este tipo de nó se quiser executar aplicações do Amazon Linux em instâncias do Amazon EC2. Embora não abordado neste guia, você também pode adicionar nós autogerenciados do Windows e do Bottlerocket ao cluster.
Crie o cluster do Amazon EKS com o comando a seguir. Você pode substituir
por seus próprios valores. Um nome de cluster só pode conter caracteres alfanuméricos (sensíveis a maiúsculas e minúsculas) e hifens. Ele deve começar com um caractere alfabético e não pode ter mais de 128 caracteres. Substitua my-cluster
por qualquer Região da AWS compatível com o Amazon EKS. Para obter uma lista das Regiões da AWS, consulte Endpoints e cotas do Amazon EKS no guia Referência geral da AWS.region-code
A criação do cluster leva muitos minutos. Durante a criação, você verá várias linhas de saída. A última linha do resultado é semelhante ao exemplo de linha a seguir.
...
[✓] EKS cluster "my-cluster" in "region-code
" region is ready
eksctl
criou um arquivo kubectl
config
em ~/.kube
ou adicionou a configuração do novo cluster dentro de um arquivo config
em ~/.kube
no seu computador.
Após a criação do cluster ser concluída, exiba a pilha do AWS CloudFormation chamada eksctl-
no console do AWS CloudFormation, em https://console.aws.amazon.com/cloudformationmy-cluster
-cluster
Etapa 2: Visualizar recursos do Kubernetes
-
Exiba os nós de cluster.
kubectl get nodes -o wide
O exemplo de saída é o seguinte.
Para obter mais informações sobre o que é visualizado na saída, consulte Visualizar os recursos do Kubernetes.
-
Exiba as workloads em execução no cluster.
kubectl get pods -A -o wide
O exemplo de saída é o seguinte.
Para obter mais informações sobre o que é visualizado na saída, consulte Visualizar os recursos do Kubernetes.
Etapa 3: excluir clusters e nós
Após concluir o cluster e os nós criados para este tutorial, faça uma limpeza excluindo o cluster e os nós usando o comando a seguir. Se você quiser realizar outras ações com esse cluster antes de limpá-lo, consulte Next steps (Próximas etapas).
eksctl delete cluster --name
my-cluster
--regionregion-code
Next steps (Próximas etapas)
Os seguintes tópicos de documentação ajudam a estender a funcionalidade do seu cluster.
Implante uma aplicação de exemplo no cluster.
A entidade do IAM (usuário ou perfil) que criou o cluster é a única entidade do IAM que pode fazer chamadas ao servidor da API do Kubernetes usando
kubectl
ou o AWS Management Console. Se quiser que outros usuários ou perfis do IAM tenham acesso ao cluster, será necessário adicioná-los. Para obter mais informações, consulte Habilitar o acesso de usuário e função do IAM ao cluster e Permissões obrigatórias.Antes de implantar um cluster para uso em produção, recomendamos conhecer todas as configurações de clusters e nós. Algumas configurações (como habilitar o acesso SSH aos nós do Amazon EC2) devem ser feitas no momento de criação do cluster.
Para aumentar a segurança do cluster, configure o plugin Amazon VPC Container Networking Interface para usar funções do IAM para contas de serviço.