Google Kubernetes Engine adalah pengelola cluster dan sistem orkestrasi yang canggih untuk menjalankan container Docker. GKE menjadwalkan container Anda ke dalam cluster dan mengelolanya secara otomatis berdasarkan persyaratan yang Anda tentukan (seperti CPU dan memori). Layanan ini dibangun di sistem Kubernetes open source, yang memberi Anda fleksibilitas untuk memanfaatkan infrastruktur lokal, hybrid, atau cloud publik.
Baca referensi Tools for PowerShell untuk mempelajari cmdlet GKE lebih lanjut. Untuk mempelajari lebih lanjut GKE secara umum, baca Ringkasan GKE.
Membuat dan mengupdate cluster GKE
Anda dapat membuat cluster dengan membuat objek NodeConfig
terlebih dahulu menggunakan cmdlet New-GkeNodeConfig
.
Setelah itu, Anda dapat meneruskan objek NodeConfig
ke cmdlet Add-GkeCluster
. Kemudian, sistem akan membuat
cluster dengan kumpulan node yang konfigurasinya akan ditetapkan dari
objek NodeConfig
.
# Creates a GKE Node Config with image type CONTAINER_VM # and 20 GB disk size for each node. $nodeConfig = New-GkeNodeConfig -DiskSizeGb 20 ` -ImageType CONTAINER_VM # Creates a cluster named "my-cluster" in the default zone of the # default project using config $nodeConfig and network "my-network". Add-GkeCluster -NodeConfig $nodeConfig ` -ClusterName "my-cluster" ` -Network "my-network"
Daripada meneruskan objek NodeConfig
, Anda juga dapat menggunakan parameter yang disediakan di cmdlet Add-GkeCluster
untuk membuat cluster (objek NodeConfig
akan dibuat secara internal oleh cmdlet).
# Creates a cluster named "my-cluster" with description "my new cluster" # in the default zone of the default project using machine type # "n1-standard-4" for each Compute Engine in the cluster. # The cluster will use the subnetwork "my-subnetwork". # The cluster's nodes will have autoupgrade enabled. # The cluster will also autoscale its node pool to a maximum of 2 nodes. Add-GkeCluster -MachineType "n1-standard-4" ` -ClusterName "my-cluster" ` -Description "My new cluster" ` -Subnetwork "my-subnetwork" ` -EnableAutoUpgrade ` -MaximumNodesToScaleTo 2
Anda dapat mengupdate cluster dengan Set-GkeCluster
cmdlet. Hanya satu properti cluster yang dapat diperbarui dalam satu waktu.
# Sets additional zones of cluster "my-cluster" in zone "asia-east1-a"
# to zones "asia-east1-b" and "asia-east1-c". This means the clusters will
# have nodes created in these zones. The primary zone
# ("asia-east1-a" in this case) will be added to the
# AdditionalZone
array by the cmdlet.
Set-GkeCluster -ClusterName "my-cluster" `
-Zone "asia-east1-a" `
-AdditionalZone "asia-east1-b", "asia-east1-c"
Anda dapat mencantumkan cluster yang tersedia dengan Get-GkeCluster
cmdlet.
# Lists all container clusters in the default project. Get-GkeCluster # List all container clusters in zone "us-central1-a" # of the default project. Get-GkeCluster -Zone "us-central1-a"
Membuat dan Memelihara Kumpulan Node
Kumpulan node adalah subset mesin dalam cluster yang semuanya memiliki konfigurasi yang sama. Meskipun semua node dalam cluster container identik, kumpulan node memungkinkan Anda membuat kumpulan mesin dalam cluster yang memiliki konfigurasi berbeda. Misalnya, Anda dapat membuat kumpulan node di cluster yang memiliki SSD lokal atau ukuran instance yang lebih besar. Oleh karena itu, kumpulan node berguna untuk menyesuaikan profil instance di cluster Anda.
Untuk menambahkan kumpulan node ke cluster, pertama-tama Anda dapat membuat objek NodePool
dengan cmdlet New-GkeNodePool
. Anda kemudian dapat memanggil cmdlet Add-GkeNodePool
untuk menambahkan objek NodePool
ke cluster.
# Creates a node pool named "my-nodepool" with image type # CONTAINER_VM for each node. $nodePool = New-GkeNodePool -NodePoolName "my-nodepool" ` -ImageType CONTAINER_VM # Adds the pool to cluster "my-cluster". Add-GkeNodePool -NodePool $nodePool -Cluster "my-cluster"
Anda dapat mencantumkan semua kumpulan node dalam cluster dengan cmdlet Get-GkeNodePool
.
# Lists all node pools in cluster "my-cluster" in the default project. Get-GkeNodePool -ClusterName "my-cluster"
Anda dapat menghapus kumpulan node dari cluster dengan Remove-GkeCluster
cmdlet.
# Removes the node pool "my-nodepool" in cluster "my-cluster" # in the zone "us-west1-b" of the default project. Remove-GkeCluster -ClusterName "my-cluster" ` -Zone "us-west1-b" ` -NodePoolName "my-nodepool"