Tujuan
Pelajari beberapa tugas dasar untuk mengonfigurasi cluster staging dan pengujian:Membatasi akses ke layanan administratif cluster, yang disebut bidang kontrol. Tindakan ini mencegah pengguna yang tidak berwenang melihat atau mengubah setelan cluster dan workload.
Menentukan bahwa aplikasi Anda memerlukan resource komputasi yang meningkatkan dan menurunkan skala secara efisien untuk memenuhi permintaan.
Menguji penskalaan otomatis, yang otomatis mereplikasi Pod saat permintaan meningkat melebihi batas yang Anda tentukan.
Sesuaikan retensi log sehingga Anda hanya menyimpan log yang diperlukan.
Aktifkan dasbor postur keamanan GKE.
Ini hanyalah beberapa tugas untuk mempromosikan cluster mulai dari pengembangan hingga staging. Baca dokumentasi GKE untuk mengetahui daftar lengkap tugas yang perlu dipertimbangkan.
Jika ingin mengikuti panduan langkah demi langkah untuk tugas ini langsung di Konsol Google Cloud, klik Pandu saya:
Biaya
Dalam dokumen ini, Anda menggunakan komponen Google Cloud yang 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
Membuat cluster Kubernetes dan men-deploy beban kerja. Buat cluster dan deploy beban kerja akan menunjukkan caranya.
Membatasi akses ke bidang kontrol
Untuk meningkatkan postur keamanan, hanya izinkan jaringan resmi dan Google Cloud Console serta Cloud Shell untuk mengakses bidang kontrol cluster Anda.
Mengonfigurasi jaringan yang diizinkan
Di Konsol Google Cloud, buka halaman Cluster GKE.
Di kolom Nama, klik nama cluster Anda, hello-world-cluster.
Di baris
Control plan allowed networks pada tabel Networking, klik Edit.Pada dialog Edit kontrol bidang jaringan yang diizinkan, pilih Enable control pesawat allowed networks.
Pilih Izinkan akses melalui alamat IP publik Google Cloud.
Hal ini memungkinkan Anda untuk mengelola cluster dari Google Cloud Console dan Cloud Shell
Klik Add authorized network.
Masukkan nama, seperti Contoh jaringan lokal saya.
Di Jaringan, 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 Done.
Klik Simpan perubahan.
Operasi ini membutuhkan waktu beberapa menit hingga selesai.
Klik tombol
Notifications dan tunggu hingga Anda melihat tanda centang hijau di samping Update control pesawat allowed networks setting 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 Google Cloud (yang memungkinkan Anda mengelola cluster dari Konsol Google Cloud dan Cloud Shell).
Untuk melihat alamat IP bidang kontrol cluster dan mengonfirmasi alamat jaringan yang diizinkan, klik Next.
Melihat alamat IP
Buka halaman Cluster GKE.
Di kolom Nama, klik nama cluster Anda, hello-world-cluster.
Di tabel Dasar-dasar cluster, baris Endpoint eksternal menampilkan alamat IP bidang kontrol cluster.
Dalam tabel Networking, baris Jaringan yang diizinkan bidang kontrol menampilkan alamat IP jaringan yang Anda beri otorisasi.
Bidang kontrol cluster Anda sekarang hanya dapat diakses dari jaringan yang diizinkan, yaitu Google Cloud Console, dan Cloud Shell.
Menentukan class komputasi
Secara default, Pod Autopilot GKE menggunakan resource komputasi yang dioptimalkan untuk workload tujuan umum. Untuk beban kerja yang perlu diskalakan secara optimal atau yang memiliki persyaratan unik lainnya, Anda dapat menentukan class komputasi yang berbeda.
Memperbarui 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 di 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 untuk konfigurasi workload lain, klik
Download .Klik Simpan.
Setiap replika Pod yang dibuat untuk menjalankan beban kerja Anda akan menggunakan class komputasi yang ditentukan.
Menguji penskalaan otomatis
Setelah Anda memiliki beban kerja yang dapat diskalakan secara efisien, perbarui setelan penskalaan otomatis agar lebih mudah untuk meningkatkan skala beban kerja Anda. Kemudian, buat beban untuk memicu penskalaan otomatis.
Mengupdate setelan penskalaan otomatis Pod
Buka halaman Workloads GKE.
Di kolom Name, klik nama deployment Anda, hello-world-app.
Klik
Tindakan .Pilih Autoscale, lalu klik Penskalaan otomatis pod horizontal.
Dalam dialog Configure Horizontal Pod Autoscaler, di bagian Autoscaling metrics, klik CPU.
Ubah nilai Target ke 2, yang otomatis meningkatkan skala Pod Anda saat menggunakan setidaknya 2% dari resource CPU yang dikonfigurasi. Nilai target rendah ini memastikan Anda dapat memicu penskalaan otomatis dengan mudah di langkah berikutnya.
Klik Simpan.
Untuk memicu penskalaan otomatis, klik Next.
Buat 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
Endpoint .Tekan Enter untuk menjalankan perintah dan mengirim 10.000 permintaan ke hello-world-app.
Tunggu hingga perintah
wget
selesai berjalan dan permintaan command line muncul kembali.Anda dapat menutup Cloud Shell setelah perintah
wget
selesai.
Untuk melihat skala beban kerja Anda guna mengakomodasi peningkatan traffic, klik Berikutnya.
Perhatikan skala workload Anda
Di halaman Detail deployment untuk beban kerja Anda, lihat diagram
CPU untuk mengetahui lonjakan penggunaan CPU.Anda mungkin perlu menunggu hingga 5 menit untuk melihat lonjakan.
Klik
Refresh untuk memastikan halaman Detail deployment menampilkan data terbaru.Lihat tabel Pod Terkelola untuk mengetahui bahwa tiga replika beban kerja Anda kini berjalan.
Awalnya, Anda mungkin melihat error tentang Pod yang tidak dapat dijadwalkan, tetapi pesan ini bersifat sementara saat replika dimulai.
Anda dapat menunggu selama sekitar 10 menit, klik
Refresh, dan lihat apakah penggunaan CPU telah menurun sehingga jumlah Pod dalam Pod Terkelola akan kembali ke satu.
Anda telah menguji penskalaan otomatis dan mengamati skala workload Anda.
Menyesuaikan retensi log
Secara default, Cloud Logging menyerap semua log dari cluster GKE Anda. Menyerap data log dalam jumlah besar dapat menimbulkan biaya. Untuk memastikan bahwa Anda hanya menyerap data log yang diperlukan untuk lingkungan staging, sesuaikan retensi log.
Membuat filter log
-
Pada panel navigasi Google Cloud Console, pilih Logging, lalu pilih Logs Explorer:
Perhatikan bahwa panel
Query results menampilkan log dari semua resource dalam project Anda. Di atas hasil kueri:
Klik
Resource .Cari cluster Kubernetes, lalu klik cluster tersebut.
Klik us-central-1.
Klik hello-world-cluster.
Klik Apply.
Klik
Tingkat Keparahan , lalu pilih Info (yang akan berubah menjadi Info dan lebih tinggi saat kursor diarahkan).Klik
Jalankan kueri .Perlu diperhatikan bahwa Query results kini hanya berisi pesan INFO dari cluster staging.
Salin kueri dari editor kueri. Anda akan menempelkan kueri ini saat membuat filter untuk sink log.
Untuk membuat sink log dan bucket penyimpanan, klik Next.
Membuat sink log dan bucket penyimpanan
Buka halaman Router log Logging.
Klik
Buat sink .Pada bagian Name, masukkan nama berikut:
hello-world-cluster-sink
Klik Next.
Di Select sink service, pilih Logging bucket.
Di bagian Select a log bucket, pilih Create new log bucket.
Di Detail bucket, masukkan nama unik, seperti:
hello-world-bucket-<var>user-id</var>
Klik Create bucket.
Di bagian Sink destination, klik Next.
Di Build filter penyertaan, tempel kueri yang Anda buat di Logs Explorer.
Klik Buat sink.
Untuk melihat log di bucket cluster Anda, klik Next.
Melihat log cluster Anda
-
Pada panel navigasi Google Cloud Console, pilih Logging, lalu pilih Logs Explorer:
Klik
Pertajam cakupan .Pilih Cakupan menurut penyimpanan.
Pilih
/bucket-name .Klik Apply.
Hasil kueri hanya menampilkan log yang disimpan di bucket cluster Anda.
Anda telah menyesuaikan retensi log sehingga cluster staging Anda tidak menyimpan pesan DEBUG. Anda dapat menetapkan izin sehingga hanya pengguna tertentu yang dapat melihat log di bucket cluster Anda.
Aktifkan dasbor postur keamanan
Dasbor postur keamanan memindai cluster GKE dan workload untuk memberikan rekomendasi opini yang dapat ditindaklanjuti dan dapat meningkatkan postur keamanan Anda.
Jelajahi masalah apa pun
Buka halaman Postur keamanan GKE.
Jika Anda diminta untuk mengaktifkan Container Security API, klik Enable.
Tab Dashboards merangkum masalah untuk cluster dan workload project Anda.
Klik tab Concerns.
Jika ada masalah yang muncul di tab, klik masalah tersebut untuk informasi selengkapnya.
Anda telah menyelesaikan beberapa tugas dasar guna mengonfigurasi cluster untuk staging dan menguji aplikasi.
Langkah selanjutnya
Pembersihan untuk menghindari biaya penagihan. Jika Anda berencana untuk mengikuti tutorial tambahan, tunggu hingga Anda menyelesaikan tutorial tersebut sebelum melanjutkannya. Anda dapat menggunakan sampel cluster Kubernetes di sebagian besar tutorial GKE.