Configurazione ed esecuzione di Amazon EKS Anywhere su dispositivi Snowball Edge - AWS Snowball Edge Guida per gli sviluppatori

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Configurazione ed esecuzione di Amazon EKS Anywhere su dispositivi Snowball Edge

Segui queste procedure per configurare e avviare Amazon EKS Anywhere sui tuoi dispositivi Snowball Edge. Quindi, per configurare Amazon EKS Anywhere in modo che funzioni su dispositivi disconnessi, completa procedure aggiuntive prima di scollegare tali dispositivi dalla rete esterna. Per ulteriori informazioni, consulta Configurazione di Amazon EKS Anywhere on AWS Snow per il funzionamento disconnesso.

Configurazione iniziale per Amazon EKS Anywhere sui dispositivi Snow Family

Esegui la configurazione iniziale su ogni dispositivo Snowball Edge collegando il dispositivo alla rete locale, scaricando il client Snowball Edge, ottenendo le credenziali e sbloccando il dispositivo.

Esegui la configurazione iniziale
  1. Scarica e installa il client Snowball Edge. Per ulteriori informazioni, consulta Scaricamento e installazione del client Snowball Edge.

  2. Connect il dispositivo alla rete locale. Per ulteriori informazioni, consulta Connessione di un dispositivo Snow Family alla rete locale.

  3. Ottieni le credenziali per sbloccare il dispositivo. Per ulteriori informazioni, consulta Ottenere le credenziali per accedere a un dispositivo Snow Family.

  4. Sbloccare il dispositivo. Per ulteriori informazioni, consulta Sblocco del dispositivo Snow Family. Puoi anche utilizzare uno strumento di script invece di sbloccare i dispositivi manualmente. Vedi Sbloccare i dispositivi.

Configurazione ed esecuzione automatica di Amazon EKS Anywhere su dispositivi Snowball Edge

Puoi utilizzare strumenti di script di esempio per configurare l'ambiente ed eseguire un'istanza di amministrazione di Amazon EKS Anywhere oppure puoi farlo manualmente. Per utilizzare gli strumenti di script, consulta Unlock devices and setup environment for Amazon EKS Anywhere. Dopo la configurazione dell'ambiente e l'esecuzione dell'istanza di amministrazione di Amazon EKS Anywhere, se devi configurare Amazon EKS Anywhere per funzionare sul dispositivo Snowball Edge quando sei disconnesso da una rete, consulta. Configurazione di Amazon EKS Anywhere on AWS Snow per il funzionamento disconnesso In caso contrario, consulta Creazione e manutenzione di cluster su dispositivi Snowball Edge.

Per configurare manualmente l'ambiente ed eseguire un'istanza di amministrazione di Amazon EKS Anywhere, consultaConfigurazione ed esecuzione manuale di Amazon EKS Anywhere su dispositivi Snowball Edge.

Configurazione ed esecuzione manuale di Amazon EKS Anywhere su dispositivi Snowball Edge

Prima di configurare Amazon EKS Anywhere su un dispositivo Snowball Edge, configura un profilo per il client Snowball Edge. Per ulteriori informazioni, consulta Configurazione e utilizzo del client Snowball Edge.

Crea un utente IAM locale Amazon EKS Anywhere

Per le migliori pratiche di sicurezza, crea un IAM utente locale per Amazon EKS Anywhere sul dispositivo Snowball Edge. Puoi farlo manualmente utilizzando le seguenti procedure.

Nota

Esegui questa operazione per ogni dispositivo Snowball Edge che utilizzi.

Crea un utente locale sul dispositivo Snow Family

Usa il create-user comando per creare l'IAMutente 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" } }

Crea una policy per l'utente locale sul dispositivo Snow Family

Crea un documento di policy, usalo per creare una IAM policy e allega tale policy all'utente locale di Amazon EKS Anywhere.

Per creare un documento di policy e allegarlo all'utente locale di Amazon EKS Anywhere
  1. Crea un documento di policy e salvalo sul tuo computer. Copia la politica riportata di seguito nel 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. Usa il create-policy comando per creare una IAM politica basata sul documento di policy. Il valore del --policy-document parametro deve utilizzare il percorso assoluto del file di policy. Ad esempio, 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. Utilizza il attach-user-policy comando per allegare la IAM policy all'utente locale di Amazon EKS Anywhere.

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

Crea una chiave di accesso e un file di credenziali sul dispositivo Snow Family

Crea una chiave di accesso per l'utente IAM locale di Amazon EKS Anywhere. Quindi, crea un file di credenziali e includi in esso i valori AccessKeyId e quelli SecretAccessKey generati per l'utente locale. Il file delle credenziali verrà utilizzato dall'istanza di amministrazione di Amazon EKS Anywhere in un secondo momento.

  1. Usa il create-access-key comando per creare una chiave di accesso per l'utente locale di 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. Crea un file di credenziali. In esso, salva i SecretAccessKey valori AccessKeyId and nel seguente formato.

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

    Se lavori con più dispositivi Snowball Edge, l'ordine delle credenziali nel file non ha importanza, ma le credenziali per tutti i dispositivi devono trovarsi in un unico file.

Crea un file di certificati per l'istanza di amministrazione sul dispositivo Snow Family

L'istanza di amministrazione di Amazon EKS Anywhere necessita dei certificati dei dispositivi Snowball Edge per funzionare su di essi. Crea un file di certificati contenente il certificato per accedere ai dispositivi Snowball Edge e utilizzarlo successivamente dall'istanza di amministrazione di Amazon EKS Anywhere.

Per creare un file di certificati
  1. Usa il list-certificates comando per ottenere i certificati per ogni dispositivo Snowball Edge che intendi utilizzare.

    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. Utilizzate il valore di CertificateArn come valore per il --certificate-arn parametro del get-certificate comando.

    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. Crea un file di certificato del dispositivo. Inserisci l'output di get-certificate nel file del certificato. Di seguito è riportato un esempio di come salvare l'output.

    Nota

    Se lavori con più dispositivi Snowball Edge, l'ordine delle credenziali nel file non ha importanza, ma le credenziali per tutti i dispositivi devono trovarsi in un unico file.

    -----BEGIN CERTIFICATE----- ZWtzYSBzbm93IHRlc3QgY2VydGlmaWNhdGUgZWtzYSBzbm93IHRlc3QgY2VydGlm aWNhdGVla3NhIHNub3cgdGVzdCBjZXJ0aWZpY2F0ZWVrc2Egc25vdyB0ZXN0IGNl cnRpZmljYXRlZWtzYSBzbm93IHRlc3QgY2VydGlmaWNhdGVla3NhIHNub3cgdGVz dCBjZXJ0aWZpY2F0ZQMIIDXDCCAkSgAwIBAgIJAISM0nTVmbj+MA0GCSqGSIb3DQ ... -----END CERTIFICATE-----
  4. Ripeti Crea un utente IAM locale Amazon EKS Anywhere l'operazione per creare un utente IAM locale per Amazon EKS Anywhere su tutti i dispositivi Snowball Edge.

(Facoltativo) Crea e importa una chiave Secure Shell su un dispositivo Snow Family

Utilizza questa procedura opzionale per creare una chiave Secure Shell (SSH) per accedere a tutte le istanze del nodo Amazon EKS Anywhere e importare la chiave pubblica su tutti i dispositivi Snowball Edge. Conserva e proteggi questo file chiave.

Se salti questa procedura, Amazon EKS Anywhere creerà e importerà automaticamente una SSH chiave quando necessario. Questa chiave verrà archiviata nell'istanza di amministrazione in${PWD}/${CLUSTER_NAME}/eks-a-id_rsa.

Crea una SSH chiave e importala nell'istanza Amazon EKS Anywhere
  1. Usa il ssh-keygen comando per generare una SSH chiave.

    ssh-keygen -t rsa -C "key-name" -f path-to-key-file
  2. Usa il import-key-pair comando per importare la chiave dal computer al dispositivo Snowball Edge.

    Nota

    Il valore del key-name parametro deve essere lo stesso quando si importa la chiave su tutti i dispositivi.

    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" }

Esegui un'istanza di amministrazione di Amazon EKS Anywhere su un dispositivo Snow Family e trasferisci su di esso i file di credenziali e certificati

Esegui un'istanza di amministrazione di Amazon EKS Anywhere su un dispositivo Snow Family

Segui questa procedura per eseguire manualmente un'istanza di amministrazione di Amazon EKS Anywhere, configurare un'interfaccia di rete virtuale (VNI) per l'istanza di amministrazione, controllare lo stato dell'istanza, creare una SSH chiave e connetterti all'istanza di amministrazione con essa. Puoi utilizzare uno strumento di script di esempio per automatizzare la creazione di un'istanza di amministrazione di Amazon EKS Anywhere e il trasferimento di file di credenziali e certificati su questa istanza. Vedi Creare un'istanza amministrativa di Amazon EKS Anywhere. Una volta completato lo strumento di script, puoi accedere all'istanza tramite ssh e creare cluster facendo riferimento a. Creazione e manutenzione di cluster su dispositivi Snowball Edge Se desideri configurare manualmente l'istanza Amazon EKS Anywhere, utilizza i seguenti passaggi.

Nota

Se utilizzi più di un dispositivo Snowball Edge per il provisioning del cluster, puoi avviare un'istanza di amministrazione Amazon EKS Anywhere su qualsiasi dispositivo Snowball Edge.

Per eseguire un'istanza di amministrazione di Amazon EKS Anywhere
  1. Utilizza il create-key-pair comando per creare una SSH chiave per l'istanza di amministrazione di Amazon EKS Anywhere. Il comando salva la chiave in$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. Utilizzate il describe-images comando per trovare il nome dell'immagine che inizia con eks-anywhere-admin l'output.

    aws ec2 describe-images --endpoint http://snowball-ip:8008 --profile profile-name
  3. Usa il run-instance comando per avviare un'istanza di amministrazione eks-a con l'immagine di amministrazione di 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. Usa il describe-instances comando per verificare lo stato dell'istanza Amazon EKS Anywhere. Attendi che il comando indichi lo stato dell'istanza running prima di continuare.

    aws ec2 describe-instances --instance-id instance-id --endpoint http://snowball-ip:8008 --profile profile-name
  5. Nell'output del describe-device comando, annota il valore dell'interfaccia PhysicalNetworkInterfaceId di rete fisica connessa alla rete. Lo userai per creare unVNI.

    PATH_TO_Snowball_Edge_CLIENT/bin/snowballEdge describe-device --endpoint https://snowball-ip --manifest-file path-to-manifest-file --unlock-code unlock-code
  6. Crea un'istanza di amministrazione VNI per Amazon EKS Anywhere. Usa il valore di PhysicalNetworkInterfaceId come valore del physical-network-interface-id parametro.

    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. Utilizza il valore di IpAddress come valore del public-ip parametro del associate-address comando per associare l'indirizzo pubblico all'istanza di amministrazione di Amazon EKS Anywhere.

    aws ec2 associate-address --instance-id instance-id --public-ip VNI-IP --endpoint http://snowball-ip:8008 --profile profile-name
  8. Connect all'istanza di amministrazione di Amazon EKS Anywhere tramiteSSH.

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

Trasferisci i file di certificati e credenziali all'istanza di amministrazione sul dispositivo Snow Family

Dopo l'esecuzione dell'istanza di amministrazione di Amazon EKS Anywhere, trasferisci le credenziali e i certificati dei tuoi dispositivi Snowball Edge all'istanza di amministrazione. Esegui il comando seguente dalla stessa directory in cui hai salvato i file delle credenziali e dei certificati in and. Crea una chiave di accesso e un file di credenziali sul dispositivo Snow Family Crea un file di certificati per l'istanza di amministrazione sul dispositivo Snow Family

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

Verifica il contenuto dei file sull'istanza di amministrazione di Amazon EKS Anywhere. Di seguito sono riportati alcuni esempi di file di credenziali e certificati.

[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-----