Configurar para usar o Amazon EKS - Amazon EKS

Configurar para usar o Amazon EKS

Os recursos da AWS normalmente têm restrições de acesso que limitam o acesso à entidade da AWS que os criou. Portanto, estabelecer a configuração adequada do usuário no AWS Command Line Interface desde o início é essencial. Além disso, é necessário equipar sua máquina local com ferramentas essenciais para o gerenciamento eficiente da linha de comando do seu cluster do Amazon EKS. Este tópico ajudará você a se preparar para o gerenciamento da linha de comando do seu cluster.

Etapa 1: configurar a AWS CLI

A AWS CLI é uma ferramenta de linha de comando para trabalhar com os serviços da AWS, incluindo o Amazon EKS. Ela também é usada para autenticar usuários ou funções do IAM para acessar o cluster do Amazon EKS e outros recursos da AWS da sua máquina local. Para provisionar recursos na AWS com base na linha de comando, você precisará obter um ID de chave de acesso da AWS e uma chave secreta para usar na linha de comando. Em seguida, você precisará configurar essas credenciais na AWS CLI. Se você ainda não instalou a AWS CLI, consulte Instalar ou atualizar para a versão mais recente da AWS CLI no AWS Command Line Interface Guia do usuário.

Para criar uma chave de acesso

  1. Faça login no AWS Management Console.

  2. No canto superior direito, escolha seu nome de usuário da AWS para abrir o menu de navegação. Para este exemplo, selecione webadmin. Em seguida, selecione Credenciais de segurança.

  3. Em Chaves de acesso, escolha Criar chave de acesso.

  4. Escolha Interface de linha de comandos (CLI) e, em seguida, escolha Próximo.

  5. Selecione Create access key (Criar chave de acesso).

  6. Selecione Download do arquivo .csv.

Para configurar a AWS CLI

Depois de instalar a AWS CLI, execute as etapas a seguir para configurá-la. Para obter mais informações, consulte Configurar a AWS CLI no Guia do usuário da AWS Command Line Interface.

  1. Em uma janela de terminal, insira o seguinte comando:

    aws configure

    De forma alternativa, é possível configurar um perfil nomeado, como --profile cluster-admin. Se você configurar um perfil nomeado na AWS CLI, sempre deverá passar esse sinalizador nos comandos subsequentes.

  2. Insira credenciais de usuário da AWS. Por exemplo:

    AWS Access Key ID [None]: AKIAIOSFODNN7EXAMPLE AWS Secret Access Key [None]: wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY Default region name [None]: region-code Default output format [None]: json

Para obter um token de segurança

Se necessário, execute o comando a seguir para obter um novo token de segurança para a AWS CLI. Para obter mais informações, consulte get-session-token na Referência de comandos da AWS CLI.

Por padrão, o token é válido por 15 minutos. Para alterar o tempo limite padrão da sessão, passe o sinalizador --duration-seconds. Por exemplo:

aws sts get-session-token --duration-seconds 3600

Esse comando retorna as credenciais de segurança temporárias para uma sessão da AWS CLI. Você verá a seguinte saída de resposta:

{
    "Credentials": {
        "AccessKeyId": "ASIA5FTRU3LOEXAMPLE",
        "SecretAccessKey": "JnKgvwfqUD9mNsPoi9IbxAYEXAMPLE",
        "SessionToken": "VERYLONGSESSIONTOKENSTRING",
        "Expiration": "2023-02-17T03:14:24+00:00"
    }
}

Para verificar a identidade do usuário

Se necessário, execute o comando a seguir para verificar as credenciais da AWS da sua identidade de usuário do IAM (como ClusterAdmin) para a sessão do terminal.

aws sts get-caller-identity

Esse comando retorna o nome do recurso da Amazon (ARN) da entidade do IAM que está configurada para a AWS CLI. Você verá o seguinte exemplo de saída de resposta:

{
    "UserId": "AKIAIOSFODNN7EXAMPLE",
    "Account": "01234567890",
    "Arn": "arn:aws:iam::01234567890:user/ClusterAdmin"
}

Etapa 2: instalar as ferramentas do Kubernetes

Para se comunicar com um cluster do Kubernetes, você precisará de uma ferramenta para interagir com a API do Kubernetes. Além disso, você precisa de algumas outras ferramentas, como uma para gerenciar ambientes do Kubernetes em sua máquina local.

Para criar recursos do AWS

  • Recursos de cluster do Amazon EKS: se é a sua primeira vez usando a AWS, recomendamos a instalação do eksctl. O eksctl é um utilitário de infraestrutura como código (IaC) que usa AWS CloudFormation para criar facilmente seu cluster do Amazon EKS. Ele também cria recursos adicionais do Kubernetes, como contas de serviço. Para obter instruções sobre como instalar o eksctl, consulte Instalação na documentação do eksctl.

  • Recursos da AWS: se você está acostumado a automatizar o provisionamento e a implantação de sua infraestrutura da AWS, recomendamos a instalação do Terraform. O Terraform é uma ferramenta de código aberto de infraestrutura como código (IaC) desenvolvida pela HashiCorp. Ele permite que você defina e provisione a infraestrutura usando uma linguagem de configuração de alto nível, como a Linguagem de Configuração da HashiCorp (HCL) ou JSON. Para obter instruções sobre como instalar o Terraform, consulte Install Terraform na documentação do Terraform.

Para instalar o kubectl

O kubectl é uma ferramenta de linha de comando de código aberto usada para se comunicar com o servidor da API do Kubernetes em seu cluster do Amazon EKS. Caso ainda não esteja instalado em sua máquina local, escolha uma das opções a seguir.

  • Versões da AWS: para instalar uma versão do kubectl compatível com o Amazon EKS, consulte Instalar ou atualizar o kubectl.

  • Versões da comunidade: para instalar a versão mais recente da comunidade do kubectl, consulte a página Instale as ferramentas na documentação do Kubernetes.

Para configurar um ambiente de desenvolvimento

  • Ferramenta de implantação local: se é a sua primeira vez usando o Kubernetes, considere instalar uma ferramenta de implantação local como minikubeou kind. Essas ferramentas permitem que você gerencie um cluster do Amazon EKS em sua máquina local.

  • Gerenciador de pacotes: o Helm é um gerenciador de pacotes popular do Kubernetes que simplifica a instalação e o gerenciamento de pacotes complexos. Com o Helm, fica mais fácil instalar e gerenciar pacotes como o AWS Load Balancer Controller em seu cluster do Amazon EKS.

Próximas etapas