Hubungkan kubectl ke sebuah EKS cluster dengan membuat kubeconfig file - Amazon EKS

Bantu tingkatkan halaman ini

Ingin berkontribusi pada panduan pengguna ini? Gulir ke bagian bawah halaman ini dan pilih Edit halaman ini GitHub. Kontribusi Anda akan membantu membuat panduan pengguna kami lebih baik untuk semua orang.

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Hubungkan kubectl ke sebuah EKS cluster dengan membuat kubeconfig file

Dalam topik ini, Anda membuat kubeconfig file untuk klaster Anda (atau memperbarui yang sudah ada).

Alat kubectl baris perintah menggunakan informasi konfigurasi dalam kubeconfig file untuk berkomunikasi dengan API server cluster. Untuk informasi selengkapnya, lihat Mengatur Akses Cluster Menggunakan File kubeconfig di Kubernetes dokumentasi.

Amazon EKS menggunakan aws eks get-token perintah kubectl untuk otentikasi cluster. Secara default, AWS CLI menggunakan kredensil yang sama yang dikembalikan dengan perintah berikut:

aws sts get-caller-identity
Prasyarat
  • EKSCluster Amazon yang ada. Untuk menyebarkan satu, lihatMemulai dengan Amazon EKS.

  • Alat baris kubectl perintah diinstal pada perangkat Anda atau AWS CloudShell. Versi dapat sama dengan atau hingga satu versi minor lebih awal atau lebih lambat dari versi Kubernetes versi cluster Anda. Misalnya, jika versi cluster Anda1.30, Anda dapat menggunakan kubectl versi1.29,1.30, atau 1.31 dengan itu. Untuk menginstal atau memutakhirkan kubectl, lihat Mengatur kubectl dan eksctl.

  • Versi 2.12.3 atau yang lebih baru atau versi 1.27.160 atau yang lebih baru dari AWS Command Line Interface (AWS CLI) diinstal dan dikonfigurasi pada perangkat Anda atau AWS CloudShell. Untuk memeriksa versi Anda saat ini, gunakanaws --version | cut -d / -f2 | cut -d ' ' -f1. Package manager sepertiyum,apt-get, atau Homebrew untuk macOS sering beberapa versi di belakang versi terbaru dari AWS CLI. Untuk menginstal versi terbaru, lihat Menginstal, memperbarui, dan menghapus konfigurasi AWS CLI dan Cepat dengan aws configure di Panduan Pengguna AWS Command Line Interface . AWS CLI Versi yang diinstal AWS CloudShell mungkin juga beberapa versi di belakang versi terbaru. Untuk memperbaruinya, lihat Menginstal AWS CLI ke direktori home Anda di Panduan AWS CloudShell Pengguna.

  • IAMPengguna atau peran dengan izin untuk menggunakan eks:DescribeCluster API tindakan untuk klaster yang Anda tentukan. Untuk informasi selengkapnya, lihat Contoh EKS kebijakan berbasis identitas Amazon. Jika Anda menggunakan identitas Anda sendiri OpenID Connect penyedia untuk mengakses klaster Anda, lalu lihat Menggunakan kubectl di Kubernetes dokumentasi untuk membuat atau memperbarui kube config file Anda.

Buat kubeconfig file secara otomatis

Prasyarat
  • Versi 2.12.3 atau yang lebih baru atau versi 1.27.160 atau yang lebih baru dari AWS Command Line Interface (AWS CLI) diinstal dan dikonfigurasi pada perangkat Anda atau AWS CloudShell. Untuk memeriksa versi Anda saat ini, gunakanaws --version | cut -d / -f2 | cut -d ' ' -f1. Package manager sepertiyum,apt-get, atau Homebrew untuk macOS sering beberapa versi di belakang versi terbaru dari AWS CLI. Untuk menginstal versi terbaru, lihat Menginstal, memperbarui, dan menghapus konfigurasi AWS CLI dan Cepat dengan aws configure di Panduan Pengguna AWS Command Line Interface . AWS CLI Versi yang diinstal AWS CloudShell mungkin juga beberapa versi di belakang versi terbaru. Untuk memperbaruinya, lihat Menginstal AWS CLI ke direktori home Anda di Panduan AWS CloudShell Pengguna.

  • Izin untuk menggunakan eks:DescribeCluster API tindakan untuk cluster yang Anda tentukan. Untuk informasi selengkapnya, lihat Contoh EKS kebijakan berbasis identitas Amazon.

Untuk membuat kubeconfig file Anda dengan AWS CLI
  1. Buat atau perbarui file kubeconfig untuk klaster Anda. Ganti region-code dengan Wilayah AWS cluster Anda dan ganti my-cluster dengan nama cluster Anda.

    aws eks update-kubeconfig --region region-code --name my-cluster

    Secara default, file konfigurasi yang dihasilkan dibuat di kubeconfig jalur default (.kube) di direktori home Anda atau digabungkan dengan config file yang ada di lokasi tersebut. Anda dapat menentukan jalur lain dengan opsi --kubeconfig.

    Anda dapat menentukan IAM peran ARN dengan --role-arn opsi yang akan digunakan untuk otentikasi saat Anda mengeluarkan kubectl perintah. Jika tidak, IAMprinsipal dalam rantai default AWS CLI atau SDK kredensi Anda akan digunakan. Anda dapat melihat default AWS CLI atau SDK identitas Anda dengan menjalankan aws sts get-caller-identity perintah.

    Untuk semua opsi yang tersedia, jalankan aws eks update-kubeconfig help perintah atau lihat update-kubeconfigdi Referensi AWS CLI Perintah.

  2. Uji konfigurasi Anda.

    kubectl get svc

    Contoh output adalah sebagai berikut.

    NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE svc/kubernetes ClusterIP 10.100.0.1 <none> 443/TCP 1m

    Jika Anda menerima kesalahan otorisasi atau jenis sumber daya, lihat Tidak sah atau akses ditolak (kubectl) di topik pemecahan masalah.