Mengelola add-on Amazon EKS - Amazon EKS

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Mengelola add-on Amazon EKS

Pengaya Amazon EKS adalah seperangkat perangkat lunak add-on yang dikuratori untuk kluster Amazon EKS. Semua pengaya Amazon EKS:

  • termasuk patch keamanan terbaru dan perbaikan bug.

  • divalidasi oleh AWS untuk bekerja dengan Amazon EKS.

  • mengurangi jumlah pekerjaan yang diperlukan untuk mengelola perangkat lunak add-on.

AWS Management Console Ini memberi tahu Anda ketika versi baru tersedia untuk add-on Amazon EKS. Anda cukup memulai pembaruan, dan Amazon EKS memperbarui perangkat lunak add-on untuk Anda.

Untuk daftar add-on yang tersedia, lihatPengaya Amazon EKS yang tersedia dari Amazon EKS. Untuk informasi selengkapnya tentang manajemen Kubernetes lapangan, lihat Manajemen lapangan Kubernetes

Prasyarat
  • Sebuah klaster Amazon EKS yang sudah ada. Untuk menyebarkan satu, lihatMemulai dengan Amazon EKS.

  • Jika Anda membuat add-on yang menggunakan akun Kubernetes layanan dan peran IAM, maka Anda harus memiliki penyedia AWS Identity and Access Management (IAM) OpenID Connect (OIDC) untuk klaster Anda. Untuk menentukan apakah Anda memiliki satu untuk cluster Anda, atau untuk membuatnya, lihatBuat OIDC penyedia IAM untuk klaster Anda.

Membuat add-on

Anda dapat membuat add-on Amazon EKS menggunakaneksctl, AWS Management Console, atau. AWS CLI Jika add-on memerlukan peran IAM, lihat detail untuk add-on spesifik Pengaya Amazon EKS yang tersedia dari Amazon EKS untuk detail tentang membuat peran.

eksctl
Prasyarat

Versi 0.175.0 atau yang lebih baru dari alat baris eksctl perintah yang diinstal pada perangkat Anda atau AWS CloudShell. Untuk menginstal atau memperbaruieksctl, lihat Instalasi dalam eksctl dokumentasi.

Untuk membuat add-on Amazon EKS menggunakan eksctl
  1. Lihat nama add-on yang tersedia untuk versi cluster. Ganti 1.29 dengan versi cluster Anda.

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

    Contoh output adalah sebagai berikut.

    "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. Lihat versi yang tersedia untuk add-on yang ingin Anda buat. Ganti 1.29 dengan versi cluster Anda. Ganti name-of-addon dengan nama add-on yang ingin Anda lihat versinya. Nama harus salah satu nama yang dikembalikan pada langkah sebelumnya.

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

    Output berikut adalah contoh dari apa yang dikembalikan untuk add-on bernamavpc-cni. Anda dapat melihat bahwa add-on memiliki beberapa versi yang tersedia.

    "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",
  3. Tentukan apakah add-on yang ingin Anda buat adalah Amazon EKS atau AWS Marketplace add-on. Ini AWS Marketplace memiliki add-on pihak ketiga yang mengharuskan Anda menyelesaikan langkah-langkah tambahan untuk membuat add-on.

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

    Jika tidak ada output yang dikembalikan, maka add-on adalah Amazon EKS. Jika output dikembalikan, maka add-on adalah AWS Marketplace add-on. Output berikut adalah untuk add-on bernamateleport_teleport.

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

    Anda dapat mempelajari lebih lanjut tentang add-on di AWS Marketplace dengan URL yang dikembalikan. Jika add-on memerlukan langganan, Anda dapat berlangganan add-on melalui. AWS Marketplace Jika Anda akan membuat add-on dari AWS Marketplace, maka prinsipal IAM yang Anda gunakan untuk membuat add-on harus memiliki izin untuk membuat peran terkait layanan. AWSServiceRoleForAWSLicenseManagerRole Untuk informasi selengkapnya tentang menetapkan izin ke entitas IAM, lihat Menambahkan dan menghapus izin identitas IAM di Panduan Pengguna IAM.

  4. Buat add-on Amazon EKS. Salin perintah yang mengikuti ke perangkat Anda. Buat modifikasi berikut pada perintah sesuai kebutuhan dan kemudian jalankan perintah yang dimodifikasi:

    • Ganti my-cluster dengan nama klaster Anda.

    • Ganti name-of-addon dengan nama add-on yang ingin Anda buat.

    • Jika Anda menginginkan versi add-on yang lebih awal dari versi terbaru, maka ganti latest dengan nomor versi yang dikembalikan dalam output dari langkah sebelumnya yang ingin Anda gunakan.

    • Jika add-on menggunakan peran akun layanan, ganti 111122223333 dengan ID akun Anda dan ganti role-name dengan nama peran. Untuk petunjuk cara membuat peran untuk akun layanan Anda, lihat dokumentasi untuk add-on yang Anda buat. Menentukan peran akun layanan mengharuskan Anda memiliki penyedia IAM OpenID Connect (OIDC) untuk klaster Anda. Untuk menentukan apakah Anda memiliki satu untuk cluster Anda, atau untuk membuatnya, lihatBuat OIDC penyedia IAM untuk klaster Anda.

      Jika add-on tidak menggunakan peran akun layanan, hapus--service-account-role-arn arn:aws:iam::111122223333:role/role-name.

    • Perintah contoh ini menimpa konfigurasi versi add-on yang dikelola sendiri yang ada, jika ada. Jika Anda tidak ingin menimpa konfigurasi add-on yang dikelola sendiri, hapus opsi. --force Jika Anda menghapus opsi, dan add-on Amazon EKS perlu menimpa konfigurasi add-on yang dikelola sendiri, maka pembuatan add-on Amazon EKS gagal dengan pesan kesalahan untuk membantu Anda menyelesaikan konflik. Sebelum menentukan opsi ini, pastikan add-on Amazon EKS tidak mengelola pengaturan yang perlu Anda kelola, karena pengaturan tersebut ditimpa dengan opsi ini.

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

Anda dapat melihat daftar semua opsi yang tersedia untuk perintah.

eksctl create addon --help

Untuk informasi selengkapnya tentang opsi yang tersedia, lihat Addons dalam eksctl dokumentasi.

AWS Management Console
Untuk membuat add-on Amazon EKS menggunakan AWS Management Console
  1. Buka konsol Amazon EKS di https://console.aws.amazon.com/eks/home#/clusters.

  2. Di panel navigasi kiri, pilih Clusters, lalu pilih nama cluster yang ingin Anda buat add-on.

  3. Pilih tab Add-ons.

  4. Pilih Get more add-ons

  5. Pilih add-on yang ingin Anda tambahkan ke cluster Anda. Anda dapat menambahkan add-on dan AWS Marketplace add-on Amazon EKS sebanyak yang Anda butuhkan.

    Untuk AWS Marketplaceadd-on, prinsipal IAM yang Anda gunakan untuk membuat add-on harus memiliki izin untuk membaca hak untuk add-on dari. AWS LicenseManager AWS LicenseManager memerlukan peran AWSServiceRoleForAWSLicenseManagerRoleterkait layanan (SLR) yang memungkinkan AWS sumber daya mengelola lisensi atas nama Anda. SLR adalah persyaratan satu kali, per akun, dan Anda tidak perlu membuat SLR terpisah untuk setiap add-on atau setiap cluster. Untuk informasi selengkapnya tentang menetapkan izin ke prinsipal IAM, lihat Menambahkan dan menghapus izin identitas IAM di Panduan Pengguna IAM.

    Jika AWS Marketplace add-on yang ingin Anda instal tidak terdaftar, Anda dapat mencari add-on yang tersedia dengan memasukkan teks di kotak pencarian. Dalam opsi Pemfilteran, Anda juga dapat memfilter berdasarkan kategori, vendor, atau model harga dan kemudian memilih add-on dari hasil pencarian. Setelah Anda memilih add-on yang ingin Anda instal, pilih Berikutnya.

  6. Pada halaman Konfigurasi pengaturan add-on yang dipilih:

    • Pilih Lihat opsi berlangganan untuk membuka formulir Opsi berlangganan. Tinjau detail Harga dan bagian Hukum, lalu pilih tombol Berlangganan untuk melanjutkan.

    • Untuk Versi, pilih versi yang ingin Anda instal. Kami merekomendasikan versi yang ditandai terbaru, kecuali setiap add-on yang Anda buat merekomendasikan versi yang berbeda. Untuk menentukan apakah add-on memiliki versi yang direkomendasikan, lihat dokumentasi untuk add-on yang Anda buat.

    • Jika semua add-on yang Anda pilih memiliki Memerlukan langganan di bawah Status, pilih Berikutnya. Anda tidak dapat mengonfigurasi add-on tersebut lebih lanjut sampai Anda berlangganan mereka setelah klaster Anda dibuat. Untuk add-on yang tidak memiliki langganan Memerlukan di bawah Status:

      • Untuk peran Select IAM, terima opsi default, kecuali add-on memerlukan izin IAM. Jika add-on memerlukan AWS izin, Anda dapat menggunakan peran IAM dari node (Tidak disetel) atau peran yang ada yang Anda buat untuk digunakan dengan add-on. Jika tidak ada peran untuk dipilih, maka Anda tidak memiliki peran yang ada. Terlepas dari opsi mana yang Anda pilih, lihat dokumentasi untuk add-on yang Anda buat untuk membuat kebijakan IAM dan melampirkannya ke peran. Memilih peran IAM mengharuskan Anda memiliki penyedia IAM OpenID Connect (OIDC) untuk klaster Anda. Untuk menentukan apakah Anda memiliki satu untuk cluster Anda, atau untuk membuatnya, lihatBuat OIDC penyedia IAM untuk klaster Anda.

      • Pilih Pengaturan konfigurasi opsional.

        • Jika add-on memerlukan konfigurasi, masukkan di kotak Nilai konfigurasi. Untuk menentukan apakah add-on memerlukan informasi konfigurasi, lihat dokumentasi untuk add-on yang Anda buat.

        • Pilih salah satu opsi yang tersedia untuk metode Resolusi Konflik.

      • Pilih Berikutnya.

  7. Pada halaman Review dan add, pilih Create. Setelah penginstalan add-on selesai, Anda melihat add-on yang diinstal.

  8. Jika salah satu add-on yang Anda instal memerlukan langganan, selesaikan langkah-langkah berikut:

    1. Pilih tombol Berlangganan di sudut kanan bawah untuk add-on. Anda dibawa ke halaman untuk add-on di. AWS Marketplace Baca informasi tentang add-on seperti Ikhtisar Produk dan Informasi Harga.

    2. Pilih tombol Lanjutkan Berlangganan di kanan atas halaman add-on.

    3. Baca Syarat dan Ketentuan. Jika Anda menyetujuinya, pilih Terima Ketentuan. Mungkin perlu beberapa menit untuk memproses langganan. Saat langganan sedang diproses, tombol Kembali ke Amazon EKS Console berwarna abu-abu.

    4. Setelah langganan selesai diproses, tombol Kembali ke Amazon EKS Console tidak lagi berwarna abu-abu. Pilih tombol untuk kembali ke tab Add-on konsol Amazon EKS untuk klaster Anda.

    5. Untuk add-on yang Anda berlangganan, pilih Hapus dan instal ulang lalu pilih Instal ulang add-on. Pemasangan add-on dapat memakan waktu beberapa menit. Saat Instalasi selesai, Anda dapat mengonfigurasi add-on.

AWS CLI
Prasyarat

Versi 2.12.3 atau yang lebih baru atau versi 1.27.160 atau yang lebih baru dari AWS Command Line Interface (AWS CLI) diinstal dan dikonfigurasi pada perangkat Anda atau AWS CloudShell. Untuk memeriksa versi Anda saat ini, gunakanaws --version | cut -d / -f2 | cut -d ' ' -f1. Package manager seperti yumapt-get,, atau Homebrew untuk macOS sering beberapa versi di belakang versi terbaru AWS CLI. Untuk menginstal versi terbaru, lihat Menginstal, memperbarui, dan menghapus konfigurasi AWS CLI dan Cepat dengan aws configure di Panduan AWS Command Line Interface Pengguna. AWS CLI Versi yang diinstal AWS CloudShell mungkin juga beberapa versi di belakang versi terbaru. Untuk memperbaruinya, lihat Menginstal AWS CLI ke direktori home Anda di Panduan AWS CloudShell Pengguna.

Untuk membuat add-on Amazon EKS menggunakan AWS CLI
  1. Tentukan add-on mana yang tersedia. Anda dapat melihat semua add-on yang tersedia, jenisnya, dan penerbitnya. Anda juga dapat melihat URL untuk add-on yang tersedia melalui. AWS Marketplace Ganti 1.29 dengan versi cluster Anda.

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

    Contoh output adalah sebagai berikut.

    ---------------------------------------------------------------------------------------------------------------------------------------------------------
    |                                                                 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         |
    |  [...]                                                        |  [...]                        |  [...]           |  [...]       |  [...]              |
    +---------------------------------------------------------------+-------------------------------+------------------+--------------+---------------------+

    Output Anda mungkin berbeda. Dalam contoh keluaran ini, ada tiga add-on berbeda yang tersedia dari jenis networking dan lima add-on dengan penerbit tipe. eks Add-on dengan aws-marketplace di Owner kolom mungkin memerlukan langganan sebelum Anda dapat menginstalnya. Anda dapat mengunjungi URL untuk mempelajari lebih lanjut tentang add-on dan berlangganan.

  2. Anda dapat melihat versi mana yang tersedia untuk setiap add-on. Ganti 1.29 dengan versi cluster Anda dan ganti vpc-cni dengan nama add-on yang dikembalikan pada langkah sebelumnya.

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

    Contoh output adalah sebagai berikut.

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

    Versi dengan True di Defaultversion kolom adalah versi yang add-on dibuat dengan, secara default.

  3. (Opsional) Temukan opsi konfigurasi untuk add-on yang Anda pilih dengan menjalankan perintah berikut:

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

    Outputnya adalah skema JSON standar.

    Berikut adalah contoh nilai konfigurasi yang valid, dalam format JSON, yang bekerja dengan skema di atas.

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

    Berikut adalah contoh nilai konfigurasi yang valid, dalam format YAMAL, yang bekerja dengan skema di atas.

      resources: 
        limits: 
          cpu: 100m    
  4. Buat add-on Amazon EKS. Salin perintah yang mengikuti ke perangkat Anda. Buat modifikasi berikut pada perintah sesuai kebutuhan dan kemudian jalankan perintah yang dimodifikasi:

    • Ganti my-cluster dengan nama klaster Anda.

    • Ganti vpc-cni dengan nama add-on yang dikembalikan dalam output dari langkah sebelumnya yang ingin Anda buat.

    • Ganti version-number dengan versi yang dikembalikan dalam output dari langkah sebelumnya yang ingin Anda gunakan.

    • Jika add-on menggunakan akun Kubernetes layanan dan peran IAM, ganti 111122223333 dengan ID akun Anda dan role-name dengan nama peran IAM yang ada yang telah Anda buat. Untuk petunjuk tentang cara membuat peran, lihat dokumentasi untuk add-on yang Anda buat. Menentukan peran akun layanan mengharuskan Anda memiliki penyedia IAM OpenID Connect (OIDC) untuk klaster Anda. Untuk menentukan apakah Anda memiliki satu untuk cluster Anda, atau untuk membuatnya, lihatBuat OIDC penyedia IAM untuk klaster Anda.

      Jika add-on tidak menggunakan akun Kubernetes layanan dan peran IAM, hapus. --service-account-role-arn arn:aws:iam::111122223333:role/role-name

    • Contoh perintah ini menimpa --configuration-values opsi dari versi add-on yang dikelola sendiri yang ada, jika ada. Ganti ini dengan nilai konfigurasi yang diinginkan, seperti string atau input file. Jika Anda tidak ingin memberikan nilai konfigurasi, hapus --configuration-values opsi. Jika Anda tidak AWS CLI ingin menimpa konfigurasi add-on yang dikelola sendiri yang ada, hapus opsi. --resolve-conflicts OVERWRITE Jika Anda menghapus opsi, dan add-on Amazon EKS perlu menimpa konfigurasi add-on yang dikelola sendiri, maka pembuatan add-on Amazon EKS gagal dengan pesan kesalahan untuk membantu Anda menyelesaikan konflik. Sebelum menentukan opsi ini, pastikan add-on Amazon EKS tidak mengelola pengaturan yang perlu Anda kelola, karena pengaturan tersebut ditimpa dengan opsi ini.

    aws eks create-addon --cluster-name my-cluster --addon-name vpc-cni --addon-version version-number \ --service-account-role-arn arn:aws:iam::111122223333:role/role-name --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-role-arn arn:aws:iam::111122223333:role/role-name --configuration-values 'file://example.yaml' --resolve-conflicts OVERWRITE

    Untuk daftar lengkap opsi yang tersedia, lihat create-addon di Referensi Baris Perintah Amazon EKS. Jika add-on yang Anda buat telah aws-marketplace terdaftar di Owner kolom langkah sebelumnya, maka pembuatan mungkin gagal, dan Anda mungkin menerima pesan kesalahan yang mirip dengan kesalahan berikut.

    { "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" [...]

    Jika Anda menerima kesalahan yang mirip dengan kesalahan pada output sebelumnya, kunjungi URL di output dari langkah sebelumnya untuk berlangganan add-on. Setelah berlangganan, jalankan create-addon perintah lagi.

Memperbarui add-on

Amazon EKS tidak secara otomatis memperbarui add-on saat versi baru dirilis atau setelah Anda memperbarui klaster ke versi Kubernetes minor baru. Untuk memperbarui add-on untuk cluster yang ada, Anda harus memulai pembaruan. Setelah Anda memulai pembaruan, Amazon EKS memperbarui add-on untuk Anda. Sebelum memperbarui add-on, tinjau dokumentasi saat ini untuk add-on. Untuk daftar add-on yang tersedia, lihatPengaya Amazon EKS yang tersedia dari Amazon EKS. Jika add-on memerlukan peran IAM, lihat detail untuk add-on spesifik Pengaya Amazon EKS yang tersedia dari Amazon EKS untuk detail tentang membuat peran.

Anda dapat memperbarui add-on Amazon EKS menggunakaneksctl, AWS Management Console, atau. AWS CLI

eksctl
Prasyarat

Versi 0.175.0 atau yang lebih baru dari alat baris eksctl perintah yang diinstal pada perangkat Anda atau AWS CloudShell. Untuk menginstal atau memperbaruieksctl, lihat Instalasi dalam eksctl dokumentasi.

Untuk memperbarui add-on Amazon EKS menggunakan eksctl
  1. Tentukan versi add-on dan add-on saat ini yang diinstal pada cluster Anda. Ganti my-cluster dengan nama klaster Anda.

    eksctl get addon --cluster my-cluster

    Contoh output adalah sebagai berikut.

    NAME VERSION STATUS ISSUES IAMROLE UPDATE AVAILABLE coredns v1.8.7-eksbuild.2 ACTIVE 0 kube-proxy v1.23.7-eksbuild.1 ACTIVE 0 v1.23.8-eksbuild.2 vpc-cni v1.10.4-eksbuild.1 ACTIVE 0 v1.12.0-eksbuild.1,v1.11.4-eksbuild.1,v1.11.3-eksbuild.1,v1.11.2-eksbuild.1,v1.11.0-eksbuild.1

    Output Anda mungkin terlihat berbeda, tergantung pada add-on dan versi yang Anda miliki di cluster Anda. Anda dapat melihat bahwa dalam contoh keluaran sebelumnya, dua add-on yang ada di cluster memiliki versi yang lebih baru yang tersedia di UPDATE AVAILABLE kolom.

  2. Perbarui add-on.

    1. Salin perintah yang mengikuti ke perangkat Anda. Buat modifikasi berikut pada perintah sesuai kebutuhan:

      • Ganti my-cluster dengan nama klaster Anda.

      • Ganti region-code dengan tempat Wilayah AWS cluster Anda berada.

      • Ganti vpc-cni dengan nama add-on yang dikembalikan dalam output dari langkah sebelumnya yang ingin Anda perbarui.

      • Jika Anda ingin memperbarui ke versi lebih awal dari versi terbaru yang tersedia, maka ganti latest dengan nomor versi yang dikembalikan dalam output dari langkah sebelumnya yang ingin Anda gunakan. Beberapa add-on memiliki versi yang direkomendasikan. Untuk informasi selengkapnya, lihat dokumentasi untuk add-on yang Anda perbarui.

      • Jika add-on menggunakan akun Kubernetes layanan dan peran IAM, ganti 111122223333 dengan ID akun Anda dan role-name dengan nama peran IAM yang ada yang telah Anda buat. Untuk petunjuk tentang cara membuat peran, lihat dokumentasi untuk add-on yang Anda buat. Menentukan peran akun layanan mengharuskan Anda memiliki penyedia IAM OpenID Connect (OIDC) untuk klaster Anda. Untuk menentukan apakah Anda memiliki satu untuk cluster Anda, atau untuk membuatnya, lihatBuat OIDC penyedia IAM untuk klaster Anda.

        Jika add-on tidak menggunakan akun Kubernetes layanan dan peran IAM, hapus baris tersebut. serviceAccountRoleARN: arn:aws:iam::111122223333:role/role-name

      • preserveOpsi mempertahankan nilai yang ada untuk add-on. Jika Anda telah menetapkan nilai kustom untuk pengaturan add-on, dan Anda tidak menggunakan opsi ini, Amazon EKS menimpa nilai Anda dengan nilai defaultnya. Jika Anda menggunakan opsi ini, sebaiknya Anda menguji setiap bidang dan perubahan nilai pada klaster non-produksi sebelum memperbarui add-on pada cluster produksi Anda. Jika Anda mengubah nilai ini menjadioverwrite, semua pengaturan diubah ke nilai default Amazon EKS. Jika Anda telah menetapkan nilai kustom untuk setelan apa pun, nilai tersebut mungkin akan ditimpa dengan nilai default Amazon EKS. Jika Anda mengubah nilai ininone, Amazon EKS tidak mengubah nilai pengaturan apa pun, tetapi pembaruan mungkin gagal. Jika pembaruan gagal, Anda menerima pesan galat untuk membantu menyelesaikan konflik.

        cat >update-addon.yaml <<EOF apiVersion: eksctl.io/v1alpha5 kind: ClusterConfig metadata: name: my-cluster region: region-code addons: - name: vpc-cni version: latest serviceAccountRoleARN: arn:aws:iam::111122223333:role/role-name resolveConflicts: preserve EOF
    2. Jalankan perintah yang dimodifikasi untuk membuat update-addon.yaml file.

    3. Terapkan file konfigurasi ke cluster Anda.

      eksctl update addon -f update-addon.yaml

    Untuk informasi selengkapnya tentang memperbarui add-on, lihat Addons dalam dokumentasi. eksctl

AWS Management Console
Untuk memperbarui add-on Amazon EKS menggunakan AWS Management Console
  1. Buka konsol Amazon EKS di https://console.aws.amazon.com/eks/home#/clusters.

  2. Di panel navigasi kiri, pilih Clusters, lalu pilih nama cluster yang ingin Anda konfigurasikan add-on.

  3. Pilih tab Add-ons.

  4. Pilih kotak di kanan atas kotak add-on dan kemudian pilih Edit.

  5. Pada halaman Konfigurasi nama addon:

    • Pilih Versi yang ingin Anda gunakan. Add-on mungkin memiliki versi yang direkomendasikan. Untuk informasi selengkapnya, lihat dokumentasi untuk add-on yang Anda perbarui.

    • Untuk peran Select IAM, Anda dapat menggunakan peran IAM dari node (Tidak disetel) atau peran yang ada yang Anda buat untuk digunakan dengan add-on. Jika tidak ada peran untuk dipilih, maka Anda tidak memiliki peran yang ada. Terlepas dari opsi mana yang Anda pilih, lihat dokumentasi untuk add-on yang Anda buat untuk membuat kebijakan IAM dan melampirkannya ke peran. Memilih peran IAM mengharuskan Anda memiliki penyedia IAM OpenID Connect (OIDC) untuk klaster Anda. Untuk menentukan apakah Anda memiliki satu untuk cluster Anda, atau untuk membuatnya, lihatBuat OIDC penyedia IAM untuk klaster Anda.

    • UntukCode editor, masukkan informasi konfigurasi khusus add-on apa pun. Untuk informasi selengkapnya, lihat dokumentasi untuk add-on yang Anda perbarui.

    • Untuk metode Resolusi konflik, pilih salah satu opsi. Jika Anda telah menetapkan nilai kustom untuk pengaturan add-on, kami merekomendasikan opsi Preserve. Jika Anda tidak memilih opsi ini, Amazon EKS menimpa nilai Anda dengan nilai defaultnya. Jika Anda menggunakan opsi ini, sebaiknya Anda menguji setiap bidang dan perubahan nilai pada klaster non-produksi sebelum memperbarui add-on pada cluster produksi Anda.

  6. Pilih Perbarui.

AWS CLI
Prasyarat

Versi 2.12.3 atau yang lebih baru atau versi 1.27.160 atau yang lebih baru dari AWS Command Line Interface (AWS CLI) diinstal dan dikonfigurasi pada perangkat Anda atau AWS CloudShell. Untuk memeriksa versi Anda saat ini, gunakanaws --version | cut -d / -f2 | cut -d ' ' -f1. Package manager seperti yumapt-get,, atau Homebrew untuk macOS sering beberapa versi di belakang versi terbaru AWS CLI. Untuk menginstal versi terbaru, lihat Menginstal, memperbarui, dan menghapus konfigurasi AWS CLI dan Cepat dengan aws configure di Panduan AWS Command Line Interface Pengguna. AWS CLI Versi yang diinstal AWS CloudShell mungkin juga beberapa versi di belakang versi terbaru. Untuk memperbaruinya, lihat Menginstal AWS CLI ke direktori home Anda di Panduan AWS CloudShell Pengguna.

Untuk memperbarui add-on Amazon EKS menggunakan AWS CLI
  1. Lihat daftar add-on yang diinstal. Ganti my-cluster dengan nama klaster Anda.

    aws eks list-addons --cluster-name my-cluster

    Contoh output adalah sebagai berikut.

    { "addons": [ "coredns", "kube-proxy", "vpc-cni" ] }
  2. Lihat versi add-on saat ini yang ingin Anda perbarui. Ganti my-cluster dengan nama cluster Anda dan vpc-cni dengan nama add-on yang ingin Anda perbarui.

    aws eks describe-addon --cluster-name my-cluster --addon-name vpc-cni --query "addon.addonVersion" --output text

    Contoh output adalah sebagai berikut.

    v1.10.4-eksbuild.1
  3. Anda dapat melihat versi add-on mana yang tersedia untuk versi cluster Anda. Ganti 1.29 dengan versi cluster Anda dan vpc-cni dengan nama add-on yang ingin Anda perbarui.

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

    Contoh output adalah sebagai berikut.

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

    Versi dengan True di Defaultversion kolom adalah versi yang add-on dibuat dengan, secara default.

  4. Perbarui add-on Anda. Salin perintah yang mengikuti ke perangkat Anda. Buat modifikasi berikut pada perintah, sesuai kebutuhan, dan kemudian jalankan perintah yang dimodifikasi.

    • Ganti my-cluster dengan nama klaster Anda.

    • Ganti vpc-cni dengan nama add-on yang ingin Anda perbarui yang dikembalikan dalam output dari langkah sebelumnya.

    • Ganti version-number dengan versi yang dikembalikan dalam output dari langkah sebelumnya yang ingin Anda perbarui. Beberapa add-on memiliki versi yang direkomendasikan. Untuk informasi selengkapnya, lihat dokumentasi untuk add-on yang Anda perbarui.

    • Jika add-on menggunakan akun Kubernetes layanan dan peran IAM, ganti 111122223333 dengan ID akun Anda dan role-name dengan nama peran IAM yang ada yang telah Anda buat. Untuk petunjuk tentang cara membuat peran, lihat dokumentasi untuk add-on yang Anda buat. Menentukan peran akun layanan mengharuskan Anda memiliki penyedia IAM OpenID Connect (OIDC) untuk klaster Anda. Untuk menentukan apakah Anda memiliki satu untuk cluster Anda, atau untuk membuatnya, lihatBuat OIDC penyedia IAM untuk klaster Anda.

      Jika add-on tidak menggunakan akun Kubernetes layanan dan peran IAM, hapus baris tersebut. serviceAccountRoleARN: arn:aws:iam::111122223333:role/role-name

    • Opsi --resolve-conflicts PRESERVE mempertahankan nilai yang ada untuk add-on. Jika Anda telah menetapkan nilai kustom untuk pengaturan add-on, dan Anda tidak menggunakan opsi ini, Amazon EKS menimpa nilai Anda dengan nilai defaultnya. Jika Anda menggunakan opsi ini, sebaiknya Anda menguji setiap bidang dan perubahan nilai pada klaster non-produksi sebelum memperbarui add-on pada cluster produksi Anda. Jika Anda mengubah nilai ini menjadioverwrite, semua pengaturan diubah ke nilai default Amazon EKS. Jika Anda telah menetapkan nilai kustom untuk setelan apa pun, nilai tersebut mungkin akan ditimpa dengan nilai default Amazon EKS. Jika Anda mengubah nilai ininone, Amazon EKS tidak mengubah nilai pengaturan apa pun, tetapi pembaruan mungkin gagal. Jika pembaruan gagal, Anda menerima pesan galat untuk membantu menyelesaikan konflik.

    • Jika Anda ingin menghapus semua konfigurasi kustom maka lakukan pembaruan menggunakan --configuration-values '{}'opsi. Ini menetapkan semua konfigurasi kustom kembali ke nilai default. Jika Anda tidak ingin mengubah konfigurasi kustom Anda, jangan berikan --configuration-valuestanda. Jika Anda ingin menyesuaikan konfigurasi kustom maka ganti {} dengan parameter baru. Untuk melihat daftar parameter, lihat melihat langkah skema konfigurasi di bagian buat add-on.

    aws eks update-addon --cluster-name my-cluster --addon-name vpc-cni --addon-version version-number \ --service-account-role-arn arn:aws:iam::111122223333:role/role-name --configuration-values '{}' --resolve-conflicts PRESERVE
  5. Periksa status pembaruan. Ganti my-cluster dengan nama cluster Anda dan vpc-cni dengan nama add-on yang Anda perbarui.

    aws eks describe-addon --cluster-name my-cluster --addon-name vpc-cni

    Contoh output adalah sebagai berikut.

    { "addon": { "addonName": "vpc-cni", "clusterName": "my-cluster", "status": "UPDATING", [...]

    Pembaruan selesai ketika statusnyaACTIVE.

Menghapus add-on

Saat Anda menghapus add-on Amazon EKS:

  • Tidak ada downtime untuk fungsionalitas yang disediakan add-on.

  • Jika add-on memiliki peran IAM yang terkait dengannya, peran IAM tidak akan dihapus.

  • Amazon EKS berhenti mengelola pengaturan untuk add-on.

  • Konsol berhenti memberi tahu Anda saat versi baru tersedia.

  • Anda tidak dapat memperbarui add-on menggunakan AWS alat atau API apa pun.

  • Anda dapat memilih untuk meninggalkan perangkat lunak add-on di cluster Anda sehingga Anda dapat mengelolanya sendiri, atau Anda dapat menghapus perangkat lunak add-on dari cluster Anda. Anda hanya harus menghapus perangkat lunak add-on dari cluster Anda jika tidak ada sumber daya di cluster Anda yang bergantung pada fungsionalitas yang disediakan add-on.

Anda dapat menghapus add-on Amazon EKS dari cluster Anda menggunakaneksctl, file AWS Management Console, atau file. AWS CLI

eksctl
Prasyarat

Versi 0.175.0 atau yang lebih baru dari alat baris eksctl perintah yang diinstal pada perangkat Anda atau AWS CloudShell. Untuk menginstal atau memperbaruieksctl, lihat Instalasi dalam eksctl dokumentasi.

Untuk menghapus add-on Amazon EKS menggunakan eksctl
  1. Tentukan add-on saat ini yang diinstal pada cluster Anda. Ganti my-cluster dengan nama klaster Anda.

    eksctl get addon --cluster my-cluster

    Contoh output adalah sebagai berikut.

    NAME VERSION STATUS ISSUES IAMROLE UPDATE AVAILABLE coredns v1.8.7-eksbuild.2 ACTIVE 0 kube-proxy v1.23.7-eksbuild.1 ACTIVE 0 vpc-cni v1.10.4-eksbuild.1 ACTIVE 0 [...]

    Output Anda mungkin terlihat berbeda, tergantung pada add-on dan versi yang Anda miliki di cluster Anda.

  2. Hapus add-on. Ganti my-clusterdengan nama cluster Anda dan name-of-add-on dengan nama add-on dikembalikan dalam output dari langkah sebelumnya yang ingin Anda hapus. Jika Anda menghapus --preserve opsi, selain Amazon EKS tidak lagi mengelola add-on, perangkat lunak add-on dihapus dari cluster Anda.

    eksctl delete addon --cluster my-cluster --name name-of-addon --preserve
AWS Management Console
Untuk menghapus add-on Amazon EKS menggunakan AWS Management Console
  1. Buka konsol Amazon EKS di https://console.aws.amazon.com/eks/home#/clusters.

  2. Di panel navigasi kiri, pilih Clusters, lalu pilih nama cluster yang ingin Anda hapus add-on Amazon EKS.

  3. Pilih tab Add-ons.

  4. Pilih kotak centang di kanan atas kotak add-on dan kemudian pilih Hapus. Pilih Pertahankan di klaster jika Anda ingin Amazon EKS berhenti mengelola pengaturan untuk add-on, tetapi ingin mempertahankan perangkat lunak add-on di klaster Anda sehingga Anda dapat mengelola sendiri semua pengaturan untuk add-on tersebut. Ketik nama add-on dan kemudian pilih Hapus.

AWS CLI
Prasyarat

Versi 0.175.0 atau yang lebih baru dari alat baris eksctl perintah yang diinstal pada perangkat Anda atau AWS CloudShell. Untuk menginstal atau memperbaruieksctl, lihat Instalasi dalam eksctl dokumentasi.

Untuk menghapus add-on Amazon EKS menggunakan AWS CLI
  1. Lihat daftar add-on yang diinstal. Ganti my-cluster dengan nama klaster Anda.

    aws eks list-addons --cluster-name my-cluster

    Contoh output adalah sebagai berikut.

    { "addons": [ "coredns", "kube-proxy", "vpc-cni", "name-of-addon" ] }
  2. Hapus add-on yang diinstal. Ganti my-cluster dengan nama cluster Anda dan name-of-add-on dengan nama add-on yang ingin Anda hapus. --preserveMenghapus menghapus perangkat lunak add-on dari cluster Anda.

    aws eks delete-addon --cluster-name my-cluster --addon-name name-of-addon --preserve

    Output contoh yang disingkat adalah sebagai berikut.

    { "addon": { "addonName": "name-of-add-on", "clusterName": "my-cluster", "status": "DELETING", [...]
  3. Periksa status penghapusan. Ganti my-cluster dengan nama cluster Anda dan name-of-addon dengan nama add-on yang Anda hapus.

    aws eks describe-addon --cluster-name my-cluster --addon-name name-of-addon

    Setelah add-on dihapus, contoh output adalah sebagai berikut.

    An error occurred (ResourceNotFoundException) when calling the DescribeAddon operation: No addon: name-of-addon found in cluster: my-cluster

Ambil kompatibilitas versi addon

Gunakan describe-addon-verisionsAPI untuk membuat daftar versi addon EKS yang tersedia, dan versi Kubernetes mana yang didukung oleh setiap versi addon.

Ambil kompatibilitas versi addon ()AWS CLI
  1. Verifikasi AWS CLI yang diinstal dan bekerja denganaws sts get-caller-identity. Jika perintah ini tidak berfungsi, pelajari cara Memulai dengan AWS CLI.

  2. Tentukan nama addon yang ingin Anda ambil informasi kompatibilitas versi, seperti. amazon-cloudwatch-observability

  3. Tentukan versi Kubernetes dari klaster Anda, seperti. 1.28

  4. Gunakan AWS CLI untuk mengambil versi addon yang kompatibel dengan versi Kubernetes dari klaster Anda.

    aws eks describe-addon-versions --addon-name amazon-cloudwatch-observability --kubernetes-version 1.29

    Contoh output adalah sebagai berikut.

    { "addons": [ { "addonName": "amazon-cloudwatch-observability", "type": "observability", "addonVersions": [ { "addonVersion": "v1.5.0-eksbuild.1", "architecture": [ "amd64", "arm64" ], "compatibilities": [ { "clusterVersion": "1.28", "platformVersions": [ "*" ], "defaultVersion": true } ], [...]

    Output ini menunjukkan bahwa versi addon v1.5.0-eksbuild.1 kompatibel dengan versi cluster Kubernetes. 1.28