Dengan Google Kubernetes Engine (GKE), Anda dapat menerima panduan preskriptif tentang cara mengoptimalkan cluster.
GKE memantau cluster Anda dan jika ada potensi pengoptimalan, panduan akan diberikan melalui Pemberi rekomendasi, layanan Google Cloud yang menghasilkan insight dan rekomendasi untuk menggunakan resource di Google Cloud. Untuk GKE, Pemberi Rekomendasi memberikan dua jenis informasi:
- Insight menjelaskan bahwa GKE mendeteksi bahwa penggunaan cluster Anda dapat dioptimalkan dengan beberapa cara.
- Rekomendasi menjelaskan cara mengoptimalkan penggunaan cluster Anda.
GKE mengirimkan informasi ini di Google Cloud konsol dan Anda dapat juga menemukannya dengan Google Cloud CLI dan Recommender API. GKE menyediakan Pemberi Rekomendasi untuk berbagai topik, termasuk:
- Penghentian penggunaan: Mengurangi eksposur pada fitur atau API Kubernetes yang tidak digunakan lagi.
- Operasi dan konektivitas: Memperbaiki masalah terkait konektivitas bidang kontrol dan node, serta penggunaan alamat IP
- Pengoptimalan biaya: Menerapkan konfigurasi dan praktik yang dioptimalkan biaya. Misalnya, mengidentifikasi cluster GKE yang tidak ada aktivitas, cluster GKE yang kelebihan kapasitas, dan workload yang kelebihan kapasitas.
- Skalabilitas: Menerapkan praktik peningkatan keandalan, seperti meningkatkan skala cluster GKE yang kekurangan kapasitas dan workload yang kekurangan kapasitas.
- Permintaan dan batas resource: Menetapkan permintaan dan batas resource untuk menghindari penghentian Pod yang tiba-tiba karena tekanan resource node dan meningkatkan akurasi alokasi biaya.
- Agones: Mengisolasi pengontrol Agones di cluster Anda.
- Gangguan: Memastikan kontinuitas dan tingkat upaya pemulihan workload selama pemeliharaan.
- Webhook: Memastikan stabilitas bidang kontrol saat menggunakan webhook.
- Perlindungan data: Memastikan workload dilindungi dari peristiwa yang mengganggu.
- Kredensial cluster: Merotasi kredensial cluster untuk mencegah gangguan.
- Saluran rilis: Mendaftarkan cluster di saluran rilis.
- Jendela pemeliharaan: Pilih jendela waktu berulang saat pemeliharaan cluster GKE terjadi.
- Versi yang didukung: Memastikan bahwa cluster menjalankan versi yang didukung yang juga mematuhi kebijakan skew versi GKE. Untuk mengetahui detailnya, lihat bagian Upgrade otomatis pada akhir dukungan dan Kebijakan skew versi GKE di halaman yang direferensikan.
- Izin akun layanan node: Memastikan akun layanan node memiliki izin penting yang diperlukan untuk operasi GKE normal.
- CRD: Memastikan operasi cluster stabil dengan memperbaiki CRD yang salah konfigurasi dengan paket CA yang tidak valid.
- Penggunaan etcd: Memastikan database etcd memiliki penyimpanan yang cukup untuk mencegah ketidakstabilan cluster.
Sebelum memulai
Sebelum memulai, pastikan Anda telah melakukan tugas berikut:
- Aktifkan Google Kubernetes Engine API. Aktifkan Google Kubernetes Engine API
- Jika ingin menggunakan Google Cloud CLI untuk tugas ini,
instal lalu
lakukan inisialisasi gcloud CLI. Jika sebelumnya Anda telah menginstal gcloud CLI, dapatkan versi terbaru dengan menjalankan perintah
gcloud components update. Versi gcloud CLI yang lebih lama mungkin tidak mendukung perintah yang dijalankan dalam dokumen ini.
Peran yang diperlukan
Pastikan Anda memiliki izin yang diperlukan untuk insight dan rekomendasi Kubernetes, baik dengan peran dasar atau peran yang telah ditetapkan sebelumnya:
Lihat insight dan rekomendasi dengan salah satu peran berikut:
Melihat dan memperbarui status insight dan rekomendasi (misalnya, menolak rekomendasi):
Melihat insight dan rekomendasi
Anda dapat melihat insight dan rekomendasi dengan Google Cloud CLI, di Google Cloud konsol, atau dengan Recommender API.
Konsol
Saat melihat rekomendasi di konsol, Anda memiliki dua opsi. Anda dapat menggunakan kartu skor tingkat tinggi di bagian atas tampilan untuk melihat hasil gabungan rekomendasi kesehatan, upgrade, dan pengoptimalan biaya di semua cluster dalam project Anda.
Atau, Anda dapat melihat daftar rekomendasi per cluster.
Untuk melihat rekomendasi menggunakan kartu skor, lakukan langkah-langkah berikut:
Buka halaman Google Kubernetes Engine di Google Cloud konsol:
Untuk melihat jumlah cluster yang terpengaruh oleh setiap rekomendasi, klik Lihat rekomendasi di bagian kategori yang ingin Anda lihat, yaitu Kesehatan, Upgrade, atau Biaya. Di panel sidebar yang terbuka, daftar rekomendasi menunjukkan jumlah cluster yang terpengaruh oleh setiap rekomendasi.
Untuk melihat informasi selengkapnya, termasuk nama cluster yang terpengaruh, klik nama rekomendasi.
Untuk melihat detail selengkapnya untuk setiap cluster yang terpengaruh, klik rekomendasi lagi.
Untuk melihat rekomendasi per cluster, lakukan langkah-langkah berikut:
Buka halaman Google Kubernetes Engine di Google Cloud konsol:
Periksa kolom Notifikasi untuk cluster tertentu guna menemukan insight dan rekomendasi.
Untuk menampilkan informasi selengkapnya, klik insight. Di panel sidebar yang terbuka, Anda dapat melihat detail tentang insight ini, termasuk rekomendasi terkait.
gcloud
Insight biasanya memiliki rekomendasi yang sesuai. Insight
diambil dengan gcloud recommender insights
dan rekomendasi diambil dengan gcloud recommender recommendations.
Lihat daftar insight untuk cluster zona tertentu (untuk cluster zona) atau region tertentu (untuk cluster regional):
gcloud recommender insights list \ --insight-type=google.container.DiagnosisInsight \ --location=LOCATION \ --project=PROJECT_ID \ --format=FORMAT \ --filter="insightSubtype:SUBTYPE"Ganti kode berikut:
PROJECT_ID: Google Cloud project ID untuk project tempat cluster berada.LOCATION: region atau zona cluster yang tepat. Untuk cluster zona, Anda harus memberikan zona yang tepat (misalnya,us-central1-c). Untuk cluster regional, Anda harus memberikan region yang tepat (misalnya,us-central1).FORMAT: mengubah format output menjadi YAML. Flag ini bersifat opsional.SUBTYPE: subjenis insight, misalnya,DEPRECATION_K8S_1_23_CERTIFICATE. Ini membatasi output ke insight untuk subjenis yang ditentukan. Flag ini bersifat opsional.
Atau, jika sudah memiliki ID insight, Anda dapat melihat detail tentang insight dengan menjalankan perintah berikut:
gcloud recommender insights describe INSIGHT \ --insight-type=google.container.DiagnosisInsight \ --location=LOCATION \ --project=PROJECT_ID \ --format=FORMATGanti
INSIGHTdengan nilai ID insight, yang ditentukan di akhir URL dari kolomnameuntuk insight.Outputnya mencakup detail tambahan tentang perilaku yang terdeteksi GKE dengan cluster Anda.
Lihat daftar rekomendasi untuk cluster zona tertentu (untuk cluster zona) atau region tertentu (untuk cluster regional):
gcloud recommender recommendations list \ --recommender=google.container.DiagnosisRecommender \ --location=LOCATION \ --project=PROJECT_ID \ --format=FORMAT \ --filter="recommenderSubtype:SUBTYPE"Ganti
SUBTYPEdengan subjenis pemberi rekomendasi, misalnyaDEPRECATION_K8S_1_23_CERTIFICATE. Tindakan ini membatasi output ke rekomendasi subjenis yang ditentukan. Flag ini bersifat opsional.Atau, jika sudah memiliki ID rekomendasi, Anda dapat melihat rekomendasi dengan menjalankan perintah berikut:
gcloud recommender recommendations describe RECOMMENDATION_ID \ --recommender=google.container.DiagnosisRecommender \ --location=LOCATION \ --project=PROJECT_ID \ --format=FORMATGanti
RECOMMENDATION_IDdengan nilaiassociatedRecommendations.recommendationyang tersimpan dari output perintah pada Langkah 1.Output-nya memberikan panduan tentang tindakan yang perlu Anda lakukan untuk mengoptimalkan penggunaan GKE oleh cluster.
API
Setiap insight memiliki rekomendasi yang sesuai. Insight diambil dengan Resource REST: projects.locations.insightTypes.insights dan rekomendasi diambil dengan Resource REST: projects.locations.recommenders.recommendation.
Lihat daftar insight untuk cluster zona tertentu (untuk cluster zona) atau region tertentu (untuk cluster regional):
GET https://recommender.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/insightTypes/google.container.DiagnosisInsight/insights?filter=insightSubtype%20%3D%20SUBTYPEGanti kode berikut:
PROJECT_ID: Google Cloud project ID untuk project tempat cluster berada.LOCATION: region atau zona cluster yang tepat. Untuk cluster zona, Anda harus memberikan zona yang tepat (misalnya,us-central1-c). Untuk cluster regional, Anda harus memberikan region yang tepat (misalnya,us-central1).SUBTYPE: subjenis insight, misalnya,DEPRECATION_K8S_1_23_CERTIFICATE. Ini membatasi output ke insight untuk subjenis yang ditentukan. Flag ini bersifat opsional.
Atau, jika sudah memiliki ID insight, Anda dapat melihat detail tentang insight dengan membuat permintaan berikut:
GET https://recommender.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/insightTypes/google.container.DiagnosisInsight/insights/INSIGHTGanti
INSIGHTdengan nilai ID insight, yang ditentukan di akhir URL dari kolomnameuntuk insight.Isi respons mencakup detail tentang perilaku yang terdeteksi GKE dengan cluster Anda.
Lihat daftar rekomendasi untuk cluster zona tertentu (untuk cluster zona) atau region tertentu (untuk cluster regional):
GET https://recommender.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/recommenders/google.container.DiagnosisRecommender/recommendations?filter=recommenderSubtype%20%3D%20SUBTYPEGanti
SUBTYPEdengan subjenis pemberi rekomendasi, misalnya,DEPRECATION_K8S_1_23_CERTIFICATE. Tindakan ini akan membatasi output ke rekomendasi subjenis yang ditentukan. Flag ini bersifat opsional.Atau, jika sudah memiliki ID rekomendasi, Anda dapat melihat rekomendasi dengan membuat permintaan berikut:
GET https://recommender.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/recommenders/google.container.DiagnosisRecommender/recommendations/RECOMMENDATION_IDGanti
RECOMMENDATION_IDdengan nilaiassociatedRecommendations.recommendationyang tersimpan dari isi respons pada Langkah 1.Isi respons memberikan panduan tentang tindakan yang mungkin perlu Anda ambil untuk mengoptimalkan penggunaan GKE cluster.
Mengekspor insight dan rekomendasi ke BigQuery
Anda dapat menggunakan BigQuery untuk mengekspor dan menganalisis insight serta rekomendasi untuk seluruh organisasi Anda. Untuk mempelajari lebih lanjut, lihat Mengekspor rekomendasi ke BigQuery.
Menolak atau memulihkan rekomendasi
Jika Anda tidak ingin lagi melihat rekomendasi untuk cluster di Google Cloud konsol, tolak rekomendasi tersebut. Anda bisa melakukan ini, misalnya, jika Anda telah menilai rekomendasi dan telah memutuskan untuk tidak menerapkannya.
Jika Anda menolak rekomendasi, rekomendasi tidak akan muncul untuk pengguna yang melihat cluster di konsol. Setelah Anda menolak rekomendasi, rekomendasi tersebut tidak akan muncul lagi meskipun GKE mendeteksi perilaku yang sama.
Saat menolak rekomendasi, Anda hanya akan menyembunyikannya untuk semua pengguna di konsol. Rekomendasi tetap dapat ditemukan dengan Google Cloud CLI dan Recommender API.
Menolak rekomendasi
Untuk menolak rekomendasi, ikuti petunjuk untuk Melihat insight dan rekomendasi di Google Cloud konsol guna membuka panel sidebar, yang memiliki detail selengkapnya. Di panel tersebut, klik tombol Dismiss.
Memulihkan rekomendasi yang ditolak
Anda dapat memulihkan rekomendasi yang ditolak dengan mengikuti petunjuk untuk Memulihkan rekomendasi.
Langkah berikutnya
- Pelajari Pemberi rekomendasi lebih lanjut