Runtime baru yang ditingkatkan
Pengelola layanan Linux asli untuk Migrate to Containers mengandalkan
sysv init
dan systemd
. Pengelola layanan Linux yang disederhanakan akan menggantinya dengan alternatif yang lebih mudah digunakan dengan container.
Pengelola layanan Linux yang disederhanakan ini menambahkan fungsi yang memungkinkan Anda men-deploy beban kerja container yang dimigrasikan ke:
Cluster Autopilot GKE
Cloud Run
Pengelola layanan Linux yang disederhanakan juga dapat menyelesaikan masalah kompatibilitas dengan plugin Kubernetes.
Misalnya, pengelola layanan Linux yang disederhanakan akan menghapus persyaratan untuk menentukan hostpath
untuk /sys/fs/cgroup
dalam file deployment_spec.yaml
dan kebutuhan untuk membuat
container dengan hak istimewa.
Sebelum memulai
- Migrate to Containers menyediakan alat yang Anda jalankan pada beban kerja VM untuk menentukan kesesuaian beban kerja untuk dimigrasikan ke container. Untuk mengetahui informasi selengkapnya, lihat Menggunakan alat penilaian kesesuaian.
Tentang cluster GKE Autopilot
Autopilot adalah mode operasi di Google Kubernetes Engine (GKE). Autopilot dirancang untuk mengurangi biaya operasional pengelolaan cluster, mengoptimalkan cluster untuk produksi, dan menghasilkan ketersediaan workload yang lebih tinggi. Dalam mode Autopilot, GKE menyediakan dan mengelola infrastruktur dasar cluster, termasuk node dan kumpulan node, sehingga Anda mendapatkan cluster yang dioptimalkan dengan pengalaman otomatis.
Lihat ringkasan Autopilot untuk mengetahui detail selengkapnya.
Tentang Cloud Run
Cloud Run adalah platform komputasi terkelola yang memungkinkan Anda untuk menjalankan container stateless yang dapat dipanggil oleh permintaan web atau peristiwa Pub/Sub. Dengan pengelola layanan Linux yang disederhanakan, Anda dapat men-deploy beban kerja container yang dimigrasikan di Cloud Run.
Menggunakan identitas workload dengan Migrate to Containers dan GKE
Dengan Migrate to Containers dan GKE, Anda dapat men-deploy workload yang dimigrasikan ke Google Distributed Cloud Virtual for Bare Metal. Terkadang, Anda mungkin menggunakan cluster yang sama dengan cluster pemrosesan dan cluster deployment. Jika Anda telah mengaktifkan Workload Identity pada cluster deployment, pastikan Anda mengonfigurasi lingkungan deployment untuk mendukung Migrate to Containers dan GKE.
Selain itu, Anda harus memastikan bahwa setiap layanan yang dimulai sebagai bagian dari proses init telah dikonfigurasi dengan benar untuk workload identity. Langkah yang harus dilakukan bergantung pada pengelola layanan untuk cluster Anda. Lihat Men-deploy beban kerja Linux ke cluster target untuk mengetahui langkah-langkah konfigurasi.
Perubahan dari runtime yang ada
Untuk menggunakan pengelola layanan Linux yang disederhanakan, Anda harus mengetahui perubahan dan batasan berikut dari runtime yang ada.
File artefak services-config.yaml baru ditambahkan
Jika Anda mengaktifkan pengelola layanan Linux yang disederhanakan, Migrate to Containers akan membuat file artefak baru,
services-config.yaml
, saat Anda membuat artefak migrasi. Gunakan file ini untuk mengontrol inisialisasi aplikasi pada penampung yang di-deploy. Lihat Menggunakan services-config.yaml untuk mengetahui informasi selengkapnya.
Pemeriksaan kesiapan
Saat menggunakan runtime saat ini, Migrate to Containers menambahkan pemeriksaan kesiapan di
file deployment_spec.yaml
. Saat Anda mengaktifkan pengelola layanan Linux yang disederhanakan,
tidak ada pemeriksaan kesiapan yang akan ditambahkan.
Jika ingin menambahkan pemeriksaan kesiapan, sebaiknya gunakan pemeriksaan kesiapan HTTP. Lihat Menentukan pemeriksaan kesiapan untuk mengetahui informasi selengkapnya.
readinessProbe:
exec:
command:
- /.m4a/gamma status
Namun, pemeriksaan ini mungkin menampilkan hasil negatif palsu.
dukungan syslog
Pengelola layanan Linux yang disederhanakan membuat soket Unix di /dev/log
untuk mendukung syslog.
Pengelola layanan Linux yang disederhanakan meneruskan pesan log ini ke stdout
sehingga
pesan tersebut dicatat oleh Kubernetes sebagai log container.
Batasan
Anda perlu memahami batasan berikut saat menggunakan pengelola layanan Linux yang disederhanakan.
Batasan beban kerja
Pengelola layanan Linux yang disederhanakan berfungsi optimal dengan jenis beban kerja berikut:
Gambar | Sistem operasi | Service |
---|---|---|
Compute Engine Ubuntu 12.04 | Ubuntu 12.04 | apache2 |
Compute Engine Ubuntu 14.04 | Ubuntu 14.04 | redis, mysql, apache2 |
Compute Engine Ubuntu 18.04 | Ubuntu 18.04 | apache2, mysql, redis-server, tomcat |
RHEL SAP 7.4 | Red Hat | httpd |
Bitnami | Ubuntu | bitnami |
Gambar Memcache Compute Engine | Debian 10.9 | bitnami |
WordPress Marketplace Compute Engine | Debian 9.13 | apache2, mysql, php |
Tomcat Marketplace Compute Engine | Debian 9.13 | tomcat8 |
Jenkin Marketplace Compute Engine | Debian 10.9 | apache2, jenkins |
Moodle Compute Engine Marketplace | Debian 9.13 | apache2, mysql, php7.4 fpm, phpsessionclean |
Odoo Marketplace Compute Engine | Debian 9.13 | odoo, nginx |
Opencart Marketplace Compute Engine | Debian 9.13 | apache2, mysql, php7.0 fpm, supervisor, mariadb |
Erpnext Compute Engine Marketplace | Debian 10.9 | nginx, redis-server, supervisor, mariadb |
Wildfly Marketplace Compute Engine | Debian 10.10 | wildfly, cron |
batasan sistem
Jika Anda menggunakan systemd
sebagai sistem init, perhatikan batasan berikut:
Jenis layanan
systemd
darisimple
,exec
, dannotify
diperlakukan sebagai layananexec
. Artinya, layanan dianggap telah dimulai, jikaexec
berhasil.Soket notifikasi didukung untuk
sd_notify()
hanya untuk pesanREADY=1
.Jika perlu, Anda dapat memberikan pemeriksaan kesiapan lainnya. Misalnya, pemeriksaan HTTP atau jenis pemeriksaan lainnya.
File unit jenis soket tidak didukung. Soket tidak dibuat dan tidak ada variabel lingkungan yang dibuat.
Update untuk versi 1.9.0
Pengelola layanan Linux yang disederhanakan untuk versi 1.9.0 berisi update berikut:
Pengelola layanan Linux telah dirilis untuk ketersediaan umum, dan tidak lagi dalam Pratinjau Publik.
Prosedur untuk Mengonversi workload container yang ada agar mendukung Autopilot telah diubah. Anda sekarang harus mengedit Dockerfile dan file
deployment_spec.yaml
untuk migrasi yang ada agar dapat mengonversinya.Nama file
config.yaml
telah diganti menjadiservices-config.yaml
.
Update untuk versi 1.8.1
Pengelola layanan Linux yang disederhanakan ini awalnya dirilis dalam Pratinjau Publik sebagai bagian dari Migrate to Containers versi 1.8. Pengelola layanan Linux yang disederhanakan untuk versi 1.8.1 berisi update berikut:
Anda tidak lagi menetapkan anotasi dalam rencana migrasi untuk mengaktifkan pengelola layanan Linux yang disederhanakan. Sebagai gantinya, sekarang Anda menetapkan
v2kServiceManager
. Lihat Men-deploy container ke cluster Autopilot untuk mengetahui informasi selengkapnya.Variabel lingkungan
HC_GAMMA_RUNTIME
diganti namanya menjadiHC_V2K_SERVICE_MANAGER
.Entri
prestart
danpoststart
dalam fileservices-config.yaml
sekarang terisi secara otomatis. Lihat Menggunakan services-config.yaml untuk mengetahui informasi selengkapnya.Penambahan dukungan ke file
services-config.yaml
yang memungkinkan Anda menentukan variabel lingkungan pada tingkat global atau tingkat aplikasi. Lihat Menggunakan services-config.yaml untuk mengetahui informasi selengkapnya.Penambahan dukungan logging yang memungkinkan Anda menyesuaikan data log yang ditulis ke Cloud Logging. Lihat artikel Menyesuaikan data log yang ditulis ke Cloud Logging untuk mengetahui informasi selengkapnya.