Di GKE di Bare Metal, cluster pengguna menjalankan workload Anda, dan dalam arsitektur multi-cluster, cluster pengguna dibuat dan dikelola oleh cluster admin.
Setelah membuat cluster admin, memanggil perintah bmctl create config
akan membuat file YAML yang dapat Anda edit untuk menentukan cluster pengguna. Untuk menerapkan
konfigurasi dan membuat cluster pengguna, gunakan
perintah bmctl create cluster
. Pemeriksaan preflight berlaku untuk cluster pengguna yang dibuat dengan
perintah bmctl create cluster
.
Menghilangkan beban kerja dari cluster admin akan melindungi data administratif yang sensitif, seperti kunci SSH yang disimpan di cluster admin, dari data administratif yang tidak memerlukan akses ke informasi tersebut. Selain itu, memisahkan cluster pengguna dari satu sama lain akan memberikan keamanan umum yang baik untuk workload Anda.
Prasyarat
bmctl
terbaru didownload (gs://anthos-baremetal-release/bmctl/1.15.11/linux-amd64/bmctl
) dari Cloud Storage.- Cluster admin yang berfungsi dengan akses ke server API cluster (
controlPlaneVIP
). - Node cluster admin memiliki konektivitas jaringan ke semua node di cluster pengguna target.
- Workstation yang menjalankan
bmctl
memiliki konektivitas jaringan ke semua node di cluster pengguna target. - Workstation admin dapat membuat koneksi SSH ke setiap node cluster pengguna.
- Akun layanan Connect-register dikonfigurasi di cluster admin untuk digunakan dengan Connect.
Aktifkan SELinux
Jika ingin mengaktifkan SELinux untuk mengamankan penampung, Anda harus memastikan bahwa SELinux diaktifkan dalam mode Enforced
di semua mesin host. Mulai
GKE pada rilis Bare Metal 1.9.0 atau yang lebih baru, Anda dapat mengaktifkan atau menonaktifkan SELinux
sebelum atau setelah pembuatan cluster atau upgrade cluster. SELinux diaktifkan secara default di Red Hat Enterprise Linux (RHEL) dan CentOS. Jika SELinux dinonaktifkan di
mesin host atau Anda tidak yakin, lihat
Mengamankan container menggunakan SELinux
untuk mengetahui petunjuk cara mengaktifkannya.
GKE di Bare Metal mendukung SELinux hanya di sistem RHEL dan CentOS.
Membuat file konfigurasi cluster pengguna
File konfigurasi untuk membuat cluster pengguna hampir sama persis dengan
file yang digunakan untuk membuat cluster admin. Satu-satunya perbedaan adalah Anda menghapus bagian konfigurasi kredensial lokal agar konfigurasi menjadi kumpulan resource Kubernetes yang valid. Bagian konfigurasi berada di atas
file pada bagian bmctl configuration variables
. Untuk mengetahui contoh konfigurasi cluster pengguna, lihat Cluster pengguna
dalam contoh konfigurasi Cluster.
Secara default, cluster pengguna mewarisi kredensialnya dari cluster admin yang mengelolanya. Anda dapat mengganti sebagian atau semua kredensial ini secara selektif.
Buat file konfigurasi cluster pengguna dengan perintah
bmctl create config
:bmctl create config -c USER_CLUSTER_NAME
Misalnya, berikan perintah berikut untuk membuat file konfigurasi bagi cluster pengguna bernama
user1
:bmctl create config -c user1
File ditulis ke
bmctl-workspace/user1/user1.yaml
. Jalur generik ke file tersebut adalahbmctl-workspace/CLUSTER NAME/CLUSTER_NAME.yaml
.Edit file konfigurasi dengan perubahan berikut:
Hapus jalur file kredensial lokal dari konfigurasi:
...
gcrKeyPath: (path to GCR service account key)sshPrivateKeyPath: (path to SSH private key, used for node access)gkeConnectAgentServiceAccountKeyPath: (path to Connect agent service account key)gkeConnectRegisterServiceAccountKeyPath: (path to Hub registration service account key)cloudOperationsServiceAccountKeyPath: (path to Cloud Operations service account key)...Ubah konfigurasi untuk menentukan jenis cluster
user
, bukanadmin
:... spec: # Cluster type. This can be: # 1) admin: to create an admin cluster. This can later be used to create # user clusters. # 2) user: to create a user cluster. Requires an existing admin cluster. # 3) hybrid: to create a hybrid cluster that runs admin cluster # components and user workloads. # 4) standalone: to create a cluster that manages itself, runs user # workloads, but does not manage other clusters. type: user ...
Daftarkan cluster Anda ke fleet dengan menentukan project ID Anda di kolom
gkeConnect.projectID
. Project ini disebut sebagai project host armada.... gkeConnect: projectID: my-project-123 ...
Tentukan alamat IP node bidang kontrol.
... # Sample control plane config controlPlane: nodePoolSpec: nodes: - address: 10.200.0.20 ...
Pastikan spesifikasi cluster pengguna dan admin untuk VIP load balancer dan kumpulan alamat bersifat komplementer, dan tidak tumpang-tindih dengan cluster yang sudah ada. Contoh pasangan konfigurasi cluster admin dan pengguna, yang menentukan load balancing dan kumpulan alamat, ditampilkan di bawah ini:
... # Sample admin cluster config for load balancer and address pools loadBalancer: vips: controlPlaneVIP: 10.200.0.49 ingressVIP: 10.200.0.50 addressPools: - name: pool1 addresses: - 10.200.0.50-10.200.0.70 ... ... # Sample user cluster config for load balancer and address pools loadBalancer: vips: controlPlaneVIP: 10.200.0.71 ingressVIP: 10.200.0.72 addressPools: - name: pool1 addresses: - 10.200.0.72-10.200.0.90 ...
File konfigurasi cluster pengguna lainnya sama dengan konfigurasi cluster admin.
Tentukan kepadatan pod node cluster:
... # NodeConfig specifies the configuration that applies to all nodes in the cluster. nodeConfig: # podDensity specifies the pod density configuration. podDensity: # maxPodsPerNode specifies at most how many pods can be run on a single node. maxPodsPerNode: 110 ...
Untuk cluster pengguna, nilai yang diizinkan untuk
maxPodsPerNode
adalah32-250
. Nilai default jika tidak ditentukan adalah110
. Setelah cluster dibuat, nilai ini tidak dapat diperbarui.Kepadatan pod juga dibatasi oleh resource IP cluster yang tersedia. Untuk mengetahui detailnya, lihat Networking Pod.
Membuat cluster pengguna
Berikan perintah bmctl
untuk menerapkan konfigurasi cluster pengguna dan membuat
cluster:
bmctl create cluster -c USER_CLUSTER_NAME --kubeconfig ADMIN_KUBECONFIG
Ganti kode berikut:
USER_CLUSTER_NAME
: nama cluster yang dibuat di bagian sebelumnya.ADMIN_KUBECONFIG
: jalur ke file kubeconfig cluster admin.
Misalnya, untuk cluster pengguna bernama user1
, dan file kubeconfig cluster admin dengan jalur kubeconfig bmctl-workspace/admin/admin-kubeconfig
, perintahnya adalah:
bmctl create cluster -c user1 --kubeconfig bmctl-workspace/admin/admin-kubeconfig
Contoh konfigurasi cluster pengguna
Untuk mengetahui contoh konfigurasi cluster pengguna, baca Cluster pengguna dalam contoh konfigurasi Cluster.