Halaman ini menunjukkan cara menyesuaikan konfigurasi runtime container dalam container di node Google Kubernetes Engine (GKE). Anda tentu sudah memahami apa itu runtime container dan alasan untuk menyesuaikannya.
Tentang konfigurasi dalam container di GKE
Anda dapat mengonfigurasi serangkaian opsi secara manual dalam runtime dalam container pada node GKE yang menjalankan sistem operasi seperti Container-Optimized OS. Dengan menyesuaikan runtime, Anda dapat mengonfigurasi persyaratan khusus seperti akses ke registry gambar pribadi. Untuk menetapkan opsi ini, Anda harus membuat file YAML yang disebut file konfigurasi runtime dan meneruskan file tersebut ke GKE saat membuat atau mengupdate cluster.
Metode penyesuaian container ini memungkinkan Anda menghindari deployment DaemonSet
dengan hak istimewa, yang merupakan risiko keamanan. Jika Anda memberi GKE file konfigurasi runtime, GKE akan membuat ulang node Anda dan memperbarui file config.toml
dalam container pada setiap node dengan konfigurasi Anda.
Konfigurasi tetap ada selama penghentian, upgrade, dan pembuatan ulang node.
File konfigurasi runtime hanya memungkinkan Anda mengonfigurasi opsi dalam container. GKE juga mendukung konfigurasi opsi kubelet tertentu dan opsi kernel Linux level 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 dalam container pada image node Ubuntu. Hanya Container-Optimized OS dengan containerd yang didukung. Ini adalah image node default untuk semua cluster GKE.
Opsi konfigurasi dalam container yang tersedia
Tabel berikut menjelaskan opsi yang dapat Anda konfigurasi menggunakan file konfigurasi runtime:
Opsi file konfigurasi runtime | |
---|---|
|
Akses registry gambar 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 dalam container ke cluster baru
Bagian ini menunjukkan cara menerapkan file konfigurasi dalam container 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 pada cluster Standar baru dengan menjalankan perintah gcloud container clusters create
dengan opsi yang sama.
Menerapkan konfigurasi dalam container ke cluster yang ada
Bagian ini menunjukkan cara menerapkan konfigurasi dalam container ke cluster dan node yang ada.
Memeriksa cakupan akses
Cluster yang ada harus memiliki cakupan akses cloud-platform
agar dapat 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 dalam cluster baru, lihat Mengakses cakupan di GKE.
Periksa 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 Standar, periksa kumpulan node:
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 kumpulan node baru dengan cakupan akses cloud-platform
, lalu hapus kumpulan node yang ada.
Update 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 Standar
Jika cluster Standar tidak menggunakan upgrade otomatis, Anda harus membuat ulang kumpulan node secara manual untuk menerapkan konfigurasi baru. Untuk memicu pembuatan ulang node manual, upgrade cluster Anda 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 versi
yang sudah digunakan cluster.
Menonaktifkan opsi konfigurasi dalam container
Untuk menghapus konfigurasi kustom, lakukan langkah berikut:
-
Update file konfigurasi Anda untuk menentukan
enabled: false
di item konfigurasi yang ingin Anda nonaktifkan dan hapus kolom lain dalam item tersebut, seperti dalam contoh berikut:privateRegistryAccessConfig: enabled: false
- Terapkan file konfigurasi terbaru ke cluster Anda. Untuk mendapatkan petunjuk, lihat Menerapkan konfigurasi dalam container ke cluster yang ada.