View a markdown version of this page

Tingkatkan dari Amazon Linux 2 ke Amazon Linux 2023 - Amazon EKS

Bantu meningkatkan halaman ini

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

Untuk berkontribusi pada panduan pengguna ini, pilih GitHub tautan Edit halaman ini di yang terletak di panel kanan setiap halaman.

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

Tingkatkan dari Amazon Linux 2 ke Amazon Linux 2023

Awas

Amazon EKS berhenti menerbitkan AMI EKS-optimized Amazon Linux 2 (AL2) pada 26 November 2025. AMI berbasis AL2023 dan Bottlerocket untuk Amazon EKS tersedia untuk semua versi Kubernetes yang didukung termasuk 1.33 dan lebih tinggi.

AL2023 adalah sistem Linux-based operasi yang dirancang untuk menyediakan lingkungan yang aman, stabil, dan berkinerja tinggi untuk aplikasi cloud Anda. Ini adalah generasi berikutnya dari Amazon Linux dari Amazon Web Services dan tersedia di semua versi Amazon EKS yang didukung.

AL2023 menawarkan beberapa peningkatan dibandingkan AL2. Untuk perbandingan lengkap, lihat Membandingkan AL2 dan Amazon Linux 2023 di Panduan Pengguna Amazon Linux 2023. Beberapa paket telah ditambahkan, ditingkatkan, dan dihapus dari AL2. Sangat disarankan untuk menguji aplikasi Anda dengan AL2023 sebelum memutakhirkan. Untuk daftar semua perubahan paket di AL2023, lihat Perubahan paket di Amazon Linux 2023 di Catatan R ilis Amazon Linux 2023.

Selain perubahan ini, Anda harus mengetahui hal-hal berikut:

  • AL2023 memperkenalkan proses inisialisasi node baru nodeadm yang menggunakan skema konfigurasi YAML. Jika Anda menggunakan grup node yang dikelola sendiri atau template peluncuran yang menentukan ID AMI khusus, Anda sekarang perlu memberikan metadata cluster tambahan secara eksplisit. Anda harus menyediakan metadata ini saat membuat grup node baru. Contoh parameter minimum yang diperlukan nodeadm adalah sebagai berikut, di manaapiServerEndpoint,certificateAuthority, dan layanan sekarang cidr diperlukan:

    --- apiVersion: node.eks.aws/v1alpha1 kind: NodeConfig spec: cluster: name: my-cluster apiServerEndpoint: https://example.com certificateAuthority: Y2VydGlmaWNhdGVBdXRob3JpdHk= cidr: 10.100.0.0/16

    Di AL2, metadata dari parameter ini ditemukan dari panggilan DescribeCluster API Amazon EKS. Dengan AL2023, perilaku ini telah berubah sejak panggilan API tambahan berisiko pelambatan selama peningkatan skala node besar. Perubahan ini tidak memengaruhi Anda jika Anda menggunakan grup node terkelola tanpa template peluncuran atau jika Anda menggunakan Karpenter. Untuk informasi selengkapnya tentang certificateAuthority dan layanancidr, lihat DescribeCluster di Referensi API Amazon EKS.

  • Untuk AL2023, nodeadm juga mengubah format untuk menerapkan parameter ke kubelet untuk setiap node menggunakan NodeConfigSpec. Di AL2, ini dilakukan dengan --kubelet-extra-args parameter. Ini biasanya digunakan untuk menambahkan label dan noda ke node. Contoh di bawah ini menunjukkan pener maxPods apan dan --node-labels ke node.

    --- apiVersion: node.eks.aws/v1alpha1 kind: NodeConfig spec: cluster: name: test-cluster apiServerEndpoint: https://example.com certificateAuthority: Y2VydGlmaWNhdGVBdXRob3JpdHk= cidr: 10.100.0.0/16 kubelet: config: maxPods: 110 flags: - --node-labels=karpenter.sh/capacity-type=on-demand,karpenter.sh/nodepool=test
  • Versi Amazon VPC CNI 1.16.2 atau lebih tinggi diperlukan untuk AL2023.

  • AL2023 membutuhkan secara IMDSv2 default. IMDSv2memiliki beberapa manfaat yang membantu meningkatkan postur keamanan. Ini menggunakan metode otentikasi berorientasi sesi yang memerlukan pembuatan token rahasia dalam permintaan PUT HTTP sederhana untuk memulai sesi. Token sesi dapat berlaku antara 1 detik dan 6 jam. Untuk informasi selengkapnya tentang cara beralih dari IMDSv1 keIMDSv2, lihat Trans isi ke menggunakan Layanan Metadata Instans Versi 2 dan Dapatkan manfaat penuh dari IMDSv2 dan menonaktifkan IMDSv1 di seluruh infrastruktur Anda. AWS Jika Anda ingin menggunakanIMDSv1, Anda masih dapat melakukannya dengan mengganti pengaturan secara manual menggunakan properti peluncuran opsi metadata instance.

    catatan

    Untuk IMDSv2 AL2023, jumlah hop default untuk grup node terkelola dapat bervariasi:

    • Saat tidak menggunakan template peluncuran, defaultnya diatur ke1. Ini berarti bahwa kontainer tidak akan memiliki akses ke kredenSIAL node menggunakan IMDS. Jika Anda memerlukan akses kontainer ke kredenSIAL node, Anda masih dapat melakukannya dengan menggunakan template peluncuran Amazon EC2 khusus.

    • Saat menggunakan AMI khusus dalam template peluncuran, default HttpPutResponseHopLimit nya diatur ke2. Anda dapat mengganti template peluncuran HttpPutResponseHopLimit secara manual.

    Atau, Anda dapat menggunakan Amazon EKS Pod Identity untuk memberikan kredenSIAL, bukanIMDSv2.

  • AL2023 menampilkan generasi berikutnya dari hierarki grup kontrol terpadu (cgroupv2). cgroupv2digunakan untuk mengimplementasikan runtime container, dan olehsystemd. Meskipun AL2023 masih menyertakan kode yang dapat membuat sistem berjalan menggunakancgroupv1, ini bukan konfigurasi yang direkomendasikan atau didukung. Konfigurasi ini akan dihapus sepenuhnya dalam rilis besar Amazon Linux di masa mendatang.

  • eksctlversi 0.176.0 atau lebih tinggi diperlukan eksctl untuk mendukung AL2023.

Untuk grup node terkelola yang ada sebelumnya, Anda dapat melakukan peningkatan di tempat atau blue/green peningkatan tergantung pada cara Anda menggunakan template peluncuran:

  • Jika Anda menggunakan AMI kustom dengan grup node terkelola, Anda dapat melakukan peningkatan di tempat dengan menukar ID AMI di template peluncuran. Anda harus memastikan bahwa aplikasi Anda dan data pengguna apa pun ditransfer ke AL2023 terlebih dahulu sebelum melakukan strategi peningkatan ini.

  • Jika Anda menggunakan grup node terkelola dengan template peluncuran standar atau dengan templat peluncuran khusus yang tidak menentukan ID AMI, Anda harus meningkatkan menggunakan blue/green strategi. blue/green Upgrade biasanya lebih kompleks dan melibatkan pembuatan grup node yang sama sekali baru di mana Anda akan menentukan AL2023 sebagai tipe AMI. Grup node baru kemudian perlu dikonfigurasi dengan hati-hati untuk memastikan bahwa semua data kustom dari grup node AL2 kompatibel dengan OS baru. Setelah grup node baru telah diuji dan divalidasi dengan aplikasi Anda, Pod dapat dimigrasikan dari grup node lama ke grup node baru. Setelah migrasi selesai, Anda dapat menghapus grup node lama.

Jika Anda menggunakan Karpenter dan ingin menggunakan AL2023, Anda harus memodifikasi EC2NodeClass amiFamily bidang dengan AL2023. Secara default, Drift diaktifkan di Karpenter. Ini berarti bahwa setelah amiFamily bidang telah diubah, Karpenter akan secara otomatis memperbarui node pekerja Anda ke AMI terbaru jika tersedia.

Informasi Tambahan Tentang nodeadm

Saat menggunakan AMI EKS-optimized Amazon Linux 2023 atau membuat AMI EKS Amazon Linux 2023 Kustom melalui skrip Packer yang disediakan di GitHub repositori resmi amazon-eks-ami, Anda harus menghindari menjalankan nodeadm init secara eksplisit dalam Data Pengguna EC2 atau sebagai bagian dari AMI khusus Anda.

Jika Anda ingin menghasilkan dinamis NodeConfig dalam data pengguna Anda, Anda dapat menulis konfigurasi itu ke file yaml atau json drop-in di. /etc/eks/nodeadm.d File konfigurasi ini akan digabungkan dan diterapkan ke node Anda ketika nodeadm init secara otomatis dimulai nanti dalam proses boot. Contoh:

cat > /etc/eks/nodeadm.d/additional-node-labels.yaml << EOF apiVersion: node.eks.aws/v1alpha1 kind: NodeConfig spec: kubelet: flags: - --node-labels=foo=bar EOF

AMI EKS-optimized Amazon Linux 2023 secara otomatis mengeksekusi nodeadm init dalam dua fase melalui layanan systemd terpisah: nodeadm-config berjalan sebelum eksekusi data pengguna, sementara nodeadm-run dieksekusi sesudahnya. Layanan nodeadm-config menetapkan konfigurasi dasar untuk containerd dan kubelet sebelum data pengguna dijalankan. Layanan nodeadm-run menjalankan daemon sistem tertentu dan menyelesaikan konfigurasi akhir setelah eksekusi data pengguna. Jika perintah nodeadm init dijalankan waktu tambahan, melalui data pengguna atau AMI khusus, itu dapat merusak asumsi tentang urutan eksekusi, yang mengarah ke hasil yang tidak terduga termasuk ENI yang salah dikonfigurasi.