Halaman ini menunjukkan cara menyesuaikan konfigurasi runtime penampung containerd di node Google Kubernetes Engine (GKE). Sebelum membaca dokumen ini, pastikan Anda memahami runtime penampung dan alasan Anda ingin menyesuaikannya.
Tentang konfigurasi containerd di GKE
Anda dapat mengonfigurasi serangkaian opsi secara manual di runtime containerd pada node GKE yang menjalankan sistem operasi seperti Container-Optimized OS. Dengan menyesuaikan runtime, Anda dapat mengonfigurasi persyaratan khusus seperti akses ke registry image pribadi. Untuk menetapkan opsi ini, Anda membuat file YAML yang disebut file konfigurasi runtime dan meneruskan file tersebut ke GKE saat membuat atau mengupdate cluster.
Metode penyesuaian containerd ini memungkinkan Anda menghindari deployment DaemonSet
dengan hak istimewa, yang merupakan risiko keamanan. Saat Anda memberikan file konfigurasi runtime ke GKE, GKE akan membuat ulang node dan mengupdate file config.toml
containerd di setiap node dengan konfigurasi Anda.
Konfigurasi tetap ada melalui penghentian, upgrade, dan pembuatan ulang node.
File konfigurasi runtime hanya memungkinkan Anda mengonfigurasi opsi di containerd. GKE juga mendukung konfigurasi opsi kubelet tertentu dan opsi kernel Linux tingkat rendah menggunakan file terpisah yang disebut file konfigurasi sistem node. Untuk mengetahui detail selengkapnya, lihat Menyesuaikan konfigurasi sistem node.
Batasan
Anda tidak dapat menggunakan file konfigurasi runtime untuk mengubah setelan containerd di image node Ubuntu. Hanya Container-Optimized OS dengan containerd yang didukung. Ini adalah image node default untuk semua cluster GKE.
Opsi konfigurasi containerd yang tersedia
Tabel berikut menjelaskan opsi yang dapat Anda konfigurasi menggunakan file konfigurasi runtime:
Opsi file konfigurasi runtime | |
---|---|
|
Mengakses registry image pribadi dengan kredensial pribadi yang Anda simpan di Secret Manager. Untuk mengetahui petunjuknya, lihat Mengakses registry pribadi dengan sertifikat CA pribadi. privateRegistryAccessConfig: enabled: true certificateAuthorityDomainConfig: - gcpSecretManagerCertificateConfig: secretURI: " Konfigurasi ini memiliki kolom berikut:
|
Menerapkan konfigurasi containerd ke cluster baru
Bagian ini menunjukkan cara menerapkan file konfigurasi containerd saat Anda membuat cluster GKE baru.
Jalankan perintah berikut:
gcloud container clusters create-autoCLUSTER_NAME
\ --location=LOCATION
\ --scopes="cloud-platform" \ --containerd-config-from-file="PATH_TO_CONFIG_FILE
"
Ganti kode berikut:
CLUSTER_NAME
: nama cluster baru.LOCATION
: lokasi Compute Engine cluster baru Anda.PATH_TO_CONFIG_FILE
: jalur ke file konfigurasi yang Anda buat, seperti~/containerd-configuration.yaml
.
Anda dapat mengaktifkan konfigurasi registry pribadi di cluster Standar baru dengan menjalankan perintah gcloud container clusters create
dengan opsi yang sama.
Menerapkan konfigurasi containerd ke cluster yang ada
Bagian ini menunjukkan cara menerapkan konfigurasi containerd ke cluster dan node yang ada.
Memeriksa cakupan akses
Cluster yang ada harus memiliki cakupan akses cloud-platform
untuk menggunakan
fitur ini. Bagian ini menunjukkan cara memeriksa cakupan akses dan mengupdate cluster yang ada dengan file konfigurasi registry pribadi baru atau yang dimodifikasi.
Untuk mengetahui detail tentang cakupan akses default di cluster baru, lihat Cakupan akses di GKE.
Memeriksa cakupan akses Autopilot
Jalankan perintah berikut:
gcloud container clusters describeCLUSTER_NAME
\ --location=LOCATION
\ --flatten=nodeConfig \ --format='csv[delimiter="\\n",no-heading](oauthScopes)'
Jika cluster Anda tidak memiliki cakupan akses https://www.googleapis.com/auth/cloud-platform
, buat cluster baru dengan cakupan akses ini.
Memeriksa Cakupan akses standar
Untuk memeriksa cakupan akses cluster Standard, periksa node pool:
gcloud container node-pools describeNODE_POOL_NAME
\ --cluster=CLUSTER_NAME
\ --location=LOCATION
\ --flatten=nodeConfig \ --format='csv[delimiter="\\n",no-heading](oauthScopes)'
Ganti NODE_POOL_NAME
dengan nama node pool.
Jika cluster Anda tidak memiliki cakupan akses https://www.googleapis.com/auth/cloud-platform
, buat node pool baru dengan cakupan akses cloud-platform
dan hapus node pool yang ada.
Mengupdate cluster untuk menggunakan file konfigurasi Anda
Jalankan perintah berikut:
gcloud container clusters updateCLUSTER_NAME
\ --location=LOCATION
\ --containerd-config-from-file="PATH_TO_CONFIG_FILE
"
Membuat ulang node di cluster Standard
Jika cluster Standard tidak menggunakan upgrade otomatis, Anda harus membuat ulang node pool secara manual untuk menerapkan konfigurasi baru. Untuk memicu pembuatan ulang node secara manual, upgrade cluster ke versi GKE yang sama dengan yang sudah digunakan.
gcloud container clusters upgradeCLUSTER_NAME
\ --location=LOCATION
\ --cluster-version=VERSION
Ganti VERSION
dengan versi patch GKE yang sama dengan yang sudah digunakan cluster.
Menonaktifkan opsi konfigurasi containerd
Untuk menghapus konfigurasi kustom, lakukan hal berikut:
-
Perbarui file konfigurasi untuk menentukan
enabled: false
dalam item konfigurasi yang ingin Anda nonaktifkan dan hapus kolom lain dalam item, seperti dalam contoh berikut:privateRegistryAccessConfig: enabled: false
- Terapkan file konfigurasi yang telah diupdate ke cluster Anda. Untuk mengetahui petunjuknya, lihat Menerapkan konfigurasi containerd ke cluster yang ada.