Visualizza Kubernetes le risorse in AWS Management Console - Amazon EKS

Aiutaci a migliorare questa pagina

Vuoi contribuire a questa guida per l'utente? Scorri fino alla fine di questa pagina e seleziona Modifica questa pagina su GitHub. I tuoi contributi contribuiranno a rendere la nostra guida utente migliore per tutti.

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Visualizza Kubernetes le risorse in AWS Management Console

Puoi visualizzare le risorse Kubernetes implementate nel cluster utilizzando la AWS Management Console. Non puoi visualizzare Kubernetes le risorse con AWS CLI o eksctl. Per visualizzare le risorse Kubernetes con uno strumento a riga di comando, utilizza kubectl.

Prerequisito

Per visualizzare la scheda Risorse e la sezione Nodi nella scheda Elaborazione di AWS Management Console, l'unità IAMprincipale che stai utilizzando deve disporre di Kubernetes autorizzazioni IAM e specifiche. Per ulteriori informazioni, consulta Autorizzazioni richieste.

Per visualizzare le Kubernetes risorse con AWS Management Console
  1. Apri la EKS console Amazon a https://console.aws.amazon.com/eks/home#/clusters.

  2. Nell'elenco Clusters (Cluster), seleziona il cluster contenente le risorse Kubernetes da visualizzare.

  3. Selezionare la scheda Risorse.

  4. Seleziona un gruppo Resource type (Tipi di risorse) per il quale desideri visualizzare le risorse, ad esempio Workloads (Carichi di lavoro). Viene visualizzato un elenco dei tipi di risorse in tale gruppo.

  5. Seleziona un tipo di risorsa, ad esempio Deployments (Implementazioni), nel gruppo Workloads (Carichi di lavoro). Viene visualizzata una descrizione del tipo di risorsa, un collegamento alla documentazione Kubernetes per ulteriori informazioni sul tipo di risorsa e un elenco di risorse simili implementate nel cluster. Se l'elenco è vuoto, nel cluster non sono presenti risorse appartenenti a quel tipo specifico.

  6. Per visualizzare ulteriori informazioni su una risorsa, selezionarla. Prova gli esempi seguenti:

    • Seleziona il gruppo Workloads (Carichi di lavoro), scegli il tipo di risorsa Deployments (Implementazioni), quindi seleziona la risorsa coredns. Per impostazione predefinita, la selezione di una risorsa avviene in una Visualizzazione strutturata. Per alcuni tipi di risorse, nella Visualizzazione strutturata è presente una sezione Pod, con un elenco dei Pods gestiti dal carico di lavoro. Puoi selezionare qualsiasi Pod presente in elenco per visualizzarne le informazioni. Non tutti i tipi di risorse visualizzano le informazioni nella Visualizzazione strutturata. Se selezioni Raw view nell'angolo in alto a destra della pagina della risorsa, vedrai la JSON risposta completa della pagina relativa alla Kubernetes API risorsa.

    • Seleziona il gruppo Cluster, quindi il tipo di risorsa Nodes (Nodi). Viene visualizzato un elenco di tutti i nodi del cluster. I nodi possono essere di qualsiasi tipo di EKS nodo Amazon. Si tratta dello stesso elenco visualizzato nella sezione Nodes (Nodi) quando si seleziona la scheda Compute (Calcolo) del cluster. Seleziona una risorsa di nodo dall'elenco. Nella Vista strutturata è presente anche la sezione Pod contenente tutti i Pods in esecuzione sul nodo.

Autorizzazioni richieste

Per visualizzare la scheda Risorse e la sezione Nodi nella scheda Elaborazione AWS Management Console, il IAMprincipale che stai utilizzando deve disporre di Kubernetes autorizzazioni IAM e requisiti minimi specifici. Completa i seguenti passaggi per assegnare le autorizzazioni richieste ai tuoi responsabili. IAM

  1. Assicurati che le eks:AccessKubernetesApi autorizzazioni e le altre IAM autorizzazioni necessarie per visualizzare Kubernetes le risorse siano assegnate al IAM principale che stai utilizzando. Per ulteriori informazioni su come modificare le autorizzazioni per un IAM principale, consulta Controllare l'accesso per i principali nella Guida per l'IAMutente. Per ulteriori informazioni su come modificare le autorizzazioni per un ruolo, vedere Modifica dei criteri di autorizzazione di un ruolo (console) nella Guida per l'utente. IAM

    La seguente policy di esempio include le autorizzazioni necessarie affinché un principale possa visualizzare le risorse Kubernetes per tutti i cluster dell'account. Sostituisci 111122223333 con il tuo ID account AWS .

    { "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/*" } ] }

    Per visualizzare i nodi nei cluster connessi, il IAMruolo di Amazon EKS connector dovrebbe essere in grado di impersonare il principale nel cluster. Ciò consente a Connetti un Kubernetes cluster a una console di EKS gestione Amazon con Amazon EKS Connector di mappare il principale a un utente Kubernetes.

  2. Crea un rolebinding o clusterrolebinding Kubernetes associato a un role o clusterrole Kubernetes che abbia le autorizzazioni necessarie per visualizzare le risorse Kubernetes. Per ulteriori informazioni sui Kubernetes ruoli e sulle associazioni di ruoli, consulta Using RBAC Authorization nella documentazione. Kubernetes Puoi applicare al cluster uno dei seguenti manifesti che consentono di creare un role e rolebinding o un clusterrole e clusterrolebinding con le autorizzazioni Kubernetes necessarie:

    Visualizzazione delle risorse Kubernetes in tutti gli spazi dei nomi

    Il nome del gruppo nel file è eks-console-dashboard-full-access-group. Applica il manifesto al cluster con il comando seguente:

    kubectl apply -f https://s3.us-west-2.amazonaws.com/amazon-eks/docs/eks-console-full-access.yaml
    Visualizzazione delle risorse Kubernetes in uno spazio dei nomi specifico

    Lo spazio dei nomi in questo file è default. Il nome del gruppo nel file è eks-console-dashboard-restricted-access-group. Applica il manifesto al cluster con il comando seguente:

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

    Per modificare il nome del gruppo Kubernetes, lo spazio dei nomi, le autorizzazioni o qualsiasi altra configurazione, scarica il file e modificalo prima di applicarlo al cluster:

    1. Scarica il file tramite uno dei comandi seguenti:

      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. Modifica il file in base alle esigenze.

    3. Applica il manifesto al cluster con uno dei comandi seguenti:

      kubectl apply -f eks-console-full-access.yaml
      kubectl apply -f eks-console-restricted-access.yaml
  3. Associa il IAMprincipale all'Kubernetesutente o al gruppo in. aws-auth ConfigMap Per aggiornare ConfigMap puoi usare uno strumento adeguato, ad esempio eksctl, oppure puoi eseguire l'aggiornamento in modo manuale tramite modifica.

    Importante

    Ti consigliamo di utilizzare eksctl, o uno strumento simile, per modificare ConfigMap. Per informazioni su altri strumenti che puoi utilizzare, consulta Utilizzare gli strumenti per apportare modifiche aws-authConfigMap alle guide alle EKS best practice di Amazon. Una formattazione impropria di aws-auth ConfigMap può causare la perdita dell'accesso al cluster.

    eksctl
    Prerequisito

    La versione 0.189.0 o quelle successive dello strumento a riga di comando eksctl deve essere installata sul dispositivo o nella AWS CloudShell. Per l'installazione o l'aggiornamento di eksctl, consulta la sezione Installation nella documentazione di eksctl.

    1. Visualizza le mappature correnti in ConfigMap. Sostituisci my-cluster con il nome del cluster. Sostituiscilo region-code con Regione AWS quello in cui si trova il cluster.

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

      Di seguito viene riportato un output di esempio:

      ARN USERNAME GROUPS ACCOUNT arn:aws:iam::111122223333:role/eksctl-my-cluster-my-nodegroup-NodeInstanceRole-1XLS7754U3ZPA system:node:{{EC2PrivateDNSName}} system:bootstrappers,system:nodes
    2. Aggiungi una mappatura per un ruolo. Questo esempio presuppone che nel primo passaggio siano state associate IAM le autorizzazioni a un ruolo denominatomy-console-viewer-role. Sostituisci 111122223333 con l'ID del tuo account.

      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
      Importante

      Il ruolo non ARN può includere un percorso comerole/my-team/developers/my-role. Il formato del ARN deve esserearn:aws:iam::111122223333:role/my-role. In questo esempio, my-team/developers/ deve essere rimosso.

      Di seguito viene riportato un output di esempio.

      [...]
      2022-05-09 14:51:20 [ℹ]  adding identity "arn:aws:iam::111122223333:role/my-console-viewer-role" to auth ConfigMap
    3. Aggiungi una mappatura per un utente. IAMle migliori pratiche consigliano di concedere le autorizzazioni ai ruoli anziché agli utenti. Questo esempio presuppone che nel primo passaggio IAM le autorizzazioni siano state assegnate a un utente denominato. my-user Sostituisci 111122223333 con l'ID del tuo account.

      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

      Di seguito viene riportato un output di esempio:

      [...]
      2022-05-09 14:53:48 [ℹ]  adding identity "arn:aws:iam::111122223333:user/my-user" to auth ConfigMap
    4. Visualizza nuovamente le mappature nella ConfigMap.

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

      Di seguito viene riportato un output di esempio:

      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 manually

    Per ulteriori informazioni sull'aggiunta degli utenti o dei ruoli a aws-auth ConfigMap, consulta Aggiungi IAM i principali al tuo cluster Amazon EKS.

    1. Apri aws-auth ConfigMap per la modifica.

      kubectl edit -n kube-system configmap/aws-auth
    2. Aggiungi le mappature a aws-auth ConfigMap senza sostituire quelle esistenti. L'esempio seguente aggiunge mappature tra IAMi principali con autorizzazioni aggiunte nel primo passaggio e i Kubernetes gruppi creati nel passaggio precedente:

      • Il ruolo my-console-viewer-role e il eks-console-dashboard-full-access-group.

      • L'utente my-user e il eks-console-dashboard-restricted-access-group.

      Questi esempi presuppongono che nel primo passaggio le IAM autorizzazioni siano state associate a un ruolo denominato e a un utente denominatomy-console-viewer-role. my-user 111122223333Sostituiscilo con l'ID AWS del tuo account.

      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
      Importante

      Il ruolo non ARN può includere un percorso comerole/my-team/developers/my-console-viewer-role. Il formato del ARN deve esserearn:aws:iam::111122223333:role/my-console-viewer-role. In questo esempio, my-team/developers/ deve essere rimosso.

    3. Salva il file ed esci dall'editor di testo.