Tentang Kubeconfig
Halaman ini ditujukan bagi administrator dan Operator TI yang ingin menyiapkan, memantau, dan mengelola infrastruktur cloud. Untuk mempelajari lebih lanjut peran umum dan contoh tugas yang kami referensikan dalam Google Cloud konten, lihat Peran dan tugas pengguna GKE umum.
File konfigurasi Kubernetes
Kubernetes menggunakan file YAML bernama
kubeconfig
guna menyimpan informasi autentikasi cluster untuk kubectl. kubeconfig berisi daftar konteks yang dirujuk kubectl saat menjalankan perintah. Secara default, file disimpan di $HOME/.kube/config.
Konteks adalah grup parameter akses. Setiap konteks berisi cluster Kubernetes, pengguna, dan namespace. Konteks saat ini adalah cluster yang saat ini menjadi default untuk kubectl: semua perintah kubectl dijalankan pada cluster tersebut.
Setelah membuat cluster, ikuti
Membuat entri kubeconfig
untuk menambahkan konteks cluster ke kubeconfig lokal Anda.
Endpoint pribadi
Semua cluster memiliki endpoint kanonis. Endpoint ini mengekspos server Kubernetes API yang digunakan kubectl dan layanan lainnya untuk berkomunikasi dengan bidang kontrol cluster Anda melalui port TCP 443. Di Azure, endpoint ini
adalah
satu IP pribadi yang didukung oleh load balancer internal
—misalnya 10.0.1.5. Endpoint ini tidak dapat diakses di internet publik. Anda bisa mendapatkan alamat endpoint cluster pribadi dari kolom endpoint dalam output perintah
gcloud container azure clusters describe.
Endpoint gateway Connect
Secara default, perintah gcloud container azure clusters get-credentials
menghasilkan kubeconfig yang menggunakan
gateway Connect. Dengan kubeconfig ini, kubectl menggunakan Connect, yang kemudian meneruskan traffic secara aman ke endpoint pribadi atas nama Anda. Saat Anda menggunakan gateway Connect,
endpoint akan terlihat seperti
https://connectgateway.googleapis.com/v1/projects/PROJECT_NUMBER/memberships/CLUSTER_NAME,
dengan PROJECT_NUMBER adalah nomor project Anda dan
CLUSTER_NAME adalah nama cluster Anda.
Jika memiliki akses ke endpoint pribadi cluster melalui VNet, Anda dapat terhubung langsung ke endpoint pribadi. Untuk
membuat kubeconfig menggunakan endpoint pribadi, gunakan
gcloud container azure clusters get-credentials --private-endpoint
perintah.
Tentang autentikasi untuk kubectl
Semua GKE di Azure dikonfigurasi untuk menerima Google Cloud
identitas pengguna dan akun layanan, dengan memvalidasi kredensial yang diberikan oleh
kubectl dan mengambil alamat email yang terkait dengan identitas pengguna atau akun
layanan. Oleh karena itu, kredensial untuk akun tersebut harus menyertakan cakupan OAuth userinfo.email agar berhasil mengautentikasi.
Saat Anda menggunakan gcloud guna menyiapkan kubeconfig lingkungan untuk cluster baru atau yang sudah ada, gcloud memberi kubectl kredensial yang sama dengan yang digunakan oleh gcloud sendiri. Misalnya, jika Anda menggunakan gcloud auth login, kredensial pribadi Anda diberikan ke kubectl, termasuk cakupan userinfo.email. Hal ini memungkinkan GKE di Azure mengautentikasi klien kubectl.
Setelah pengguna atau Google Cloud akun layanan diautentikasi, keduanya juga harus diizinkan untuk melakukan tindakan apa pun di GKE di Azure. Admin cluster bertanggung jawab untuk menyiapkan Kontrol Akses Berbasis Peran yang sesuai untuk mengonfigurasi otorisasi.