Tayang Kubernetes sumber daya di AWS Management Console - Amazon EKS

Bantu tingkatkan halaman ini

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

Ingin berkontribusi pada panduan pengguna ini? Pilih Edit halaman ini pada GitHub tautan yang terletak di panel kanan setiap halaman. 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.

Tayang Kubernetes sumber daya di AWS Management Console

Anda dapat melihat Kubernetes sumber daya yang diterapkan ke cluster Anda dengan. AWS Management Console Anda tidak dapat melihat Kubernetes sumber daya dengan AWS CLI atau eksctl. Untuk melihat Kubernetes resource menggunakan alat baris perintah, gunakan kubectl.

catatan

Untuk melihat tab Resources dan bagian Nodes pada tab Compute di AWS Management Console, prinsipal IAM yang Anda gunakan harus memiliki IAM dan Kubernetes izin. Untuk informasi selengkapnya, lihat Izin yang diperlukan.

  1. Buka konsol Amazon EKS.

  2. Dalam daftar Clusters, pilih cluster yang berisi Kubernetes sumber daya yang ingin Anda lihat.

  3. Pilih tab Sumber Daya.

  4. Pilih grup tipe sumber daya yang ingin Anda lihat sumber daya, seperti Beban kerja. Anda melihat daftar jenis sumber daya di grup itu.

  5. Pilih jenis sumber daya, seperti Deployment, di grup Beban kerja. Anda melihat deskripsi jenis sumber daya, tautan ke Kubernetes dokumentasi untuk informasi selengkapnya tentang jenis sumber daya, dan daftar sumber daya dari jenis tersebut yang digunakan di klaster Anda. Jika daftar kosong, maka tidak ada sumber daya dari jenis itu yang diterapkan ke cluster Anda.

  6. Pilih sumber daya untuk melihat informasi lebih lanjut tentangnya. Coba contoh berikut:

    • Pilih grup Beban kerja, pilih jenis sumber daya Deployment, lalu pilih sumber daya coredns. Ketika Anda memilih sumber daya, Anda berada dalam tampilan Terstruktur, secara default. Untuk beberapa jenis sumber daya, Anda melihat bagian Pod dalam tampilan Terstruktur. Bagian ini mencantumkan Pods dikelola oleh beban kerja. Anda dapat memilih salah satu Pod terdaftar untuk melihat informasi tentang Pod. Tidak semua jenis sumber daya menampilkan informasi dalam Tampilan Terstruktur. Jika Anda memilih tampilan mentah di sudut kanan atas halaman untuk sumber daya, Anda melihat respons JSON lengkap dari Kubernetes API untuk sumber daya.

    • Pilih grup Cluster dan kemudian pilih jenis sumber daya Node. Anda melihat daftar semua node di cluster Anda. Node dapat berupa jenis simpul Amazon EKS. Ini adalah daftar yang sama yang Anda lihat di bagian Nodes ketika Anda memilih tab Compute untuk cluster Anda. Pilih sumber daya node dari daftar. Dalam tampilan Terstruktur, Anda juga melihat bagian Pod. Bagian ini menunjukkan kepada Anda semua Pods berjalan pada node.

Izin yang diperlukan

Untuk melihat tab Resources dan bagian Nodes pada tab Compute di AWS Management Console, prinsipal IAM yang Anda gunakan harus memiliki IAM minimum tertentu dan Kubernetes izin. Selesaikan langkah-langkah berikut untuk menetapkan izin yang diperlukan untuk kepala sekolah IAM Anda.

  1. Pastikan bahwaeks:AccessKubernetesApi, dan izin IAM lain yang diperlukan untuk melihat Kubernetes sumber daya, ditugaskan ke prinsipal IAM yang Anda gunakan. Untuk informasi selengkapnya tentang cara mengedit izin untuk prinsipal IAM, lihat Mengontrol akses untuk prinsipal di Panduan Pengguna IAM. Untuk informasi selengkapnya tentang cara mengedit izin untuk peran, lihat Memodifikasi kebijakan izin peran (konsol) di Panduan Pengguna IAM.

    Contoh kebijakan berikut mencakup izin yang diperlukan untuk dilihat oleh kepala sekolah Kubernetes sumber daya untuk semua cluster di akun Anda. Ganti 111122223333 dengan ID AWS akun Anda.

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "eks:ListFargateProfiles", "eks:DescribeNodegroup", "eks:ListNodegroups", "eks:ListUpdates", "eks:AccessKubernetesApi", "eks:ListAddons", "eks:DescribeCluster", "eks:DescribeAddonVersions", "eks:ListClusters", "eks:ListIdentityProviderConfigs", "iam:ListRoles" ], "Resource": "*" }, { "Effect": "Allow", "Action": "ssm:GetParameter", "Resource": "arn:aws: ssm:*:111122223333:parameter/*" } ] }

    Untuk melihat node dalam cluster yang terhubung, peran IAM konektor Amazon EKS harus dapat meniru prinsipal di cluster. Hal ini memungkinkan Connect a Kubernetes cluster ke Amazon EKS Management Console dengan Amazon EKS Connector untuk memetakan prinsipal ke Kubernetes pengguna.

  2. Buat Kubernetes rolebindingatau clusterrolebinding yang terikat pada Kubernetes roleatau clusterrole yang memiliki izin yang diperlukan untuk melihat Kubernetes sumber daya. Untuk mempelajari lebih lanjut tentang Kubernetes peran dan ikatan peran, lihat Menggunakan Otorisasi RBAC di Kubernetes dokumentasi. Anda dapat menerapkan salah satu manifes berikut ke cluster Anda yang membuat role dan rolebinding atau a clusterrole dan clusterrolebinding dengan yang diperlukan Kubernetes izin:

    Tayang Kubernetes sumber daya di semua ruang nama
    • Nama grup dalam file tersebut adalaheks-console-dashboard-full-access-group. Terapkan manifes ke cluster Anda dengan perintah berikut:

      kubectl apply -f https://s3.us-west-2.amazonaws.com/amazon-eks/docs/eks-console-full-access.yaml
    Tayang Kubernetes sumber daya dalam namespace tertentu
    • Namespace dalam file ini adalah. default Nama grup dalam file tersebut adalaheks-console-dashboard-restricted-access-group. Terapkan manifes ke cluster Anda dengan perintah berikut:

      kubectl apply -f https://s3.us-west-2.amazonaws.com/amazon-eks/docs/eks-console-restricted-access.yaml

      Jika Anda perlu mengubah Kubernetes nama grup, namespace, izin, atau konfigurasi lain dalam file, lalu unduh file dan edit sebelum menerapkannya ke cluster Anda:

      1. Unduh file dengan salah satu perintah berikut:

        curl -O https://s3.us-west-2.amazonaws.com/amazon-eks/docs/eks-console-full-access.yaml
        curl -O https://s3.us-west-2.amazonaws.com/amazon-eks/docs/eks-console-restricted-access.yaml
      2. Edit file seperlunya.

      3. Terapkan manifes ke cluster Anda dengan salah satu perintah berikut:

        kubectl apply -f eks-console-full-access.yaml
        kubectl apply -f eks-console-restricted-access.yaml
  3. Memetakan kepala sekolah IAM ke Kubernetes pengguna atau grup di aws-authConfigMap. Anda dapat menggunakan alat seperti eksctl untuk memperbarui ConfigMap atau Anda dapat memperbaruinya secara manual dengan mengeditnya.

    penting

    Kami merekomendasikan menggunakaneksctl, atau alat lain, untuk mengeditConfigMap. Untuk informasi tentang alat lain yang dapat Anda gunakan, lihat Menggunakan alat untuk membuat perubahan pada aws- authConfigMap dalam panduan praktik terbaik Amazon EKS. Format yang tidak benar aws-auth ConfigMap dapat menyebabkan Anda kehilangan akses ke cluster Anda.

Edit dengan eksctl

  1. Anda memerlukan versi 0.199.0 atau yang lebih baru dari alat baris eksctl perintah yang diinstal pada perangkat Anda atau AWS CloudShell. Untuk menginstal atau memperbaruieksctl, lihat Instalasi dalam eksctl dokumentasi.

  2. Lihat pemetaan saat ini di. ConfigMap Ganti my-cluster dengan nama klaster Anda. Ganti region-code dengan AWS Wilayah tempat klaster Anda berada.

    eksctl get iamidentitymapping --cluster my-cluster --region=region-code

    Contoh output adalah sebagai berikut.

    ARN USERNAME GROUPS ACCOUNT arn:aws: iam::111122223333:role/eksctl-my-cluster-my-nodegroup-NodeInstanceRole-1XLS7754U3ZPA system:node:{{EC2PrivateDNSName}} system:bootstrappers,system:nodes
  3. Tambahkan pemetaan untuk peran. Contoh ini mengasumsikan bahwa Anda melampirkan izin IAM pada langkah pertama ke peran bernama. my-console-viewer-role Ganti 111122223333 dengan ID akun Anda.

    eksctl create iamidentitymapping \ --cluster my-cluster \ --region=region-code \ --arn arn:aws: iam::111122223333:role/my-console-viewer-role \ --group eks-console-dashboard-full-access-group \ --no-duplicate-arns
    penting

    Peran ARN tidak dapat menyertakan jalur seperti. role/my-team/developers/my-role Format ARN harus. arn:aws: iam::111122223333:role/my-role Dalam contoh ini, my-team/developers/ perlu dihapus.

    Contoh output adalah sebagai berikut.

    [...] 2022-05-09 14:51:20 [ℹ] adding identity "arn:aws: iam::111122223333:role/my-console-viewer-role" to auth ConfigMap
  4. Tambahkan pemetaan untuk pengguna. Praktik terbaik IAM menyarankan agar Anda memberikan izin untuk peran, bukan pengguna. Contoh ini mengasumsikan bahwa Anda melampirkan izin IAM pada langkah pertama ke pengguna bernama. my-user Ganti 111122223333 dengan ID akun Anda.

    eksctl create iamidentitymapping \ --cluster my-cluster \ --region=region-code \ --arn arn:aws: iam::111122223333:user/my-user \ --group eks-console-dashboard-restricted-access-group \ --no-duplicate-arns

    Contoh output adalah sebagai berikut.

    [...] 2022-05-09 14:53:48 [ℹ] adding identity "arn:aws: iam::111122223333:user/my-user" to auth ConfigMap
  5. Lihat pemetaan di lagi. ConfigMap

    eksctl get iamidentitymapping --cluster my-cluster --region=region-code

    Contoh output adalah sebagai berikut.

    ARN USERNAME GROUPS ACCOUNT arn:aws: iam::111122223333:role/eksctl-my-cluster-my-nodegroup-NodeInstanceRole-1XLS7754U3ZPA system:node:{{EC2PrivateDNSName}} system:bootstrappers,system:nodes arn:aws: iam::111122223333:role/my-console-viewer-role eks-console-dashboard-full-access-group arn:aws: iam::111122223333:user/my-user eks-console-dashboard-restricted-access-group

Edit ConfigMap secara manual

Untuk informasi selengkapnya tentang menambahkan pengguna atau peran ke dalam aws-authConfigMap, lihatTambahkan prinsipal IAM ke kluster Amazon EKS Anda.

  1. Buka aws-auth ConfigMap untuk mengedit.

    kubectl edit -n kube-system configmap/aws-auth
  2. Tambahkan pemetaan ke aws-authConfigMap, tetapi jangan mengganti pemetaan yang ada. Contoh berikut menambahkan pemetaan antara prinsipal IAM dengan izin ditambahkan pada langkah pertama dan Kubernetes grup yang dibuat pada langkah sebelumnya:

    • my-console-viewer-rolePeran daneks-console-dashboard-full-access-group.

    • my-userPengguna daneks-console-dashboard-restricted-access-group.

      Contoh ini mengasumsikan bahwa Anda melampirkan izin IAM pada langkah pertama ke peran bernama my-console-viewer-role dan nama pengguna. my-user Ganti 111122223333 dengan ID AWS akun Anda.

      apiVersion: v1 data: mapRoles: | - groups: - eks-console-dashboard-full-access-group rolearn: arn:aws: iam::111122223333:role/my-console-viewer-role username: my-console-viewer-role mapUsers: | - groups: - eks-console-dashboard-restricted-access-group userarn: arn:aws: iam::111122223333:user/my-user username: my-user
      penting

      Peran ARN tidak dapat menyertakan jalur seperti. role/my-team/developers/my-console-viewer-role Format ARN harus. arn:aws: iam::111122223333:role/my-console-viewer-role Dalam contoh ini, my-team/developers/ perlu dihapus.

  3. Simpan file, dan tutup editor teks Anda.