Autopilot adalah mode operasi terkelola di Google Kubernetes Engine (GKE). Halaman ini menjelaskan manfaat mode Autopilot dan memberikan informasi tentang perencanaan cluster, men-deploy workload, serta mengonfigurasi jaringan dan keamanan. Admin, Arsitek, dan Operator dapat menggunakan informasi ini untuk membuat keputusan yang tepat saat mengevaluasi kesesuaian mode GKE Autopilot dengan persyaratan operasional workload yang dikontainerisasi.
Untuk mengetahui informasi selengkapnya tentang perbedaan antara mode operasi di GKE, lihat Membandingkan GKE Autopilot dan Standard.
Apa itu Autopilot?
GKE Autopilot adalah mode operasi di GKE tempat Google mengelola konfigurasi infrastruktur Anda, termasuk node, penskalaan, keamanan, dan setelan lainnya yang telah dikonfigurasi sebelumnya. Mode Autopilot dioptimalkan untuk menjalankan sebagian besar workload produksi, dan menyediakan resource komputasi berdasarkan manifes Kubernetes Anda.
Anda dapat menjalankan seluruh cluster dalam mode Autopilot, sehingga cluster dan semua workload-nya mengikuti praktik terbaik dan rekomendasi GKE untuk penskalaan, keamanan, upgrade, dan konfigurasi node. Anda juga dapat menjalankan workload tertentu dalam mode Autopilot di cluster GKE Standard. Opsi ini memungkinkan Anda menggunakan Autopilot di lingkungan yang masih memerlukan kontrol manual atas infrastruktur Anda. Untuk mengetahui informasi selengkapnya, lihat Tentang workload mode Autopilot di GKE Standard.
Manfaat
- Fokus pada aplikasi Anda: Google mengelola infrastruktur, sehingga Anda dapat fokus membangun dan men-deploy aplikasi.
- Keamanan: Cluster Autopilot memiliki konfigurasi yang telah melalui proses hardening secara default, dengan banyak setelan keamanan yang diaktifkan secara default. GKE secara otomatis menerapkan patch keamanan ke node Anda jika tersedia, sesuai dengan jadwal pemeliharaan apa pun yang Anda konfigurasi.
- Harga: Model harga Autopilot menyederhanakan atribusi dan perkiraan penagihan.
- Pengelolaan node: Google mengelola worker node, sehingga Anda tidak perlu membuat node baru untuk mengakomodasi workload atau mengonfigurasi upgrade dan perbaikan otomatis.
- Penskalaan: saat workload mengalami beban tinggi dan Anda menambahkan lebih banyak Pod untuk mengakomodasi traffic, misalnya dengan Penskalaan Otomatis Pod Horizontal Kubernetes, GKE secara otomatis menyediakan node baru untuk Pod tersebut, dan secara otomatis memperluas resource di node yang ada berdasarkan kebutuhan.
- Penjadwalan: Autopilot mengelola bin packing Pod, sehingga Anda tidak perlu memikirkan jumlah Pod yang berjalan di setiap node. Anda dapat mengontrol penempatan Pod lebih lanjut menggunakan mekanisme Kubernetes, seperti topologi afinitas dan penyebaran Pod.
- Pengelolaan resource: jika Anda men-deploy workload tanpa menetapkan nilai resource seperti CPU dan memori, Autopilot akan otomatis menetapkan nilai default yang telah dikonfigurasi sebelumnya dan mengubah permintaan resource di tingkat workload.
- Jejaring: Autopilot mengaktifkan beberapa fitur keamanan jejaring secara default, seperti meneruskan semua traffic jaringan Pod melalui aturan firewall Virtual Private Cloud Anda, meskipun traffic tersebut mengarah ke Pod lain dalam cluster.
- Pengelolaan rilis: semua cluster Autopilot terdaftar di saluran rilis GKE sehingga bidang kontrol dan node Anda berjalan pada versi terbaru yang memenuhi syarat di saluran tersebut.
- Fleksibilitas terkelola: jika workload Anda memiliki persyaratan hardware atau resource tertentu, seperti GPU, Anda dapat menentukan persyaratan tersebut di ComputeClasses. Saat Anda meminta ComputeClass dalam workload, GKE menggunakan persyaratan Anda untuk mengonfigurasi node bagi Pod Anda. Anda tidak perlu mengonfigurasi hardware secara manual untuk node atau untuk setiap workload.
- Mengurangi kompleksitas operasional: Autopilot mengurangi overhead administrasi platform dengan meniadakan kebutuhan untuk terus memantau node, penskalaan, dan penjadwalan operasi.
Autopilot dilengkapi dengan SLA yang mencakup bidang kontrol dan kapasitas komputasi yang digunakan oleh Pod Anda.
Tentang platform komputasi yang dioptimalkan untuk container Autopilot
Pada GKE versi 1.32.3-gke.1927002 dan yang lebih baru, Autopilot menyertakan platform komputasi yang dioptimalkan untuk container khusus untuk workload Anda. Platform ini berfungsi dengan baik untuk sebagian besar workload tujuan umum yang tidak memerlukan hardware tertentu, seperti server web dan tugas batch dengan intensitas sedang.
Platform komputasi yang dioptimalkan untuk container menggunakan node Autopilot GKE yang dapat diubah ukurannya secara dinamis saat berjalan, yang dirancang untuk menskalakan dari sebagian kecil CPU dengan gangguan minimal. Pengubahan ukuran dinamis ini secara signifikan mengurangi waktu yang diperlukan untuk menyediakan kapasitas baru saat beban kerja Anda diskalakan. Untuk meningkatkan kecepatan penskalaan dan pengubahan ukuran, GKE juga mempertahankan kumpulan kapasitas komputasi yang telah disediakan sebelumnya yang dapat dialokasikan secara otomatis untuk workload sebagai respons terhadap peningkatan permintaan resource.
Platform komputasi yang dioptimalkan untuk container memberikan manfaat berikut:
- Kapasitas komputasi sesuai dengan workload: Autopilot menyesuaikan kapasitas komputasi untuk platform komputasi yang dioptimalkan untuk container secara dinamis berdasarkan faktor-faktor seperti jumlah Pod dan konsumsi resource. Hasilnya, kapasitas komputasi di cluster sesuai dengan kebutuhan workload Anda.
- Waktu penskalaan yang cepat: selama peristiwa penskalaan, GKE dapat mengubah ukuran node yang ada secara dinamis untuk mengakomodasi lebih banyak Pod atau peningkatan konsumsi resource. Penyediaan kapasitas dinamis ini sering kali berarti bahwa Pod baru tidak perlu menunggu node baru di-booting.
Anda dapat menggunakan platform komputasi yang dioptimalkan untuk container Autopilot dengan cara berikut:
- Cluster Autopilot: Pod yang tidak memilih hardware tertentu menggunakan platform komputasi ini secara default.
- Cluster standar: Anda dapat menempatkan Pod tertentu di platform komputasi yang dioptimalkan untuk container dengan memilih salah satu ComputeClass Autopilot bawaan.
Harga
Harga Autopilot menggunakan model yang berbeda, bergantung pada jenis hardware yang digunakan Pod Anda, sebagai berikut:
Pod Autopilot tujuan umum: jenis Pod berikut menggunakan model penagihan berbasis Pod dan dikategorikan sebagai Pod tujuan umum:
- Pod yang berjalan di platform komputasi yang dioptimalkan untuk container di cluster Autopilot atau cluster Standard.
- Pod yang memilih ComputeClass bawaan
Balanced
atauScale-Out
di cluster Autopilot.
Untuk mengetahui informasi selengkapnya, lihat bagian "Workload Autopilot serbaguna" di Harga Google Kubernetes Engine.
Workload Autopilot yang memilih hardware tertentu: Pod yang memilih hardware tertentu, seperti seri mesin Compute Engine atau akselerator hardware, menggunakan model penagihan berbasis node. Dalam model ini, Anda membayar hardware yang mendasarinya dan premium pengelolaan node.
Untuk mengetahui informasi selengkapnya, lihat bagian "Workload Autopilot yang memilih hardware tertentu" di Harga Google Kubernetes Engine.
Cluster dan workload Autopilot
GKE memungkinkan Anda menggunakan mode Autopilot untuk seluruh cluster atau untuk workload tertentu di cluster Standard. Cluster Autopilot adalah cara yang direkomendasikan untuk menggunakan GKE, karena seluruh cluster menggunakan praktik terbaik Google secara default.
Namun, beberapa organisasi memiliki persyaratan untuk kontrol manual atau untuk fleksibilitas yang mengharuskan penggunaan cluster Standar GKE. Dalam kasus ini, Anda tetap dapat menggunakan Autopilot untuk workload tertentu di cluster Standard, sehingga Anda dapat memanfaatkan banyak fitur Autopilot di tingkat workload.
Bagian berikut menunjukkan cara merencanakan dan membuat cluster Autopilot. Jika Anda memiliki cluster Standard dan ingin menjalankan beberapa workload dalam mode Autopilot, lihat Tentang workload mode Autopilot di GKE Standard.
Merencanakan cluster Autopilot Anda
Sebelum membuat cluster, rencanakan dan rancang arsitektur Google Cloud Anda. Dalam Autopilot, Anda meminta hardware dalam spesifikasi workload Anda. GKE menyediakan dan mengelola infrastruktur yang sesuai untuk menjalankan workload tersebut. Misalnya, jika menjalankan workload machine learning, Anda meminta akselerator hardware. Jika mengembangkan aplikasi Android, Anda meminta CPU Arm.
Rencanakan dan minta kuota untuk project atau organisasi Google Cloud Anda berdasarkan skala workload Anda. GKE hanya dapat menyediakan infrastruktur untuk workload Anda jika project Anda memiliki cukup kuota untuk hardware tersebut.
Pertimbangkan faktor-faktor berikut selama perencanaan:
- Estimasi ukuran dan skala cluster
- Jenis workload
- Tata letak dan penggunaan cluster
- Tata letak dan konfigurasi jejaring
- Konfigurasi keamanan
- Pengelolaan dan pemeliharaan cluster
- Deployment dan pengelolaan workload
- Logging dan pemantauan
Bagian berikut memberikan informasi dan referensi yang berguna untuk pertimbangan ini.
Jejaring
Saat Anda membuat cluster Autopilot dengan jejaring publik, workload di cluster tersebut dapat berkomunikasi satu sama lain dan dengan internet. Ini adalah mode jaringan default. Google Cloud dan Kubernetes menyediakan berbagai fitur dan kemampuan jaringan tambahan yang dapat Anda gunakan berdasarkan persyaratan Anda, seperti cluster dengan jaringan pribadi.
Jejaring di Kubernetes dan cloud itu kompleks. Sebelum mulai mengubah setelan default yang ditetapkanGoogle Cloud untuk Anda, pastikan Anda memahami konsep dasar jejaring. Tabel berikut memberi Anda referensi untuk mempelajari lebih lanjut jejaring di GKE berdasarkan kasus penggunaan Anda:
Kasus penggunaan | Resource |
---|---|
Memahami cara kerja jejaring di Kubernetes dan GKE |
Setelah mempelajari model jejaring, pertimbangkan persyaratan keamanan jejaring dan jejaring organisasi Anda. Pilih fitur jejaring GKE dan Google Cloud yang memenuhi kriteria tersebut. |
Merencanakan konfigurasi jejaring GKE Anda | Sebaiknya Anda memahami kuota jejaring untuk GKE, seperti endpoint per batas permintaan API dan Layanan. Referensi berikut akan membantu Anda merencanakan aspek tertentu dari penyiapan jejaring Anda:
|
Mengekspos workload Anda |
|
Jalankan layanan terhubung yang sangat tersedia di beberapa cluster | Gunakan Layanan multi-cluster (MCS). |
Menyeimbangkan beban traffic masuk |
|
Mengonfigurasi keamanan jaringan cluster |
|
Mengamati traffic jaringan Kubernetes Anda | Secara default, Autopilot menggunakan GKE Dataplane V2 untuk metrik dan kemampuan observasi .
|
Penskalaan
Untuk mengoperasikan platform secara efektif dalam skala besar, diperlukan perencanaan dan pertimbangan yang cermat. Anda harus mempertimbangkan skalabilitas desain, yang merupakan kemampuan cluster untuk berkembang sekaligus tetap berada dalam tujuan tingkat layanan (SLO). Untuk mendapatkan panduan mendetail bagi administrator dan developer platform, lihat Panduan membuat cluster skalabel.
Anda juga harus mempertimbangkan kuota dan batas GKE, terutama jika berencana menjalankan cluster besar dengan kemungkinan ribuan Pod.
Dalam mode Autopilot, GKE secara otomatis menskalakan node Anda berdasarkan jumlah Pod di cluster Anda. Jika tidak ada beban kerja yang berjalan, Autopilot dapat otomatis menurunkan skala cluster hingga nol node. Setelah penurunan skala cluster, tidak ada node yang tersisa di cluster dan Pod sistem berada dalam status yang tidak dapat dijadwalkan. Ini adalah perilaku yang diharapkan. Di sebagian besar cluster Autopilot yang baru dibuat, Anda mungkin melihat bahwa workload pertama yang Anda deploy memerlukan waktu lebih lama untuk dijadwalkan. Hal ini karena cluster Autopilot baru dimulai dengan nol node yang dapat digunakan saat dibuat dan menunggu hingga Anda men-deploy workload untuk menyediakan node tambahan.
Untuk menskalakan jumlah Pod di cluster Anda secara otomatis, gunakan mekanisme seperti penskalaan otomatis Pod horizontal Kubernetes, yang dapat menskalakan Pod berdasarkan metrik CPU dan memori bawaan, atau berdasarkan metrik kustom dari Cloud Monitoring. Untuk mempelajari cara mengonfigurasi penskalaan berdasarkan berbagai metrik, lihat Mengoptimalkan penskalaan otomatis Pod berdasarkan metrik.
Keamanan
Cluster Autopilot mengaktifkan dan menerapkan praktik terbaik serta setelan keamanan secara default, termasuk banyak rekomendasi dalam Hardening keamanan cluster dan ringkasan keamanan GKE
Jika Anda ingin mempelajari lebih lanjut langkah-langkah hardening Autopilot dan cara menerapkan persyaratan keamanan khusus, lihat Tindakan keamanan di Autopilot.
Membuat cluster
Setelah merencanakan lingkungan dan memahami kebutuhan Anda, buat cluster Autopilot. Cluster Autopilot baru adalah cluster regional yang memiliki alamat IP yang dapat diakses secara publik. Setiap cluster memiliki langkah hardening dasar yang diterapkan, serta penskalaan otomatis dan fitur lainnya. Untuk daftar lengkap fitur yang telah dikonfigurasi, lihat Membandingkan GKE Autopilot dan Standard.
Jika Anda ingin membuat cluster tanpa akses ke alamat IP eksternal, konfigurasi isolasi jaringan Anda.
Men-deploy workload dalam mode Autopilot
Anda dapat menjalankan workload Kubernetes yang kompatibel dalam mode Autopilot sehingga GKE mengelola penskalaan, penjadwalan yang efisien, dan infrastruktur dasar. Anda dapat menggunakan platform komputasi yang dioptimalkan untuk container bagi workload serbaguna, atau memilih hardware tertentu untuk workload dengan menggunakan ComputeClass.
Anda dapat menjalankan workload Autopilot ini dengan salah satu cara berikut:
- Deploy workload ke cluster Autopilot.
- Pilih ComputeClass Autopilot saat Anda men-deploy workload ke cluster Standar.
Untuk panduan interaktif di konsol Google Cloud terkait cara men-deploy dan mengekspos aplikasi di cluster Autopilot, klik Pandu saya:
Tabel berikut menunjukkan beberapa persyaratan umum dan memberikan rekomendasi untuk tindakan yang sebaiknya Anda lakukan:
Kasus penggunaan | Resource |
---|---|
Mengontrol properti node individual saat menskalakan cluster | Buat ComputeClass kustom dan minta di manifes workload Anda. Untuk mengetahui informasi selengkapnya, lihat Tentang ComputeClass kustom. |
Menjalankan workload Autopilot di cluster Standard | Gunakan ComputeClass Autopilot di cluster Standard. Untuk mengetahui informasi selengkapnya, lihat Tentang workload mode Autopilot di GKE Standard. |
Menjalankan workload Arm | Minta seri mesin yang memiliki CPU Arm di ComputeClass atau di manifes workload Anda. Untuk mengetahui informasi selengkapnya, lihat Tentang ComputeClass kustom. |
Menjalankan workload AI/ML yang dipercepat | Minta GPU di ComputeClass atau di manifes workload Anda. Untuk mengetahui informasi selengkapnya tentang cara meminta GPU dalam manifes workload, lihat Men-deploy workload GPU di Autopilot. |
Menjalankan workload fault-tolerant seperti tugas batch dengan biaya lebih rendah. |
Anda dapat menggunakan ComputeClass atau konfigurasi hardware apa pun dengan Spot Pod. |
Menjalankan workload yang memerlukan gangguan minimal, seperti server game atau antrean tugas | Khusus di cluster Autopilot, tentukan anotasi
cluster-autoscaler.kubernetes.io/safe-to-evict=false
dalam spesifikasi Pod. Pod dilindungi dari penghapusan yang disebabkan oleh upgrade otomatis node atau peristiwa penurunan skala selama hingga tujuh hari.
Untuk mengetahui informasi selengkapnya, lihat
Memperpanjang waktu proses Pod Autopilot. |
Izinkan workload melakukan bursting di luar permintaannya jika ada resource yang tersedia dan tidak terpakai dalam jumlah permintaan resource Pod di node. | Tetapkan limits resource lebih tinggi daripada requests
atau jangan tetapkan batas resource.
Untuk mengetahui informasi selengkapnya, lihat
Mengonfigurasi bursting Pod di GKE. |
Dengan mode autopilot, Anda dapat meminta resource CPU, memori, dan penyimpanan sementara untuk workload Anda. Rentang yang diizinkan bergantung pada apakah Anda ingin menjalankan Pod di platform komputasi yang dioptimalkan untuk container Autopilot, atau di hardware tertentu. Untuk mengetahui informasi tentang permintaan resource container default dan rentang resource yang diizinkan, lihat Permintaan resource di Autopilot.
Pemisahan workload
Cluster autopilot mendukung penggunaan pemilih node dan afinitas node untuk mengonfigurasi pemisahan workload. Pemisahan workload berguna saat Anda perlu memberi tahu GKE untuk menempatkan workload di node yang memenuhi kriteria tertentu, seperti label node khusus. Misalnya, Anda dapat memberi tahu GKE untuk menjadwalkan Pod server game di node dengan label game-server
dan menghindari penjadwalan Pod lain di node tersebut.
Untuk mempelajari lebih lanjut, baca Mengonfigurasi pemisahan workload di GKE.
Menjadwalkan Pod di zona tertentu menggunakan topologi zona
Jika Anda perlu menempatkan Pod di zona Google Cloud tertentu, misalnya untuk mengakses informasi di persistent disk Compute Engine zona, lihat Menempatkan Pod GKE di zona tertentu.
Afinitas dan anti-afinitas pod
Gunakan afinitas dan anti-afinitas Pod untuk menempatkan Pod bersama di satu node atau untuk membuat beberapa Pod menghindari Pod lain. Afinitas dan anti-afinitas pod memberi tahu Kubernetes untuk membuat keputusan penjadwalan berdasarkan label Pod yang berjalan di node dalam domain topologi tertentu, seperti region atau zona tertentu. Misalnya, Anda dapat memberi tahu GKE untuk menghindari penjadwalan Pod frontend bersama Pod frontend lain di node yang sama untuk meningkatkan ketersediaan jika terjadi pemadaman layanan.
Untuk petunjuk dan detail selengkapnya, lihat Afinitas dan anti-afinitas pod.
Di GKE, Anda dapat menggunakan afinitas dan anti-afinitas Pod dengan label berikut di topologyKey
:
topology.kubernetes.io/zone
kubernetes.io/hostname
Batasan penyebaran topologi pod
Untuk meningkatkan ketersediaan workload saat Kubernetes meningkatkan dan menurunkan skala jumlah Pod, Anda dapat menyetel batasan penyebaran topologi pod. Ini mengontrol cara Kubernetes menyebarkan Pod ke berbagai node dalam domain topologi, seperti region. Misalnya, Anda dapat meminta Kubernetes untuk menempatkan sejumlah Pod sesi server game tertentu di ketiga zona Google Cloud dalam region us-central1
.
Untuk contoh, detail dan petunjuk selengkapnya, lihat Batasan Penyebaran Topologi Pod.
Mengelola dan memantau cluster Autopilot Anda
Di mode Autopilot, GKE secara otomatis mengelola upgrade dan pemeliharaan cluster untuk bidang kontrol dan worker node. Cluster autopilot juga memiliki fungsi bawaan agar Anda dapat memantau cluster dan workload.
Upgrade versi GKE
Semua cluster Autopilot terdaftar di saluran rilis GKE. Dalam saluran rilis, GKE mengelola versi cluster Kubernetes, sehingga menyeimbangkan antara ketersediaan fitur dan stabilitas versi, bergantung pada salurannya. Secara default, cluster Autopilot terdaftar di saluran rilis Reguler, tetapi Anda dapat memilih saluran lain yang memenuhi kebutuhan stabilitas dan fungsi Anda. Untuk informasi selengkapnya tentang saluran rilis, lihat Tentang saluran rilis.
GKE secara otomatis memulai upgrade, memantau progres, dan menjeda operasi jika terjadi masalah. Anda dapat mengontrol proses upgrade secara manual dengan cara berikut:
- Untuk mengontrol kapan GKE dapat melakukan upgrade otomatis, buat masa pemeliharaan. Misalnya, Anda dapat menyetel masa pemeliharaan ke malam sebelum reset mingguan game multiplayer, sehingga pemain dapat login saat reset tanpa gangguan.
- Untuk mengontrol kapan GKE tidak dapat memulai upgrade otomatis selama rentang waktu tertentu, gunakan pengecualian pemeliharaan. Misalnya, Anda dapat menetapkan pengecualian pemeliharaan selama durasi acara penjualan Black Friday dan Cyber Monday, sehingga pelanggan Anda dapat berbelanja tanpa masalah.
- Untuk mendapatkan versi baru sebelum upgrade otomatis dimulai, upgrade bidang kontrol secara manual. GKE merekonsiliasi versi node dengan versi bidang kontrol dari waktu ke waktu.
- Untuk mendapatkan versi patch yang hanya tersedia di saluran rilis yang lebih baru, lihat Menjalankan versi patch dari saluran yang lebih baru. Misalnya, Anda mungkin memerlukan versi patch tertentu untuk mengurangi pengungkapan kerentanan terbaru.
Memantau cluster Autopilot Anda
Cluster Autopilot telah mengaktifkan Cloud Logging, Cloud Monitoring, dan Google Cloud Managed Service for Prometheus.
Cluster Autopilot mengumpulkan jenis log dan metrik berikut secara otomatis, sesuai dengan praktik terbaik Google untuk pengumpulan telemetri:
Log untuk Cloud Logging
- Log sistem
- Log workload
- Log audit Aktivitas Admin
- Log audit Akses Data
Metrik untuk Cloud Monitoring
- Metrik sistem
- Metrik workload (dari Google Cloud Managed Service for Prometheus)
Tidak diperlukan konfigurasi tambahan untuk mengaktifkan logging dan pemantauan. Tabel berikut menunjukkan cara berinteraksi dengan telemetri yang dikumpulkan berdasarkan persyaratan Anda:
Kasus penggunaan | Resource |
---|---|
Memahami dan mengakses log GKE |
|
Mengamati performa cluster GKE Anda | Pemantauan performa cluster yang efektif dapat membantu Anda mengoptimalkan biaya pengoperasian cluster dan workload.
|
Memantau postur keamanan cluster Anda | Gunakan dasbor postur keamanan untuk mengaudit workload Anda yang berjalan berdasarkan praktik terbaik GKE, memindai kerentanan di sistem operasi container dan paket bahasa Anda, serta mendapatkan rekomendasi mitigasi yang dapat ditindaklanjuti. Untuk mempelajari lebih lanjut, lihat Tentang dasbor postur keamanan. |
Pemecahan masalah
Untuk langkah-langkah pemecahan masalah, lihat Memecahkan masalah cluster Autopilot.