Tentang Kubeconfig
Halaman ini ditujukan bagi administrator dan Operator IT 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
Buat 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
IP pribadi tunggal yang didukung oleh load balancer
yang menghadap ke internal—misalnya 10.0.1.5. Endpoint ini tidak
dapat diakses di internet publik. Anda bisa mendapatkan alamat endpoint cluster pribadi dari kolom endpoint di output perintah gcloud container azure clusters describe.
Endpoint gateway penghubung
Secara default, perintah gcloud container azure clusters get-credentials
membuat kubeconfig yang menggunakan
gateway Connect. Dengan
kubeconfig ini, kubectl menggunakan Connect, yang kemudian meneruskan
traffic ke endpoint pribadi secara aman 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
perintah
gcloud container azure clusters get-credentials --private-endpoint.
Tentang autentikasi untuk kubectl
Semua GKE di Azure dikonfigurasi untuk menerima identitas pengguna dan akun layanan Google Cloud, 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 untuk menyiapkan kubeconfig lingkungan Anda 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. Langkah ini memungkinkan
GKE di Azure untuk 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.