Tujuan
Pelajari beberapa tugas dasar untuk mengonfigurasi cluster penyiapan dan pengujian:Membatasi akses ke layanan administratif cluster, yang disebut bidang kontrol. Tindakan ini mencegah pengguna yang tidak sah melihat atau mengubah setelan cluster dan beban kerja.
Tentukan bahwa aplikasi Anda memerlukan resource komputasi yang dapat di-scale up dan di-scale down secara efisien untuk memenuhi permintaan.
Uji penskalaan otomatis, yang secara otomatis mereplikasi Pod saat permintaan meningkat melampaui nilai minimum yang Anda tentukan.
Sesuaikan retensi log sehingga Anda hanya menyimpan log yang Anda butuhkan.
Aktifkan dasbor postur keamanan GKE.
Ini hanyalah beberapa tugas untuk mempromosikan cluster dari pengembangan ke penyiapan. Baca dokumentasi GKE untuk mengetahui daftar lengkap tugas yang perlu dipertimbangkan.
Untuk mengikuti panduan langkah demi langkah tugas ini langsung di Google Cloud konsol, klik Pandu saya:
Biaya
Dalam dokumen ini, Anda akan menggunakan komponen Google Cloudyang dapat ditagih berikut:
Untuk membuat perkiraan biaya berdasarkan proyeksi penggunaan Anda,
gunakan kalkulator harga.
Setelah menyelesaikan tugas yang dijelaskan dalam dokumen ini, Anda dapat menghindari penagihan berkelanjutan dengan menghapus resource yang Anda buat. Untuk mengetahui informasi selengkapnya, lihat Pembersihan.
Sebelum memulai
Buat cluster Kubernetes dan deploy workload. Membuat cluster dan men-deploy workload menunjukkan caranya.
Membatasi akses ke bidang kontrol
Untuk meningkatkan postur keamanan Anda, izinkan hanya jaringan yang diizinkan dan Google Cloud konsol serta Cloud Shell untuk mengakses bidang kontrol cluster Anda.
Mengonfigurasi jaringan yang diizinkan
Di konsol Google Cloud , buka halaman GKE Clusters.
Di kolom Name, klik nama cluster Anda, hello-world-cluster.
Di baris
Control plane authorized networks pada tabel Networking, klik Edit.Pada dialog Edit jaringan yang diizinkan bidang kontrol, pilih Aktifkan jaringan yang diizinkan bidang kontrol.
Pilih Izinkan akses melalui alamat IP publik Google Cloud.
Dengan begitu, Anda dapat mengelola cluster dari konsol Google Cloud dan Cloud Shell
Klik Add authorized network.
Masukkan nama, seperti My example on-prem network.
Di Network, masukkan rentang alamat IP yang ingin Anda beri akses ke bidang kontrol cluster. Gunakan notasi CIDR.
Misalnya, masukkan rentang berikut:
198.51.100.0/24
Klik Selesai.
Klik Simpan perubahan.
Operasi ini membutuhkan waktu beberapa menit hingga selesai.
Klik tombol
Notifikasi dan tunggu hingga Anda melihat tanda centang hijau di samping Perbarui setelan jaringan resmi bidang kontrol di cluster Kubernetes Engine "hello-world-cluster".
Anda telah mengonfigurasi bidang kontrol cluster yang hanya dapat diakses dari jaringan yang diizinkan dan dari alamat IP publik (yang memungkinkan Anda mengelola cluster dari konsolGoogle Cloud dan Cloud Shell). Google Cloud
Untuk melihat alamat IP bidang kontrol cluster Anda dan mengonfirmasi alamat jaringan yang diizinkan, klik Berikutnya.
Melihat alamat IP
Buka halaman Clusters GKE.
Di kolom Name, klik nama cluster Anda, hello-world-cluster.
Pada tabel Cluster basics, baris External endpoint menampilkan alamat IP bidang kontrol cluster.
Di tabel Networking, baris Control plane authorized networks menampilkan alamat IP jaringan yang diizinkan.
Panel kontrol cluster Anda kini hanya dapat diakses dari jaringan yang diizinkan, konsolGoogle Cloud , dan Cloud Shell.
Menentukan class compute
Secara default, Pod GKE Autopilot menggunakan resource komputasi yang dioptimalkan untuk workload tujuan umum. Untuk workload yang perlu diskalakan secara optimal atau yang memiliki persyaratan unik lainnya, Anda dapat menentukan class komputasi yang berbeda.
Perbarui spesifikasi Deployment
Di konsol Google Cloud , buka halaman Workloads GKE.
Di kolom Name, klik nama aplikasi yang Anda deploy, hello-world-app.
Klik
Edit untuk mengedit spesifikasi deployment.Di tab YAML, temukan baris yang dimulai dengan
containers:
Tepat di atas baris ini, tambahkan baris berikut:
nodeSelector: cloud.google.com/compute-class: "Scale-Out"
Pastikan file Anda cocok dengan indentasi dalam contoh berikut:
apiVersion: apps/v1 kind: Deployment ... spec: ... template: ... spec: nodeSelector: cloud.google.com/compute-class: "Scale-Out" containers: - name: hello-app image: us-docker.pkg.dev/google-samples/containers/gke/hello-app:1.0
Untuk mendownload file ini dan menggunakannya sebagai dasar konfigurasi beban kerja lainnya, klik
Download .Klik Simpan.
Setiap replika Pod yang dibuat untuk menjalankan workload Anda akan menggunakan class komputasi yang Anda tentukan.
Menguji penskalaan otomatis
Setelah memiliki workload yang dapat diskalakan secara efisien, perbarui setelan penskalaan otomatis agar workload Anda lebih mudah diskalakan. Kemudian, buat beban untuk memicu penskalaan otomatis.
Memperbarui setelan penskalaan otomatis Pod
Buka halaman Workloads GKE.
Di kolom Name, klik nama deployment Anda, hello-world-app.
Klik
Tindakan .Pilih Autoscale, lalu klik Horizontal pod autoscaling.
Dalam dialog Configure Horizontal Pod Autoscaler, di bagian Autoscaling metrics, klik CPU.
Ubah nilai Target menjadi 2, yang akan otomatis meningkatkan skala Pod Anda saat Pod menggunakan setidaknya 2% resource CPU yang dikonfigurasi. Nilai target rendah ini memastikan Anda dapat dengan mudah memicu penskalaan otomatis pada langkah berikutnya.
Klik Simpan.
Untuk memicu penskalaan otomatis, klik Berikutnya.
Membuat beban untuk memicu penskalaan otomatis
Buka Cloud Shell dengan mengklik
Cloud Shell .Tempel perintah berikut ke Cloud Shell:
for i in $(seq -s' ' 1 10000); do wget -q -O- <var>external-IP-address</var>; done
Ganti external-IP-address dengan alamat IP yang muncul di kolom
Endpoints .Tekan Enter untuk menjalankan perintah dan mengirim 10.000 permintaan ke hello-world-app.
Tunggu hingga perintah
wget
selesai dijalankan dan prompt command line muncul kembali.Anda dapat menutup Cloud Shell setelah perintah
wget
selesai.
Untuk melihat penskalaan workload Anda dalam mengakomodasi peningkatan traffic, klik Berikutnya.
Menyaksikan penskalaan beban kerja Anda
Di halaman Detail deployment untuk workload Anda, lihat grafik
CPU untuk melihat lonjakan penggunaan CPU.Anda mungkin perlu menunggu hingga 5 menit untuk melihat lonjakan.
Klik
Muat ulang untuk memastikan halaman Detail deployment menampilkan data terbaru.Lihat tabel Managed Pods untuk melihat bahwa tiga replika workload Anda kini berjalan.
Anda mungkin awalnya melihat error tentang Pod yang tidak dapat dijadwalkan, tetapi pesan ini bersifat sementara saat replika dimulai.
Anda dapat menunggu sekitar 10 menit, mengklik
Refresh, dan melihat bahwa penggunaan CPU telah menurun sehingga jumlah Pod di Managed Pods kembali menjadi satu.
Anda telah menguji penskalaan otomatis dan mengamati penskalaan workload.
Menyesuaikan retensi log
Secara default, Cloud Logging menyerap semua log dari cluster GKE Anda. Memasukkan data log dalam jumlah besar dapat dikenai biaya. Untuk memastikan Anda hanya menyerap data log yang diperlukan untuk lingkungan penyiapan, sesuaikan retensi log.
Membuat filter log
-
Di konsol Google Cloud , buka halaman Logs Explorer:
Jika Anda menggunakan kotak penelusuran untuk menemukan halaman ini, pilih hasil yang subjudulnya adalah Logging.
Perhatikan bahwa panel
Query results menampilkan log dari semua resource dalam project Anda. Di atas hasil kueri:
Klik
Resource .Telusuri Kubernetes cluster, lalu klik.
Klik us-central-1.
Klik hello-world-cluster.
Klik Terapkan.
Klik
Tingkat Keseriusan , lalu pilih Info (yang berubah menjadi Info dan lebih tinggi saat kursor diarahkan).Klik
Run query .Perhatikan bahwa Hasil kueri kini hanya berisi pesan INFO dari cluster staging Anda.
Salin kueri dari editor kueri. Anda akan menempelkan kueri ini saat membuat filter untuk sink log.
Untuk membuat bucket penyimpanan dan sink log, klik Berikutnya.
Membuat log sink dan bucket penyimpanan
Buka halaman Router log Logging.
Klik
Create sink .Di bagian Name, masukkan nama berikut:
hello-world-cluster-sink
Klik Berikutnya.
Di Select sink service, pilih Logging bucket.
Di Pilih bucket log, pilih Buat bucket log baru.
Di Detail bucket, masukkan nama unik, seperti:
hello-world-bucket-<var>user-id</var>
Klik Create bucket.
Di bagian Sink destination, klik Next.
Di Buat filter penyertaan, tempel kueri yang Anda buat di Logs Explorer.
Klik Create sink.
Untuk melihat log cluster Anda, yang disimpan di bucket log yang Anda buat, klik Berikutnya.
Melihat log cluster Anda
-
Di konsol Google Cloud , buka halaman Logs Explorer:
Jika Anda menggunakan kotak penelusuran untuk menemukan halaman ini, pilih hasil yang subjudulnya adalah Logging.
Klik
Sempurnakan cakupan .Pilih Log View.
Pilih tampilan _AllLogs untuk bucket log Anda.
Klik Terapkan.
Hasil kueri hanya menampilkan log yang disimpan di bucket log Anda.
Anda telah menyesuaikan retensi log sehingga cluster penyiapan tidak menyimpan pesan DEBUG. Anda dapat menetapkan izin agar hanya pengguna tertentu yang dapat melihat log di bucket cluster Anda.
Mengaktifkan dasbor postur keamanan
Dasbor postur keamanan memindai cluster dan workload GKE Anda untuk memberikan rekomendasi opini yang dapat Anda tindak lanjuti untuk meningkatkan postur keamanan Anda.
Membahas semua kekhawatiran
Buka halaman Postur keamanan GKE.
Jika Anda diminta untuk mengaktifkan Container Security API, klik Enable.
Tab Dasbor merangkum masalah untuk cluster dan workload project Anda.
Klik tab Concerns.
Jika ada masalah yang muncul di tab, klik masalah tersebut untuk mengetahui informasi selengkapnya.
Anda telah menyelesaikan beberapa tugas dasar untuk mengonfigurasi cluster guna melakukan penyiapan dan pengujian aplikasi.
Langkah berikutnya
Hapus data untuk menghindari tagihan. Jika Anda berencana mengikuti tutorial tambahan, tunggu hingga Anda menyelesaikan tutorial tersebut sebelum melakukan pembersihan. Anda dapat menggunakan cluster Kubernetes contoh di sebagian besar tutorial GKE.