Creare un componente aggiuntivo Amazon EKS - Amazon EKS

Contribuisci a migliorare questa pagina

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à.

Per contribuire a questa guida per l'utente, scegli il GitHub link Modifica questa pagina nel riquadro destro di ogni pagina.

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à.

Creare un componente aggiuntivo Amazon EKS

I componenti aggiuntivi Amazon EKS sono software aggiuntivi per cluster Amazon EKS. Tutti i componenti aggiuntivi di Amazon EKS:

  • Includono le patch di sicurezza e le correzioni dei bug più recenti.

  • Sono convalidati AWS per funzionare con Amazon EKS.

  • Riducono la quantità di lavoro necessaria per gestire il software del componente aggiuntivo.

Puoi creare un componente aggiuntivo Amazon EKS utilizzando eksctl Console di gestione AWS, o la AWS CLI. Se il componente aggiuntivo richiede un ruolo IAM, consultare i dettagli del componente aggiuntivo specifico alla pagina Amazon EKS add-ons per conoscere i dettagli sulla creazione del ruolo.

Prerequisiti

Completare le seguenti operazioni prima di creare un componente aggiuntivo:

Procedura

Puoi creare un componente aggiuntivo Amazon EKS utilizzando eksctl Console di gestione AWS, o la AWS CLI. Se il componente aggiuntivo richiede un ruolo IAM, consultare i dettagli del componente aggiuntivo specifico alla pagina Available Amazon EKS add-ons from AWS per conoscere i dettagli sulla creazione del ruolo.

Creare un componente aggiuntivo (eksctl)

  1. Visualizza i nomi dei componenti aggiuntivi disponibili per una versione del cluster. Sostituisci 1.33 con la versione del cluster.

    eksctl utils describe-addon-versions --kubernetes-version 1.33 | grep AddonName

    Di seguito viene riportato un output di esempio:

    "AddonName": "aws-ebs-csi-driver", "AddonName": "coredns", "AddonName": "kube-proxy", "AddonName": "vpc-cni", "AddonName": "adot", "AddonName": "dynatrace_dynatrace-operator", "AddonName": "upbound_universal-crossplane", "AddonName": "teleport_teleport", "AddonName": "factorhouse_kpow", [...]
  2. Visualizza le versioni disponibili per il componente aggiuntivo da creare. Sostituisci 1.33 con la versione del cluster. Sostituisci name-of-addon con il nome del componente aggiuntivo di cui visualizzare le versioni. Il nome deve essere uno di quelli restituiti al passaggio precedente.

    eksctl utils describe-addon-versions --kubernetes-version 1.33 --name name-of-addon | grep AddonVersion

    L'output seguente è un esempio di ciò che viene restituito per il componente aggiuntivo denominato vpc-cni. Come vedi, il componente aggiuntivo ha diverse versioni disponibili.

    "AddonVersions": [ "AddonVersion": "v1.12.0-eksbuild.1", "AddonVersion": "v1.11.4-eksbuild.1", "AddonVersion": "v1.10.4-eksbuild.1", "AddonVersion": "v1.9.3-eksbuild.1",
    1. Determina se il componente aggiuntivo che desideri creare è un componente aggiuntivo Amazon EKS o AWS Marketplace. Il AWS Marketplace offre componenti aggiuntivi di terze parti che richiedono il completamento di passaggi aggiuntivi per creare il componente aggiuntivo.

      eksctl utils describe-addon-versions --kubernetes-version 1.33 --name name-of-addon | grep ProductUrl

      Se non viene restituito alcun output, il componente aggiuntivo è Amazon EKS. Se viene restituito un output, il componente aggiuntivo è un componente aggiuntivo AWS Marketplace. Il seguente output viene fornito per un componente aggiuntivo denominato teleport_teleport.

      "ProductUrl": "https://aws.amazon.com/marketplace/pp?sku=3bda70bb-566f-4976-806c-f96faef18b26"

      Puoi trovare ulteriori informazioni sul componente aggiuntivo nel AWS Marketplace con l'URL restituito. Se il componente aggiuntivo richiede un abbonamento, puoi abbonarti al componente aggiuntivo tramite Marketplace AWS . Se intendi creare un componente aggiuntivo dal AWS Marketplace, il responsabile IAM che stai utilizzando per creare il componente aggiuntivo deve avere l'autorizzazione per creare il ruolo collegato al AWSServiceRoleForAWSLicenseManagerRoleservizio. Per ulteriori informazioni sull'assegnazione di autorizzazioni a un'entità IAM, consulta Aggiunta e rimozione di autorizzazioni per identità IAM nella Guida per l'utente di IAM.

  3. Crea un componente aggiuntivo di Amazon EKS. Copia il comando e sostituiscilo come segue: user-data

    • Sostituisci my-cluster con il nome del cluster.

    • Sostituisci name-of-addon con il nome del componente aggiuntivo da creare.

    • Se desideri una versione del componente aggiuntivo precedente all'ultima versione, sostituiscila latest con il numero di versione restituito nell'output di un passaggio precedente che desideri utilizzare.

    • Se il componente aggiuntivo utilizza un ruolo dell'account di servizio, sostituisci 111122223333 con l'ID dell'account e sostituisci role-name con il nome del ruolo. Per istruzioni sulla creazione di un ruolo per l’account di servizio, consultare la documentazione del componente aggiuntivo da creare. Per un elenco dei componenti aggiuntivi, consultare la pagina AWS componenti aggiuntivi. Per specificare un ruolo per l’account di servizio è necessario disporre di un gestore OpenID Connect (OIDC) IAM per il cluster. Per stabilire se ne possiedi uno per il tuo cluster o per crearne uno, consulta Per creare un provider di identità IAM OIDC per il cluster.

      Se il componente aggiuntivo non utilizza un ruolo per l’account di servizio, eliminare --service-account-role-arn arn:aws: iam::111122223333:role/role-name.

    • Questo comando di esempio sovrascrive la configurazione di qualunque versione autogestita esistente del componente aggiuntivo, se presente. Se non desideri sovrascrivere la configurazione di un componente aggiuntivo autogestito esistente, rimuovi l'opzione. --force Se rimuovi l'opzione e il componente aggiuntivo di Amazon EKS deve sovrascrivere la configurazione di un componente aggiuntivo autogestito esistente, la creazione del componente aggiuntivo di Amazon EKS non riesce e viene visualizzato un messaggio di errore per semplificare la soluzione del conflitto. Prima di specificare questa opzione, assicurarsi che il componente aggiuntivo Amazon EKS non gestisca le impostazioni da gestire autonomamente, perché questa opzione le sovrascrive.

      eksctl create addon --cluster my-cluster --name name-of-addon --version latest \ --service-account-role-arn arn:aws: iam::111122223333:role/role-name --force

      Puoi vedere un elenco completo di tutte opzioni disponibili per il comando.

      eksctl create addon --help

      Per ulteriori informazioni sulle opzioni disponibili, consulta Componenti aggiuntivi nella documentazione di eksctl.

Crea componente aggiuntivo (console)AWS

  1. Aprire la Console Amazon EKS.

  2. Nel pannello di navigazione a sinistra, seleziona Cluster.

  3. Scegliere il nome del cluster per cui si desidera creare il componente aggiuntivo.

  4. Selezionare la scheda Componenti aggiuntivi.

  5. Scegli Ottieni altri componenti aggiuntivi.

  6. Nella pagina Select add-ons (Seleziona componenti aggiuntivi), scegli i componenti aggiuntivi da aggiungere al tuo cluster. Puoi aggiungere tutti i componenti aggiuntivi Amazon EKS e i componenti aggiuntivi AWS Marketplace di cui hai bisogno.

    Per i componenti aggiuntivi di AWS Marketplace, il responsabile IAM che stai utilizzando per creare il componente aggiuntivo deve disporre delle autorizzazioni per leggere i diritti per il componente aggiuntivo da. AWS LicenseManager AWS LicenseManager richiede un ruolo AWSServiceRoleForAWSLicenseManagerRolecollegato al servizio (SLR) che consente alle risorse di gestire le licenze per tuo conto. AWS L’SLR è un requisito una tantum per singolo account e non sarà necessario creare SLR separati per ciascun componente aggiuntivo o per ciascun cluster. Per ulteriori informazioni sull'assegnazione di autorizzazioni a un principale IAM, consulta Aggiunta e rimozione di autorizzazioni per identità IAM nella Guida per l'utente di IAM.

    Se i componenti aggiuntivi del AWS Marketplace che desideri installare non sono elencati, puoi fare clic sulla numerazione delle pagine per visualizzare altri risultati di pagina o effettuare una ricerca nella casella di ricerca. Nelle Opzioni di filtro, puoi eseguire una ricerca anche per categoria, fornitore o modello di prezzi e quindi scegliere i componenti aggiuntivi dai risultati della ricerca. Dopo aver selezionato i componenti aggiuntivi da installare, scegliere Avanti.

  7. Nella pagina Configura le impostazioni dei componenti aggiuntivi selezionati, procedi come segue:

    1. Scegli Visualizza le opzioni di abbonamento per aprire il modulo delle opzioni di abbonamento. Consulta le sezioni Dettagli sui prezzi e Note legali, quindi scegli il pulsante Abbonati per continuare.

    2. Per Versione, selezionare la versione da installare. È preferibile la versione contrassegnata come latest, a meno che il singolo componente aggiuntivo da creare non consigli una versione differente. Per determinare se un componente aggiuntivo ha una versione consigliata, consultare la documentazione del componente aggiuntivo da creare. Per un elenco dei componenti aggiuntivi, consultare la pagina AWS componenti aggiuntivi.

    3. Sono disponibili due opzioni per configurare i ruoli per i componenti aggiuntivi: il ruolo IAM di EKS Pod Identity e i ruoli IAM per gli account di servizio (IRSA). Seguire la procedura adeguata di seguito per l’opzione preferita. Se tutti i componenti aggiuntivi selezionati includono Richiede un abbonamento in Stato, scegliere Avanti. Non è possibile procedere con la configurazione di questi componenti aggiuntivi finché non sarà stato sottoscritto l’abbonamento dopo la creazione del cluster. Per i componenti aggiuntivi che non includono Richiede un abbonamento in Stato:

      1. Per il ruolo IAM di Pod Identity per l’account di servizio, è possibile utilizzare un ruolo IAM di EKS Pod Identity esistente o crearne uno con il pulsante Crea ruolo consigliato. Questo campo indicherà solo le opzioni con la policy di attendibilità adeguata. Se non esiste alcun ruolo da selezionare, non si dispone di un ruolo esistente con una policy di attendibilità corrispondente. Per configurare un ruolo IAM di EKS Pod Identity per gli account di servizio del componente aggiuntivo selezionato, scegliere Crea ruolo consigliato. La procedura guidata per la creazione dei ruoli si apre in una finestra separata. La procedura guidata compilerà automaticamente le informazioni sul ruolo come indicato di seguito. Per ogni componente aggiuntivo in cui si desidera creare il ruolo IAM di EKS Pod Identity, completare i passaggi della procedura guidata IAM come indicato di seguito.

        • Nel passaggio Seleziona un'entità affidabile, l'opzione di AWS servizio per EKS e lo use case per EKS - Pod Identity sono preselezionate e la politica di attendibilità appropriata verrà compilata automaticamente per il componente aggiuntivo. Ad esempio, il ruolo verrà creato con la policy di attendibilità adeguata contenente il principale IAM pods.eks.amazonaws.com, come descritto nella pagina Vantaggi delle associazioni EKS Pod Identity. Scegli Next (Successivo).

        • Al passaggio Aggiungi autorizzazioni, viene preselezionata la policy gestita adeguata per la policy del ruolo per il componente aggiuntivo. Ad esempio, per il componente aggiuntivo CNI di Amazon VPC, il ruolo verrà creato con la policy gestita AmazonEKS_CNI_Policy, come descritto nella pagina Plug-in della CNI di Amazon VPC per Kubernetes. Scegli Next (Successivo).

        • Al passaggio Nomina, verifica e crea, in Nome del ruolo, viene inserito automaticamente il nome del ruolo predefinito per il componente aggiuntivo. Ad esempio, per il componente aggiuntivo Amazon VPC CNI, il ruolo verrà creato con il nome Amazon. EKSPod IdentityAmazon VPCCNIRole In Descrizione, la descrizione predefinita viene compilata automaticamente con la descrizione adeguata per il componente aggiuntivo. Ad esempio, per il componente aggiuntivo Amazon VPC CNI, il ruolo verrà creato con la descrizione Permette ai pod in esecuzione nel cluster Amazon EKS di accedere alle risorse. AWS In Policy di attendibilità, viene visualizzata la policy di attendibilità compilata per il componente aggiuntivo. Scegli Crea ruolo.

          NOTA: mantenere il nome del ruolo predefinito consente a EKS di preselezionare il ruolo dei componenti aggiuntivi nei nuovi cluster o quando si aggiungono componenti aggiuntivi ai cluster esistenti. È comunque possibile sostituire tale nome e il ruolo sarà disponibile per il componente aggiuntivo in tutti i cluster, ma dovrà essere selezionato manualmente dal menu a discesa.

      2. Per i componenti aggiuntivi che non includono Richiede un abbonamento in Stato e per i quali si desidera configurare i ruoli utilizzando IRSA, consultare la documentazione relativa al componente aggiuntivo da creare per definire una policy IAM e collegarla a un ruolo. Per un elenco dei componenti aggiuntivi, consultare la pagina AWS componenti aggiuntivi. Per selezionare un ruolo IAM è necessario disporre di un gestore OpenID Connect (OIDC) IAM per il cluster. Per stabilire se ne possiedi uno per il tuo cluster o per crearne uno, consulta Per creare un provider di identità IAM OIDC per il cluster.

      3. Scegli Optional configuration settings (Impostazioni di configurazione facoltative).

      4. Se il componente aggiuntivo richiede una configurazione, inseriscila nella casella Configuration values (Valori di configurazione). Per determinare se il componente aggiuntivo richiede informazioni di configurazione, consultare la documentazione del componente aggiuntivo da creare. Per un elenco dei componenti aggiuntivi, consultare la pagina AWS componenti aggiuntivi.

      5. Selezionare una delle opzioni disponibili per Metodo di risoluzione dei conflitti. Se si sceglie Sostituisci come Metodo di risoluzione dei conflitti, una o più impostazioni per il componente aggiuntivo esistente possono essere sovrascritte con le impostazioni del componente aggiuntivo Amazon EKS. Se non si abilita questa opzione e c’è un conflitto con le impostazioni esistenti, l’operazione non va a buon fine e viene visualizzato un messaggio di errore per aiutarti a risolvere il conflitto. Prima di scegliere questa opzione, assicurarsi che il componente aggiuntivo Amazon EKS non gestisca le impostazioni che devono essere autogestite.

      6. Se si desidera installare il componente aggiuntivo in un namespace specifico, inserirlo nel campo Namespace. Per AWS i componenti aggiuntivi della community, puoi definire uno spazio dei nomi Kubernetes personalizzato in cui installare il componente aggiuntivo. Per ulteriori informazioni, consulta Namespace personalizzato per componenti aggiuntivi.

      7. Scegli Next (Successivo).

  8. Nella pagina Rivedi e aggiungi, scegli Crea. Una volta completata l'installazione del componente aggiuntivo, vengono visualizzati i componenti aggiuntivi installati.

  9. Se uno dei componenti aggiuntivi installati richiede una sottoscrizione, completa la procedura seguente:

    1. scegli il pulsante Subscribe (Sottoscrivi) nell'angolo inferiore destro del componente aggiuntivo. Verrai indirizzato alla pagina del componente aggiuntivo nel AWS Marketplace. Leggi le informazioni sul componente aggiuntivo, ad esempio Product Overview (Panoramica del prodotto) e Pricing information (Informazioni sui prezzi).

    2. Seleziona il pulsante Continue to Subscribe (Continua la sottoscrizione) nella parte superiore destra della pagina del componente aggiuntivo.

    3. Leggi i Terms and Conditions (Termini e condizioni). Se li accetti, scegli Accept Terms (Accetta i termini). L'elaborazione della sottoscrizione può richiedere vari minuti. Durante l'elaborazione della sottoscrizione, il pulsante Return to Amazon EKS Console (Torna alla console Amazon EKS) è disattivato.

    4. Al termine dell'elaborazione dell'abbonamento, il pulsante Return to Amazon EKS Console (Torna alla console Amazon EKS) non è più disattivato. Scegli il pulsante per tornare alla scheda Add-ons (Componenti aggiuntivi) della console Amazon EKS per il tuo cluster.

    5. Per il componente aggiuntivo che hai sottoscritto, scegli Remove and reinstall (Rimuovi e reinstalla), quindi scegli Reinstall add-on (Reinstalla componente aggiuntivo). L'installazione del componente aggiuntivo può richiedere vari minuti. Una volta completata l'installazione, puoi configurare il componente aggiuntivo.

Crea componente aggiuntivo (AWS CLI)

  1. È necessaria la versione 2.12.3 o una versione successiva 1.27.160 o una versione o successiva dell'interfaccia a riga di AWS comando (AWS CLI) installata e configurata sul dispositivo o. AWS CloudShell Per verificare la versione attuale, usa aws --version | cut -d / -f2 | cut -d ' ' -f1. I gestori di pacchetti come yum Homebrew per macOS sono spesso diverse versioni dell'ultima versione della CLI AWS . apt-get Per installare la versione più recente, consulta Installazione e configurazione rapida con aws configure nella Guida per l'utente dell'interfaccia a riga di AWS comando. La versione AWS CLI installata in AWS CloudShell potrebbe anche contenere diverse versioni precedenti alla versione più recente. Per aggiornarlo, consulta Installazione della AWS CLI nella tua home directory nella Guida per l' AWS CloudShell utente.

  2. Determina quali componenti aggiuntivi sono disponibili. Puoi vedere tutti i componenti aggiuntivi disponibili, incluso il tipo e l'autore. Puoi anche visualizzare l'URL dei componenti aggiuntivi disponibili tramite AWS Marketplace. Sostituisci 1.33 con la versione del cluster.

    aws eks describe-addon-versions --kubernetes-version 1.33 \ --query 'addons[].{MarketplaceProductUrl: marketplaceInformation.productUrl, Name: addonName, Owner: owner Publisher: publisher, Type: type}' --output table

    Di seguito viene riportato un output di esempio:

    --------------------------------------------------------------------------------------------------------------------------------------------------------- | DescribeAddonVersions | +---------------------------------------------------------------+-------------------------------+------------------+--------------+---------------------+ | MarketplaceProductUrl | Name | Owner | Publisher | Type | +---------------------------------------------------------------+-------------------------------+------------------+--------------+---------------------+ | None | aws-ebs-csi-driver | aws | eks | storage | | None | coredns | aws | eks | networking | | None | kube-proxy | aws | eks | networking | | None | vpc-cni | aws | eks | networking | | None | adot | aws | eks | observability | | https://aws.amazon.com/marketplace/pp/prodview-brb73nceicv7u | dynatrace_dynatrace-operator | aws-marketplace | dynatrace | monitoring | | https://aws.amazon.com/marketplace/pp/prodview-uhc2iwi5xysoc | upbound_universal-crossplane | aws-marketplace | upbound | infra-management | | https://aws.amazon.com/marketplace/pp/prodview-hd2ydsrgqy4li | teleport_teleport | aws-marketplace | teleport | policy-management | | https://aws.amazon.com/marketplace/pp/prodview-vgghgqdsplhvc | factorhouse_kpow | aws-marketplace | factorhouse | monitoring | | [...] | [...] | [...] | [...] | [...] | +---------------------------------------------------------------+-------------------------------+------------------+--------------+---------------------+

    Il tuo output potrebbe essere diverso. In questo output di esempio, sono disponibili tre diversi componenti aggiuntivi di tipo networking e cinque componenti aggiuntivi con un autore di tipo eks. I componenti aggiuntivi con aws-marketplace nella colonna Owner potrebbero richiedere un abbonamento per poter essere installati. Per ulteriori informazioni sul componente aggiuntivo e per sottoscriverlo, puoi visitare l'URL.

  3. Puoi vedere quali versioni sono disponibili per ogni componente aggiuntivo. Sostituisci 1.33 con la versione del tuo cluster, quindi sostituisci vpc-cni con il nome del componente aggiuntivo restituito nella fase precedente.

    aws eks describe-addon-versions --kubernetes-version 1.33 --addon-name vpc-cni \ --query 'addons[].addonVersions[].{Version: addonVersion, Defaultversion: compatibilities[0].defaultVersion}' --output table

    Di seguito viene riportato un output di esempio:

    ------------------------------------------ | DescribeAddonVersions | +-----------------+----------------------+ | Defaultversion | Version | +-----------------+----------------------+ | False | v1.12.0-eksbuild.1 | | True | v1.11.4-eksbuild.1 | | False | v1.10.4-eksbuild.1 | | False | v1.9.3-eksbuild.1 | +-----------------+----------------------+

    Per impostazione predefinita, la versione con True nella colonna Defaultversion è la versione con cui viene creato il componente aggiuntivo.

  4. (Facoltativo) Trova le opzioni di configurazione del componente aggiuntivo scelto utilizzando il comando seguente:

    aws eks describe-addon-configuration --addon-name vpc-cni --addon-version v1.12.0-eksbuild.1
    { "addonName": "vpc-cni", "addonVersion": "v1.12.0-eksbuild.1", "configurationSchema": "{\"$ref\":\"#/definitions/VpcCni\",\"$schema\":\"http://json-schema.org/draft-06/schema#\",\"definitions\":{\"Cri\":{\"additionalProperties\":false,\"properties\":{\"hostPath\":{\"$ref\":\"#/definitions/HostPath\"}},\"title\":\"Cri\",\"type\":\"object\"},\"Env\":{\"additionalProperties\":false,\"properties\":{\"ADDITIONAL_ENI_TAGS\":{\"type\":\"string\"},\"AWS_VPC_CNI_NODE_PORT_SUPPORT\":{\"format\":\"boolean\",\"type\":\"string\"},\"AWS_VPC_ENI_MTU\":{\"format\":\"integer\",\"type\":\"string\"},\"AWS_VPC_K8S_CNI_CONFIGURE_RPFILTER\":{\"format\":\"boolean\",\"type\":\"string\"},\"AWS_VPC_K8S_CNI_CUSTOM_NETWORK_CFG\":{\"format\":\"boolean\",\"type\":\"string\"},\"AWS_VPC_K8S_CNI_EXTERNALSNAT\":{\"format\":\"boolean\",\"type\":\"string\"},\"AWS_VPC_K8S_CNI_LOGLEVEL\":{\"type\":\"string\"},\"AWS_VPC_K8S_CNI_LOG_FILE\":{\"type\":\"string\"},\"AWS_VPC_K8S_CNI_RANDOMIZESNAT\":{\"type\":\"string\"},\"AWS_VPC_K8S_CNI_VETHPREFIX\":{\"type\":\"string\"},\"AWS_VPC_K8S_PLUGIN_LOG_FILE\":{\"type\":\"string\"},\"AWS_VPC_K8S_PLUGIN_LOG_LEVEL\":{\"type\":\"string\"},\"DISABLE_INTROSPECTION\":{\"format\":\"boolean\",\"type\":\"string\"},\"DISABLE_METRICS\":{\"format\":\"boolean\",\"type\":\"string\"},\"DISABLE_NETWORK_RESOURCE_PROVISIONING\":{\"format\":\"boolean\",\"type\":\"string\"},\"ENABLE_POD_ENI\":{\"format\":\"boolean\",\"type\":\"string\"},\"ENABLE_PREFIX_DELEGATION\":{\"format\":\"boolean\",\"type\":\"string\"},\"WARM_ENI_TARGET\":{\"format\":\"integer\",\"type\":\"string\"},\"WARM_PREFIX_TARGET\":{\"format\":\"integer\",\"type\":\"string\"}},\"title\":\"Env\",\"type\":\"object\"},\"HostPath\":{\"additionalProperties\":false,\"properties\":{\"path\":{\"type\":\"string\"}},\"title\":\"HostPath\",\"type\":\"object\"},\"Limits\":{\"additionalProperties\":false,\"properties\":{\"cpu\":{\"type\":\"string\"},\"memory\":{\"type\":\"string\"}},\"title\":\"Limits\",\"type\":\"object\"},\"Resources\":{\"additionalProperties\":false,\"properties\":{\"limits\":{\"$ref\":\"#/definitions/Limits\"},\"requests\":{\"$ref\":\"#/definitions/Limits\"}},\"title\":\"Resources\",\"type\":\"object\"},\"VpcCni\":{\"additionalProperties\":false,\"properties\":{\"cri\":{\"$ref\":\"#/definitions/Cri\"},\"env\":{\"$ref\":\"#/definitions/Env\"},\"resources\":{\"$ref\":\"#/definitions/Resources\"}},\"title\":\"VpcCni\",\"type\":\"object\"}}}" }

    L'output sarà uno schema JSON standard.

    Di seguito è riportato un esempio di valori di configurazione validi, in formato JSON, che funzionano con lo schema precedente.

    { "resources": { "limits": { "cpu": "100m" } } }

    Di seguito è riportato un esempio di valori di configurazione validi, in formato YAML, che funzionano con lo schema precedente.

    resources: limits: cpu: 100m
  5. Stabilire se il componente aggiuntivo richiede autorizzazioni IAM. In tal caso, è necessario (1) stabilire se si desidera utilizzare EKS Pod Identity o ruoli IAM per gli account di servizio (IRSA), (2) stabilire l’ARN del ruolo IAM da utilizzare con il componente aggiuntivo e (3) stabilire il nome dell’account di servizio Kubernetes usato dal componente aggiuntivo. Per ulteriori informazioni, consulta Recupero delle informazioni IAM su un componente aggiuntivo di Amazon EKS.

    • Amazon EKS suggerisce di utilizzare EKS Pod Identity, se supportato dal componente aggiuntivo. Ciò richiede che l’agente Pod Identity sia installato nel cluster. Per ulteriori informazioni sull’utilizzo di Pod Identity con i componenti aggiuntivi, consultare la pagina Ruoli IAM per i componenti aggiuntivi di Amazon EKS.

    • Se il componente aggiuntivo o il cluster non sono configurati per EKS Pod Identity, utilizzare IRSA. Confermare che IRSA sia configurato sul cluster.

    • Consultare la documentazione dei componenti aggiuntivi Amazon EKS per stabilire se il componente aggiuntivo richiede le autorizzazioni IAM e il nome dell’account di servizio Kubernetes associato.

      1. Crea un componente aggiuntivo di Amazon EKS. Copia il comando seguente sul tuo dispositivo. Apportare le seguenti modifiche al comando, se necessario, quindi esegui il comando modificato:

    • Sostituisci my-cluster con il nome del cluster.

    • Sostituisci vpc-cni con il nome del componente aggiuntivo da creare restituito nell'output del passaggio precedente.

    • Sostituisci version-number con il nome del componente aggiuntivo da utilizzare restituito nell'output della fase precedente.

    • Per installare il componente aggiuntivo in un namespace Kubernetes personalizzato, aggiungere l’opzione --namespace-config 'namespace=<my-namespace>. Questa opzione è disponibile solo per i AWS componenti aggiuntivi della community. Per ulteriori informazioni, consulta Namespace personalizzato per componenti aggiuntivi

    • Se il componente aggiuntivo non richiede le autorizzazioni IAM, elimina. <service-account-configuration>

    • Esegui una delle seguenti operazioni:

      • Se il componente aggiuntivo (1) richiede le autorizzazioni IAM e (2) il cluster utilizza EKS Pod Identities, sostituiscilo <service-account-configuration> con la seguente associazione di identità del pod. Sostituisci <service-account-name> con il nome dell'account di servizio utilizzato dal componente aggiuntivo. Sostituisci <role-arn> con l'ARN di un ruolo IAM. Il ruolo deve disporre della policy di attendibilità richiesta da EKS Pod Identity.

        --pod-identity-associations 'serviceAccount=<service-account-name>,roleArn=<role-arn>'
      • Se il componente aggiuntivo (1) richiede autorizzazioni IAM e (2) il cluster utilizza IRSA, sostituiscilo <service-account-configuration> con la seguente configurazione IRSA. 111122223333Sostituiscilo con l'ID del tuo account e role-name con il nome di un ruolo IAM esistente che hai creato. Per istruzioni sulla creazione del ruolo, consultare la documentazione del componente aggiuntivo da creare. Per un elenco dei componenti aggiuntivi, consultare la pagina AWS componenti aggiuntivi. Per specificare un ruolo per l’account di servizio è necessario disporre di un gestore OpenID Connect (OIDC) IAM per il cluster. Per stabilire se ne possiedi uno per il tuo cluster o per crearne uno, consulta Per creare un provider di identità IAM OIDC per il cluster.

        --service-account-role-arn arn:aws::iam::111122223333:role/role-name
    • Questo comando di esempio sovrascrive l'opzione --configuration-values di qualunque versione autogestita esistente del componente aggiuntivo, se presente. Sostituiscilo con i valori di configurazione desiderati, come una stringa o un file di input. Se non si desidera fornire valori di configurazione, eliminare l’opzione --configuration-values. Se non desideri che la AWS CLI sovrascriva la configurazione di un componente aggiuntivo autogestito esistente, rimuovi l'opzione. --resolve-conflicts OVERWRITE Se rimuovi l'opzione e il componente aggiuntivo di Amazon EKS deve sovrascrivere la configurazione di un componente aggiuntivo autogestito esistente, la creazione del componente aggiuntivo di Amazon EKS non riesce e viene visualizzato un messaggio di errore per semplificare la soluzione del conflitto. Prima di specificare questa opzione, assicurarsi che il componente aggiuntivo Amazon EKS non gestisca le impostazioni da gestire autonomamente, perché questa opzione le sovrascrive.

      aws eks create-addon --cluster-name my-cluster --addon-name vpc-cni --addon-version version-number \ <service-account-configuration> --configuration-values '{"resources":{"limits":{"cpu":"100m"}}}' --resolve-conflicts OVERWRITE
      aws eks create-addon --cluster-name my-cluster --addon-name vpc-cni --addon-version version-number \ <service-account-configuration> --configuration-values 'file://example.yaml' --resolve-conflicts OVERWRITE

      Per un elenco completo delle opzioni disponibili, consulta create-addon nella Documentazione di riferimento della riga di comando Amazon EKS. Se il componente aggiuntivo creato include aws-marketplace elencato nella colonna Owner di un passaggio precedente, la creazione potrebbe non riuscire e si potrebbe ricevere un messaggio di errore simile al seguente.

      { "addon": { "addonName": "addon-name", "clusterName": "my-cluster", "status": "CREATE_FAILED", "addonVersion": "version", "health": { "issues": [ { "code": "AddonSubscriptionNeeded", "message": "You are currently not subscribed to this add-on. To subscribe, visit the AWS Marketplace console, agree to the seller EULA, select the pricing type if required, then re-install the add-on" } ] } } }

      Se ricevi un errore simile a quello nell'output precedente, visita l'URL nell'output di un passaggio precedente per sottoscrivere il componente aggiuntivo. Dopo la sottoscrizione, esegui nuovamente il comando create-addon.