All Products
Search
Document Center

Container Service for Kubernetes:pengenalan proses inisialisasi node kluster ack

Last Updated:Mar 07, 2026

ACK menyediakan manajemen node yang stabil, efisien, dan dapat diprediksi. Saat Anda membuat node baru atau melakukan penskalaan keluar pada kelompok node yang ada, ACK mengikuti proses inisialisasi standar yang menyelesaikan instalasi dan konfigurasi perangkat lunak berdasarkan pengaturan kelompok node, lalu menggabungkan node tersebut ke dalam kluster Kubernetes.

Lingkup

Topik ini berlaku untuk kelompok node ECS dan kelompok node EGS di Kluster ACK yang dikelola dan Cluster khusus ACK yang menjalankan versi kluster 1.20 ke atas.

Ikhtisar Proses

image

Langkah Satu: Buat Node

Saat menerima permintaan untuk melakukan penskalaan keluar kelompok node atau menambahkan node secara otomatis, ACK membuat instans Elastic Compute Service (ECS) atau EGS berdasarkan konfigurasi kelompok node, seperti tipe instans, gambar, dan disk. Sistem operasi kemudian menyelesaikan tugas inisialisasi dasar, seperti mengonfigurasi jaringan dan memasang sistem disk.

Selanjutnya, tool Cloud-init mengeksekusi skrip User Data. Skrip ini terdiri dari skrip Pre-defined Custom Data, skrip inisialisasi ACK, dan skrip User Data.

Langkah Dua: Eksekusi Skrip Pra-Kustomisasi

Cloud-init pertama-tama mengeksekusi skrip Pre-defined Custom Data. Skrip ini biasanya digunakan untuk menginstal paket dependensi sistem tertentu atau agen pemantauan, serta melakukan pemeriksaan dan konfigurasi lingkungan awal.

Langkah Tiga: Eksekusi Skrip Inisialisasi ACK

Tahap ini mencakup beberapa sub-langkah dan menyediakan mekanisme skip fleksibel untuk memenuhi kebutuhan berbagai skenario.

3.1 Siapkan Lingkungan Dasar

Tahap ini mengonfigurasi lingkungan dasar yang diperlukan agar Kubernetes dapat berjalan di node tersebut.

Alur Eksekusi

  • Jalankan layanan chronyd: Memastikan jam node disinkronkan dengan server NTP.

  • Atur Node ID dan hostname:

    • Node ID: Menghitung dan menetapkan ID node dalam kluster Kubernetes.

    • Hostname: Jika kelompok node dikonfigurasi dengan Custom Node Name, nama tersebut juga ditetapkan sebagai hostname node.

  • Inisialisasi data disk: Jika kelompok node dikonfigurasi dengan data disk, sistem secara default mencari data disk terakhir dalam urutan leksikografis (memprioritaskan NVMe), memformatnya, lalu memasangnya. Disk ini menyimpan lingkungan runtime kontainer, seperti direktori kerja containerd /var/lib/containerd.

Mekanisme Skip

  • Untuk mengelola partisi dan sistem file data disk secara manual, atau menggunakan data disk yang sudah ada dan berisi data, Anda dapat membuat file /var/.skip-auto-fdisk dalam data pra-kustomisasi guna melewati pemformatan otomatis.

  • Jika Anda tidak melewati pemformatan otomatis tetapi ingin menyimpan dan memigrasikan data dari direktori runtime asli, seperti cache gambar, Anda dapat membuat file /var/.keep-container-data. Setelah data disk dipasang, sistem menyalin data lama ke direktori baru. Hal ini menghindari pengambilan gambar berulang.

3.2 Instal Komponen Kubernetes

Tahap ini menginstal komponen inti yang diperlukan untuk menjalankan Kubernetes.

3.3 Instal Komponen Sesuai Kebutuhan

ACK menginstal komponen berdasarkan konfigurasi kelompok node.

  • Instal driver perangkat keras heterogen dan device-plugin: Jika node merupakan instans komputasi heterogen, seperti instans GPU atau NPU, sistem secara otomatis menginstal driver yang sesuai dan plugin perangkat Kubernetes, seperti NVIDIA Device Plugin. Hal ini memungkinkan kluster mengenali dan menjadwalkan sumber daya tersebut.

  • Instal perangkat lunak akselerasi gambar: Jika fitur seperti menggunakan pemuatan gambar kontainer on-demand untuk mempercepat startup kontainer diaktifkan, sistem menginstal perangkat lunak akselerasi terkait dan memodifikasi konfigurasi container runtime guna meningkatkan kecepatan startup kontainer.

  • Instal perangkat lunak terkait SGX: Jika komputasi rahasia ACK-TEE diaktifkan, sistem menginstal driver SGX dan dependensi terkait. Hal ini menyediakan lingkungan eksekusi tepercaya untuk menjalankan kontainer rahasia.

3.4 Gabung ke Kluster

Setelah komponen inti diinstal, kubelet dijalankan dan mendaftar ke API server kluster. Setelah pendaftaran selesai, node resmi bergabung ke kluster, dan status awalnya ditandai sebagai NotReady.

3.5 Instal Perangkat Lunak Dasar Tambahan

Untuk memastikan stabilitas dan keamanan node, ACK secara default menginstal paket perangkat lunak dasar tambahan dan melakukan pembaruan keamanan.

Alur Eksekusi

  • Instal paket tool dasar: Menginstal tool umum seperti pigz, container-selinux, dan zlib untuk mendukung fitur lanjutan penyimpanan dan jaringan.

  • Pembaruan keamanan (hanya untuk Alibaba Cloud Linux):

    • Upgrade systemd jika diperlukan: Untuk memastikan stabilitas dan fungsionalitas, versi systemd mungkin ditingkatkan.

    • Terapkan perbaikan kerentanan keamanan minimal: Secara otomatis menerapkan perbaikan kerentanan keamanan CVE dengan menjalankan perintah yum update-minimal --exclude kernel* --security -y.

Mekanisme Skip

  • Anda dapat membuat file /var/.skip-yum untuk sepenuhnya melewati langkah ini, termasuk perbaikan CVE. Ini cocok untuk lingkungan offline atau skenario yang memerlukan kontrol versi ketat.

  • Anda dapat membuat file /var/.skip-security-fix untuk melewati hanya perbaikan kerentanan CVE, tetapi tetap menginstal paket tool dasar.

3.6 Terapkan Konfigurasi OS Kelompok Node

Setelah semua perangkat lunak diinstal dan diperbarui, sistem menerapkan ulang konfigurasi OS kelompok node untuk memastikan bahwa semua pengaturan tetap berlaku di lingkungan akhir. Untuk informasi selengkapnya, lihat Kelola Parameter OS Kelompok Node.

3.7 Lakukan Penguatan Keamanan Sesuai Kebutuhan

Berdasarkan kemampuan Security Hardening yang dikonfigurasi pada kelompok node, seperti Penguatan OS Alibaba Cloud dan , sistem mengeksekusi skrip penguatan keamanan yang sesuai. Skrip ini, misalnya, memperkuat parameter kernel dan menyesuaikan izin sistem untuk memenuhi spesifikasi keamanan perusahaan.

Langkah Empat: Eksekusi Skrip Kustom

Selanjutnya, sistem mengeksekusi skrip User Data. Skrip ini biasanya melakukan operasi inisialisasi tingkat aplikasi, seperti menginisialisasi katalog data aplikasi atau menjalankan layanan pembantu non-kontainer.

Alur Eksekusi Paralel

Perubahan Status (NotReady menjadi Ready)

Setelah node bergabung ke kluster dan berada dalam status NotReady, kubelet node terus-menerus berkomunikasi dengan lapisan kontrol. Ketika komponen kritis di node siap dan node lulus semua pemeriksaan kesehatan, statusnya secara otomatis berubah menjadi Ready. Penjadwal Kubernetes kemudian menganggap node tersebut sebagai resource yang tersedia, dan node mulai menerima serta menjalankan Pod.

Deskripsi Mekanisme Paralel

Perubahan status node dan eksekusi skrip User Data merupakan tugas paralel.

  • Tidak ada pemblokiran: Eksekusi skrip User Data dan proses node menjadi Ready bersifat independen. Hasil eksekusi skrip—baik sukses, gagal, maupun durasinya—tidak menghalangi transisi node ke status Ready.

  • Waktu eksekusi: Kedua tugas dijalankan secara paralel. Jangan mengasumsikan bahwa Pod aplikasi sedang berjalan di node saat skrip User Data selesai, atau sebaliknya.

  • Pelacakan log: Untuk memastikan status eksekusi skrip kustom, Anda dapat login ke node dan melihat log eksekusi serta status akhir dengan menjalankan perintah cat /var/log/cloud-init-output.log.