Runtime baru yang ditingkatkan
Pengelola layanan Linux asli untuk Migrate to Containers bergantung
pada sysv init
dan systemd
. Pengelola layanan Linux yang disederhanakan
menggantinya dengan alternatif yang disederhanakan dan mudah digunakan untuk container.
Pengelola layanan Linux yang disederhanakan ini menambahkan fungsi yang memungkinkan Anda men-deploy workload container yang dimigrasikan ke:
Cluster GKE Autopilot
Cloud Run
Pengelola layanan Linux yang disederhanakan juga menyelesaikan masalah kompatibilitas dengan plugin Kubernetes.
Misalnya, pengelola layanan Linux yang disederhanakan menghapus persyaratan untuk menentukan hostpath
untuk /sys/fs/cgroup
dalam file deployment_spec.yaml
dan kebutuhan untuk membuat
penampung dengan hak istimewa.
Sebelum memulai
- Migrate to Containers menyediakan alat yang Anda jalankan di workload VM untuk menentukan kesesuaian workload 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 pokok cluster, termasuk node dan node pool, sehingga memberi Anda 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 menjalankan container stateless yang dapat dipanggil oleh permintaan web atau peristiwa Pub/Sub. Pengelola layanan Linux yang disederhanakan memungkinkan Anda men-deploy workload container yang dimigrasikan di Cloud Run.
Menggunakan identitas workload dengan Migrate to Containers dan GKE
Migrate to Containers dan GKE memungkinkan Anda men-deploy workload yang dimigrasikan ke Google Distributed Cloud. Terkadang, Anda mungkin menggunakan cluster yang sama sebagai cluster pemrosesan dan cluster deployment. Jika Anda telah mengaktifkan workload identity di 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 dikonfigurasi dengan benar untuk identitas beban kerja. Langkah-langkah yang Anda lakukan bergantung pada pengelola layanan untuk cluster Anda. Lihat Men-deploy workload 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 akan menambahkan probe kesiapan dalam
file deployment_spec.yaml
. Saat Anda mengaktifkan pengelola layanan Linux yang disederhanakan,
tidak ada pemeriksaan kesiapan yang ditambahkan.
Jika Anda ingin menambahkan probe kesiapan, sebaiknya gunakan probe kesiapan HTTP. Lihat Menentukan probe kesiapan untuk mengetahui informasi selengkapnya.
readinessProbe:
exec:
command:
- /.m4a/gamma status
Namun, probe 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
direkam oleh Kubernetes sebagai log penampung.
Batasan
Anda harus mengetahui batasan berikut saat menggunakan pengelola layanan Linux yang disederhanakan.
Batasan beban kerja
Pengelola layanan Linux yang disederhanakan berfungsi paling baik dengan jenis beban kerja berikut:
Gambar | Sistem operasi | Layanan |
---|---|---|
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 |
Image Memcached Compute Engine | Debian 10.9 | bitnami |
WordPress Compute Engine Marketplace | Debian 9.13 | apache2, mysql, php |
Tomcat Marketplace Compute Engine | Debian 9.13 | tomcat8 |
Jenkins Compute Engine Marketplace | Debian 10.9 | apache2, jenkins |
Moodle Marketplace Compute Engine | Debian 9.13 | apache2, mysql, php7.4 fpm, phpsessionclean |
Odoo Compute Engine Marketplace | Debian 9.13 | odoo, nginx |
Opencart Marketplace Compute Engine | Debian 9.13 | apache2, mysql, php7.0 fpm, supervisor, mariadb |
Erpnext Marketplace Compute Engine | Debian 10.9 | nginx, redis-server, supervisor, mariadb |
Wildfly Marketplace Compute Engine | Debian 10.10 | wildfly, cron |
Batasan systemd
Jika Anda menggunakan systemd
sebagai sistem init, perhatikan batasan berikut:
Jenis layanan
systemd
darisimple
,exec
, dannotify
diperlakukan sebagai layananexec
. Artinya, layanan dianggap dimulai, saatexec
berhasil.Soket notifikasi hanya didukung untuk
sd_notify()
untuk pesanREADY=1
.Jika diperlukan, 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 penampung yang ada untuk mendukung Autopilot telah diubah. Sekarang Anda perlu mengedit Dockerfile dan file
deployment_spec.yaml
untuk migrasi yang ada agar dapat mengonversinya.File
config.yaml
telah diganti namanya menjadiservices-config.yaml
.
Update untuk versi 1.8.1
Pengelola layanan Linux yang disederhanakan awalnya dirilis dalam Pratinjau Publik sebagai bagian dari Migrasi ke Penampung 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, Anda sekarang menetapkan
v2kServiceManager
. Lihat Men-deploy container ke cluster Autopilot untuk mengetahui informasi selengkapnya.Variabel lingkungan
HC_GAMMA_RUNTIME
telah diganti namanya menjadiHC_V2K_SERVICE_MANAGER
.Entri
prestart
danpoststart
dalam fileservices-config.yaml
kini otomatis diisi. Lihat Menggunakan services-config.yaml untuk mengetahui informasi selengkapnya.Menambahkan dukungan ke file
services-config.yaml
yang memungkinkan Anda menentukan variabel lingkungan di tingkat global atau di tingkat aplikasi. Lihat Menggunakan services-config.yaml untuk mengetahui informasi selengkapnya.Menambahkan dukungan logging yang memungkinkan Anda menyesuaikan data log yang ditulis ke Cloud Logging. Lihat Menyesuaikan data log yang ditulis ke Cloud Logging untuk mengetahui informasi selengkapnya.