View a markdown version of this page

Implementazione AWS risorse da Kubernetes con AWS Controller per Kubernetes (ACK) - 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 su che si trova 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à.

Implementazione AWS risorse da Kubernetes con AWS Controller per Kubernetes (ACK)

AWS Controllers for Kubernetes (ACK) consente di definire e gestire le risorse di servizio direttamente da Kubernetes. AWS Con AWS Controllers for Kubernetes (ACK), puoi gestire le risorse dei carichi di lavoro e l'infrastruttura cloud utilizzando le risorse personalizzate di Kubernetes, insieme ai carichi di lavoro delle tue applicazioni utilizzando le API e gli strumenti Kubernetes familiari.

Con EKS Capabilities, ACK è completamente gestito da, eliminando la necessità di installare AWS, mantenere e scalare i controller ACK sui cluster.

Come funziona ACK

ACK traduce le specifiche delle risorse personalizzate di Kubernetes in chiamate API. AWS Quando crei, aggiorni o elimini una risorsa personalizzata Kubernetes che rappresenta una risorsa di AWS servizio, ACK effettua le chiamate AWS API richieste per creare, aggiornare o eliminare la risorsa. AWS

Ogni AWS risorsa supportata da ACK ha una propria definizione di risorsa personalizzata (CRD) che definisce lo schema dell'API Kubernetes per specificarne la configurazione. Ad esempio, ACK fornisce CRD per S3, inclusi bucket, bucket policy e altre risorse S3.

ACK riconcilia continuamente lo stato delle AWS risorse con lo stato desiderato definito nelle risorse personalizzate di Kubernetes. Se una risorsa esce dallo stato desiderato, ACK lo rileva e intraprende azioni correttive per riportarla all'allineamento. Le modifiche alle risorse Kubernetes si riflettono immediatamente sullo stato AWS delle risorse, mentre il rilevamento passivo della deriva e la correzione delle modifiche alle AWS risorse a monte possono richiedere fino a 10 ore (il periodo di risincronizzazione), ma in genere avvengono molto prima.

Esempio di manifesto delle risorse S3 Bucket

apiVersion: s3.services.k8s.aws/v1alpha1 kind: Bucket metadata: name: my-ack-bucket spec: name: my-unique-bucket-name

Quando applichi questa risorsa personalizzata al tuo cluster, ACK crea un bucket Amazon S3 nel tuo account se non esiste ancora. Le modifiche successive a questa risorsa, ad esempio specificando un livello di storage non predefinito o aggiungendo una policy, verranno applicate alla risorsa S3 in. AWS Quando questa risorsa viene eliminata dal cluster, il bucket in AWS S3 viene eliminato per impostazione predefinita.

Vantaggi dell'ACK

ACK fornisce la gestione Kubernetes-native AWS delle risorse, consentendoti di gestire AWS le risorse utilizzando le stesse API e gli stessi strumenti Kubernetes che utilizzi per le tue applicazioni. Questo approccio unificato semplifica il flusso di lavoro di gestione dell'infrastruttura eliminando la necessità di passare da uno strumento all'altro o di apprendere sistemi infrastructure-as-code separati. Definisci AWS le tue risorse in modo dichiarativo nei manifest di Kubernetes, abilitando i GitOps flussi di lavoro e l'infrastruttura come pratiche di codice che si integrano perfettamente con i processi di sviluppo esistenti.

ACK riconcilia continuamente lo stato desiderato delle AWS risorse con il loro stato effettivo, correggendo la deriva e garantendo la coerenza in tutta l'infrastruttura. Questa riconciliazione continua significa che le modifiche imperative fuori banda alle AWS risorse vengono automaticamente ripristinate in modo che corrispondano alla configurazione dichiarata, mantenendo l'integrità dell'infrastruttura come codice. È possibile configurare ACK per gestire le risorse su più AWS account e regioni, abilitando complesse architetture multi-account senza strumenti aggiuntivi.

Per le organizzazioni che stanno migrando da altri strumenti di gestione dell'infrastruttura, ACK supporta l'adozione delle risorse, consentendo di riportare AWS le risorse esistenti sotto la gestione ACK senza ricrearle nuovamente. ACK fornisce anche risorse di sola lettura per l'osservazione AWS delle risorse senza accesso alle modifiche e annotazioni per conservare facoltativamente le AWS risorse anche quando la risorsa Kubernetes viene eliminata dal cluster.

Per saperne di più e iniziare a usare EKS Capability for ACK, vedi e. Concetti ACK Considerazioni ACK per EKS

Supportata AWS services

ACK supporta un'ampia gamma di AWS servizi, tra cui, a titolo esemplificativo ma non esaustivo:

  • Amazon EC2

  • Simple Storage Service (Amazon S3)

  • Amazon RDS

  • Amazon DynamoDB

  • Amazon ElastiCache

  • Amazon EKS

  • Amazon SQS

  • Amazon SNS

  • AWS Lambda

  • AWS IO SONO

Tutti i AWS servizi elencati come Generally Available upstream sono supportati da EKS Capability for ACK. Per l'elenco completo dei AWS servizi supportati, consulta la pagina dei servizi ACK sul sito Web ACK.

Integrazione con altre funzionalità gestite da EKS

ACK si integra con altre funzionalità gestite da EKS.

  • Argo CD: utilizza Argo CD per gestire l'implementazione delle risorse ACK su più cluster, abilitando GitOps i flussi di lavoro per la tua infrastruttura. AWS

    • ACK estende i vantaggi dell' GitOps abbinamento con Argo CD, ma ACK non richiede l'integrazione con git.

  • kro (Kube Resource Orchestrator): usa kro per comporre risorse complesse a partire da risorse ACK, creando astrazioni di livello superiore che semplificano la gestione delle risorse.

    • Puoi creare risorse personalizzate composite con kro che definiscono sia le risorse che le risorse Kubernetes. AWS I membri del team possono utilizzare queste risorse personalizzate per implementare rapidamente applicazioni complesse.

Guida introduttiva a ACK

Per iniziare a usare EKS Capability for ACK:

  1. Crea e configura un IAM Capability Role con le autorizzazioni necessarie affinché ACK possa gestire AWS le risorse per tuo conto.

  2. Crea una risorsa di funzionalità ACK sul tuo cluster EKS tramite la AWS Console, la AWS CLI o la tua infrastruttura preferita come strumento di codice.

  3. Applica le risorse personalizzate di Kubernetes al tuo cluster per iniziare a gestire le tue risorse in Kubernetes. AWS