Configurando e executando o Amazon EKS Anywhere em dispositivos Snowball Edge - AWS Snowball Edge Guia do desenvolvedor

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Configurando e executando o Amazon EKS Anywhere em dispositivos Snowball Edge

Siga esses procedimentos para configurar e iniciar o Amazon EKS Anywhere em seus dispositivos Snowball Edge. Em seguida, para configurar o Amazon EKS Anywhere para operar em dispositivos desconectados, conclua procedimentos adicionais antes de desconectar esses dispositivos da rede externa. Para obter mais informações, consulte Configurando o Amazon EKS Anywhere on AWS Snow para operação desconectada.

Configuração inicial para Amazon EKS Anywhere em dispositivos da família Snow

Execute a configuração inicial em cada dispositivo Snowball Edge conectando o dispositivo à sua rede local, baixando o Snowball Edge Client, obtendo credenciais e desbloqueando o dispositivo.

Execute a configuração inicial
  1. Faça o download e instale o Snowball Edge Client. Para obter mais informações, consulte Baixando e instalando o cliente Snowball Edge.

  2. Conecte o dispositivo à rede local. Para obter mais informações, consulte Conectando um dispositivo Snow Family à sua rede local.

  3. Obtenha credenciais para desbloquear seu dispositivo. Para obter mais informações, consulte Obter credenciais para acessar um dispositivo Snow Family.

  4. Desbloqueie o dispositivo. Para obter mais informações, consulte Desbloqueando o dispositivo Snow Family. Você também pode usar uma ferramenta de script em vez de desbloquear dispositivos manualmente. Consulte Desbloquear dispositivos.

Configurando e executando o Amazon EKS Anywhere em dispositivos Snowball Edge automaticamente

Você pode usar exemplos de ferramentas de script para configurar o ambiente e executar uma instância administrativa do Amazon EKS Anywhere ou pode fazer isso manualmente. Para usar as ferramentas de script, consulte Desbloquear dispositivos e configurar o ambiente para o Amazon EKS Anywhere. Depois que o ambiente estiver configurado e a instância administrativa do Amazon EKS Anywhere estiver em execução, se você precisar configurar o Amazon EKS Anywhere para operar no dispositivo Snowball Edge enquanto estiver desconectado de uma rede, consulte. Configurando o Amazon EKS Anywhere on AWS Snow para operação desconectada Caso contrário, consulte Criação e manutenção de clusters em dispositivos Snowball Edge.

Para configurar manualmente o ambiente e executar uma instância administrativa do Amazon EKS Anywhere, consulteConfigurando e executando o Amazon EKS Anywhere em dispositivos Snowball Edge manualmente.

Configurando e executando o Amazon EKS Anywhere em dispositivos Snowball Edge manualmente

Antes de configurar o Amazon EKS Anywhere em um dispositivo Snowball Edge, configure um perfil para o cliente Snowball Edge. Para obter mais informações, consulte Configurando e usando o cliente Snowball Edge.

Crie um usuário IAM local do Amazon EKS Anywhere

Para obter as melhores práticas de segurança, crie um IAM usuário local para o Amazon EKS Anywhere no dispositivo Snowball Edge. Isso pode ser feito manualmente por meio dos procedimentos a seguir.

nota

Faça isso para cada dispositivo Snowball Edge que você usa.

Crie um usuário local no dispositivo Snow Family

Use o create-user comando para criar o IAM usuário do Amazon EKS Anywhere.

aws iam create-user --user-name user-name --endpoint http://snowball-ip:6078 --profile profile-name { "User": { "Path": "/", "UserName": "eks-a-user", "UserId": "AIDACKCEVSQ6C2EXAMPLE", "Arn": "arn:aws:iam::123456789012:user/eks-a-user", "CreateDate": "2022-04-06T00:13:35.665000+00:00" } }

Crie uma política para o usuário local no dispositivo Snow Family

Crie um documento de política, use-o para criar uma IAM política e anexe essa política ao usuário local do Amazon EKS Anywhere.

Para criar um documento de política e anexá-lo ao usuário local do Amazon EKS Anywhere
  1. Crie um documento de política e salve-o no computador. Copie a política abaixo para o documento.

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "snowballdevice:DescribeDevice", "snowballdevice:CreateDirectNetworkInterface", "snowballdevice:DeleteDirectNetworkInterface", "snowballdevice:DescribeDirectNetworkInterfaces", "snowballdevice:DescribeDeviceSoftware" ], "Resource": ["*"] }, { "Effect": "Allow", "Action": [ "ec2:RunInstances", "ec2:DescribeInstances", "ec2:TerminateInstances", "ec2:ImportKeyPair", "ec2:DescribeKeyPairs", "ec2:DescribeInstanceTypes", "ec2:DescribeImages", "ec2:DeleteTags" ], "Resource": ["*"] } ] }
  2. Use o create-policy comando para criar uma IAM política com base no documento de política. O valor do parâmetro --policy-document deve usar o caminho absoluto para o arquivo de política. Por exemplo, file:///home/user/policy-name.json

    aws iam create-policy --policy-name policy-name --policy-document file:///home/user/policy-name.json --endpoint http://snowball-ip:6078 --profile profile-name { "Policy": { "PolicyName": "policy-name", "PolicyId": "ANPACEMGEZDGNBVGY3TQOJQGEZAAAABP76TE5MKAAAABCCOTR2IJ43NBTJRZBU", "Arn": "arn:aws:iam::123456789012:policy/policy-name", "Path": "/", "DefaultVersionId": "v1", "AttachmentCount": 0, "IsAttachable": true, "CreateDate": "2022-04-06T04:46:56.907000+00:00", "UpdateDate": "2022-04-06T04:46:56.907000+00:00" } }
  3. Use o attach-user-policy comando para anexar a IAM política ao usuário local do Amazon EKS Anywhere.

    aws iam attach-user-policy --policy-arn policy-arn --user-name user-name --endpoint http://snowball-ip:6078 --profile profile-name

Crie uma chave de acesso e um arquivo de credencial no dispositivo Snow Family

Crie uma chave de acesso para o usuário IAM local do Amazon EKS Anywhere. Em seguida, crie um arquivo de credencial e inclua nele os valores AccessKeyId e SecretAccessKey gerados para o usuário local. O arquivo de credencial será usado posteriormente pela instância administrativa do Amazon EKS Anywhere.

  1. Use o create-access-key comando para criar uma chave de acesso para o usuário local do Amazon EKS Anywhere.

    aws iam create-access-key --user-name user-name --endpoint http://snowball-ip:6078 --profile profile-name { "AccessKey": { "UserName": "eks-a-user", "AccessKeyId": "AKIAIOSFODNN7EXAMPLE", "Status": "Active", "SecretAccessKey": "RTT/wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY", "CreateDate": "2022-04-06T04:23:46.139000+00:00" } }
  2. Crie um arquivo de credencial. Nele, salve os valores AccessKeyId e SecretAccessKey no formato a seguir.

    [snowball-ip] aws_access_key_id = ABCDEFGHIJKLMNOPQR2T aws_secret_access_key = AfSD7sYz/TBZtzkReBl6PuuISzJ2WtNkeePw+nNzJ region = snow
    nota

    Se você estiver trabalhando com vários dispositivos Snowball Edge, a ordem das credenciais no arquivo não importa, mas as credenciais de todos os dispositivos precisam estar em um arquivo.

Crie um arquivo de certificados para a instância administrativa no dispositivo Snow Family

A instância administrativa do Amazon EKS Anywhere precisa dos certificados dos dispositivos Snowball Edge para ser executada neles. Crie um arquivo de certificados contendo o certificado para acessar os dispositivos Snowball Edge para uso posterior pela instância administrativa do Amazon EKS Anywhere.

Para criar um arquivo de certificados
  1. Use o comando list-certificates para obter certificados para cada dispositivo Snowball Edge que você planeja usar.

    PATH_TO_Snowball_Edge_CLIENT/bin/snowballEdge list-certificates --endpoint https://snowball-ip --manifest-file path-to-manifest-file --unlock-code unlock-code { "Certificates" : [ { "CertificateArn" : "arn:aws:snowball-device:::certificate/xxx", "SubjectAlternativeNames" : [ "ID:JID-xxx" ] } ] }
  2. Use o valor de CertificateArn como valor para o parâmetro --certificate-arn do comando get-certificate.

    PATH_TO_Snowball_Edge_CLIENT/bin/snowballEdge get-certificate --certificate-arn ARN --endpoint https://snowball-ip --manifest-file path-to-manifest-file --unlock-code unlock-code
  3. Crie um arquivo de certificado de dispositivo. Coloque a saída de get-certificate no arquivo de certificado. A seguir, veja um exemplo de como salvar a saída.

    nota

    Se você estiver trabalhando com vários dispositivos Snowball Edge, a ordem das credenciais no arquivo não importa, mas as credenciais de todos os dispositivos precisam estar em um arquivo.

    -----BEGIN CERTIFICATE----- ZWtzYSBzbm93IHRlc3QgY2VydGlmaWNhdGUgZWtzYSBzbm93IHRlc3QgY2VydGlm aWNhdGVla3NhIHNub3cgdGVzdCBjZXJ0aWZpY2F0ZWVrc2Egc25vdyB0ZXN0IGNl cnRpZmljYXRlZWtzYSBzbm93IHRlc3QgY2VydGlmaWNhdGVla3NhIHNub3cgdGVz dCBjZXJ0aWZpY2F0ZQMIIDXDCCAkSgAwIBAgIJAISM0nTVmbj+MA0GCSqGSIb3DQ ... -----END CERTIFICATE-----
  4. Repita Crie um usuário IAM local do Amazon EKS Anywhere o procedimento para criar um usuário IAM local para o Amazon EKS Anywhere em todos os dispositivos Snowball Edge.

(Opcional) Crie e importe uma chave Secure Shell em um dispositivo da família Snow

Use esse procedimento opcional para criar uma chave Secure Shell (SSH) para acessar todas as instâncias de nós do Amazon EKS Anywhere e importar a chave pública para todos os dispositivos Snowball Edge. Mantenha e proteja esse arquivo de chave.

Se você pular esse procedimento, o Amazon EKS Anywhere criará e importará uma SSH chave automaticamente quando necessário. Essa chave será armazenada na instância administrativa em ${PWD}/${CLUSTER_NAME}/eks-a-id_rsa.

Crie uma SSH chave e importe-a para a instância do Amazon EKS Anywhere
  1. Use o ssh-keygen comando para gerar uma SSH chave.

    ssh-keygen -t rsa -C "key-name" -f path-to-key-file
  2. Use o comando import-key-pair para importar a chave do seu computador para o dispositivo Snowball Edge.

    nota

    O valor do parâmetro key-name deve ser o mesmo quando você importa a chave para todos os dispositivos.

    aws ec2 import-key-pair --key-name key-name --public-key-material fileb:///path/to/key-file --endpoint http://snowball-ip:8008 --profile profile-name { "KeyFingerprint": "5b:0c:fd:e1:a0:69:05:4c:aa:43:f3:3b:3e:04:7f:51", "KeyName": "default", "KeyPairId": "s.key-85edb5d820c92a6f8" }

Execute uma instância administrativa do Amazon EKS Anywhere em um dispositivo Snow Family e transfira arquivos de credenciais e certificados para ele

Execute uma instância administrativa do Amazon EKS Anywhere em um dispositivo da família Snow

Siga este procedimento para executar manualmente uma instância administrativa do Amazon EKS Anywhere, configurar uma interface de rede virtual (VNI) para a instância administrativa, verificar o status da instância, criar uma SSH chave e conectar-se à instância administrativa com ela. Você pode usar uma ferramenta de script de amostra para automatizar a criação de uma instância administrativa do Amazon EKS Anywhere e a transferência de arquivos de credenciais e certificados para essa instância. Consulte Criar instância de administração do Amazon EKS Anywhere. Depois que a ferramenta de script for concluída, você poderá entrar por ssh na instância e criar clusters consultando a Criação e manutenção de clusters em dispositivos Snowball Edge. Se você quiser configurar a instância do Amazon EKS Anywhere manualmente, use as seguintes etapas.

nota

Se você estiver usando mais de um dispositivo Snowball Edge para provisionar o cluster, poderá iniciar uma instância administrativa do Amazon EKS Anywhere em qualquer um dos dispositivos do Snowball Edge.

Para executar uma instância administrativa do Amazon EKS Anywhere
  1. Use o create-key-pair comando para criar uma SSH chave para a instância administrativa do Amazon EKS Anywhere. O comando salva a chave em $PWD/key-file-name.

    aws ec2 create-key-pair --key-name key-name --query 'KeyMaterial' --output text --endpoint http://snowball ip:8008 --profile profile-name > key-file-name
  2. Use o comando describe-images para encontrar o nome da imagem que começa com eks-anywhere-admin na saída.

    aws ec2 describe-images --endpoint http://snowball-ip:8008 --profile profile-name
  3. Use o run-instance comando para iniciar uma instância de administração eks-a com a imagem de administrador do Amazon EKS Anywhere.

    aws ec2 run-instances --image-id eks-a-admin-image-id --key-name key-name --instance-type sbe-c.xlarge --endpoint http://snowball-ip:8008 --profile profile-name
  4. Use o describe-instances comando para verificar o status da instância do Amazon EKS Anywhere. Espere até que o comando indique que o estado da instância é running antes de continuar.

    aws ec2 describe-instances --instance-id instance-id --endpoint http://snowball-ip:8008 --profile profile-name
  5. Na saída do comando describe-device, observe o valor de PhysicalNetworkInterfaceId para a interface de rede física conectada à sua rede. Você usará isso para criar umVNI.

    PATH_TO_Snowball_Edge_CLIENT/bin/snowballEdge describe-device --endpoint https://snowball-ip --manifest-file path-to-manifest-file --unlock-code unlock-code
  6. Crie uma VNI para a instância administrativa do Amazon EKS Anywhere. Use o valor de PhysicalNetworkInterfaceId como o valor do parâmetro physical-network-interface-id.

    PATH_TO_Snowball_Edge_CLIENT/bin/snowballEdge create-virtual-network-interface --ip-address-assignment dhcp --physical-network-interface-id PNI --endpoint https://snowball-ip --manifest-file path-to-manifest-file --unlock-code unlock-code
  7. Use o valor de IpAddress como o valor do public-ip parâmetro do associate-address comando para associar o endereço público à instância administrativa do Amazon EKS Anywhere.

    aws ec2 associate-address --instance-id instance-id --public-ip VNI-IP --endpoint http://snowball-ip:8008 --profile profile-name
  8. Conecte-se à instância administrativa do Amazon EKS Anywhere usandoSSH.

    ssh -i path-to-key ec2-user@VNI-IP

Transferir arquivos de certificado e credencial para a instância administrativa no dispositivo Snow Family

Depois que a instância administrativa do Amazon EKS Anywhere estiver em execução, transfira as credenciais e os certificados dos seus dispositivos Snowball Edge para a instância administrativa. Execute o seguinte comando no mesmo diretório em que você salvou os arquivos de credenciais e certificados em Crie uma chave de acesso e um arquivo de credencial no dispositivo Snow Family e Crie um arquivo de certificados para a instância administrativa no dispositivo Snow Family.

scp -i path-to-key path-to-credentials-file path-to-certificates-file ec2-user@eks-admin-instance-ip:~

Verifique o conteúdo dos arquivos na instância administrativa do Amazon EKS Anywhere. Veja a seguir exemplos dos arquivos de credenciais e certificados.

[192.168.1.1] aws_access_key_id = EMGEZDGNBVGY3TQOJQGEZB5ULEAAIWHWUJDXEXAMPLE aws_secret_access_key = AUHpqjO0GZQHEYXDbN0neLNlfR0gEXAMPLE region = snow [192.168.1.2] aws_access_key_id = EMGEZDGNBVGY3TQOJQGEZG5O7F3FJUCMYRMI4KPIEXAMPLE aws_secret_access_key = kY4Cl8+RJAwq/bu28Y8fUJepwqhDEXAMPLE region = snow
-----BEGIN CERTIFICATE----- ZWtzYSBzbm93IHRlc3QgY2VydGlmaWNhdGUgZWtzYSBzbm93IHRlc3QgY2VydGlm aWNhdGVla3NhIHNub3cgdGVzdCBjZXJ0aWZpY2F0ZWVrc2Egc25vdyB0ZXN0IGNl cnRpZmljYXRlZWtzYSBzbm93IHRlc3QgY2VydGlmaWNhdGVla3NhIHNub3cgdGVz dCBjZXJ0aWZpY2F0ZQMIIDXDCCAkSgAwIBAgIJAISM0nTVmbj+MA0GCSqGSIb3DQ ... -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- KJ0FPl2PAYPEjxr81/PoCXfZeARBzN9WLUH5yz1ta+sYUJouzhzWuLJYA1xqcCPY mhVlkRsN4hVdlBNRnCCpRF766yjdJeibKVzXQxoXoZBjrOkuGwqRy3d3ndjK77h4 OR5Fv9mjGf7CjcaSjk/4iwmZvRSaQacb0YG5GVeb4mfUAuVtuFoMeYfnAgMBAAGj azBpMAwGA1UdEwQFMAMBAf8wHQYDVR0OBBYEFL/bRcnBRuSM5+FcYFa8HfIBomdF ... -----END CERTIFICATE-----