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 dari simple,exec, dan notify diperlakukan sebagai layanan exec. Artinya, layanan dianggap telah dimulai, jika exec berhasil.

  • Soket notifikasi didukung untuk sd_notify() hanya untuk pesan READY=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 menjadi services-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 menjadi HC_V2K_SERVICE_MANAGER.

  • Entri prestart dan poststart dalam file services-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.

Langkah selanjutnya