

 **Ajudar a melhorar esta página** 

Para contribuir com este guia de usuário, escolha o link **Editar esta página no GitHub**, disponível no painel direito de cada página.

# Visualize os recursos do Kubernetes na seção Console de gerenciamento da AWS
<a name="view-kubernetes-resources"></a>

É possível visualizar os recursos do Kubernetes implantados no seu cluster com o Console de gerenciamento da AWS. Não é possível visualizar os recursos do Kubernetes com a AWS CLI ou o [eksctl](https://eksctl.io/). Para visualizar os recursos do Kubernetes usando uma ferramenta de linha de comando, use [kubectl](install-kubectl.md).

**nota**  
Para visualizar a guia **Recursos** e a seção **Nós** na guia **Computação** no Console de gerenciamento da AWS, a [entidade principal do IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html#iam-term-principal) que você está usando deve ter permissões específicas do IAM e do Kubernetes. Para obter mais informações, consulte [Permissões obrigatórias](#view-kubernetes-resources-permissions).

1. Abra o [console do Amazon EKS](https://console.aws.amazon.com/eks/home#/clusters).

1. Na lista **Clusters**, escolha o cluster que contém os recursos do Kubernetes que você deseja visualizar.

1. Selecione a guia **Recursos**.

1. Selecione um grupo **Resource type** (Tipo de recurso) cujos recursos você deseja visualizar, como **Workloads**. Você visualizará uma lista de tipos de recursos nesse grupo.

1. Selecione um tipo de recurso, como **Deployments** (Implantações), no grupo **Workloads**. Você verá uma descrição do tipo de recurso, um link para a documentação do Kubernetes para obter mais informações sobre esse tipo, bem como uma lista de recursos desse tipo implantados no cluster. Se essa lista estiver vazia, significa que não há recursos desse tipo implantados no cluster.

1. Selecione um recurso para exibir mais informações sobre ele. Teste os exemplos a seguir:
   + Selecione o grupo **Workloads**, escolha o tipo de recurso **Deployments** (Implantações) e depois selecione o recurso **coredns**. Por padrão, ao selecionar um recurso, você está em **Structured view** (Visualização estruturada). Para alguns tipos de recursos, há uma seção **Pods** em **Structured view** (Visualização estruturada). Esta seção lista os pods gerenciados pela workload. É possível selecionar qualquer pod listado para visualizar as informações sobre o pod. Nem todos os tipos de recursos mostram informações em **Structured view** (Visualização estruturada). Se a opção **Raw view** (Visualização bruta) for selecionada no canto superior direito da página do recurso, será possível ver a resposta JSON completa da API do Kubernetes para esse recurso.
   + Selecione o grupo **Cluster** e depois o tipo de recurso **Nodes** (Nós). Você verá uma lista com todos os nós do seu cluster. Esses nós podem ser de qualquer [Tipo de nó do Amazon EKS](eks-compute.md). Esta é a mesma lista visível na seção **Nodes** (Nós) ao selecionar a guia **Compute** (Computação) do seu cluster. Escolha um recurso de nó da lista. Em **Structured view** (Visualização estruturada), também é possível ver uma seção **Pods**. Esta seção mostra todos os pods em execução no nó.

## Permissões obrigatórias
<a name="view-kubernetes-resources-permissions"></a>

Para visualizar a guia **Recursos** e a seção **Nós** na guia **Computação** no Console de gerenciamento da AWS, a [entidade principal do IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html#iam-term-principal) que você está usando deve ter permissões mínimas específicas do IAM e do Kubernetes. É necessário ter as permissões de RBAC do IAM e do Kubernetes configuradas corretamente. Conclua as seguintes etapas para atribuir as permissões necessárias às entidades principais do IAM.

1. Verifique se `eks:AccessKubernetesApi` e as outras permissões necessárias do IAM para visualizar os recursos do Kubernetes estão atribuídas à entidade principal do IAM que você está usando. Para obter mais informações sobre como editar permissões para uma entidade principal do IAM, consulte [Controle de acesso das entidades principais](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_controlling.html#access_controlling-principals) no Guia do usuário do IAM. Para saber mais sobre como editar as permissões de um perfil, consulte [Modificar a política de permissões de um perfil (console)](https://docs.aws.amazon.com/IAM/latest/UserGuide/roles-managingrole-editing-console.html#roles-modify_permissions-policy), no Guia do usuário do IAM.

   O exemplo de política a seguir inclui as permissões necessárias para uma entidade principal visualizar os recursos do Kubernetes de todos os clusters da conta. Substitua *111122223333* pelo ID de sua conta da 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/*"
           }
       ]
   }
   ```

   Para visualizar nós em [clusters conectados](eks-connector.md), o [perfil do IAM do conector do Amazon EKS](connector-iam-role.md) deve ser capaz de representar a entidade principal no cluster. Isso permite que o [Amazon EKS Connector](eks-connector.md) mapeie a entidade principal para um usuário do Kubernetes.

1. Configure as permissões de RBAC do Kubernetes usando entradas de acesso do EKS.

    **O que são entradas de acesso ao EKS?** 

   As entradas de acesso do EKS são uma forma simplificada de conceder às entidades principais do IAM (usuários e perfis) acesso ao seu cluster de Kubernetes. Em vez de gerenciar manualmente os recursos de RBAC do Kubernetes e o `aws-auth` ConfigMap, as entradas de acesso lidam automaticamente com o mapeamento entre as permissões do IAM e do Kubernetes usando políticas gerenciadas fornecidas pela AWS. Para obter informações detalhadas sobre as entradas de acesso, consulte [Conceder aos usuários do IAM acesso ao Kubernetes com entradas de acesso ao EKS](access-entries.md). Para obter informações sobre as políticas de acesso disponíveis e suas permissões, consulte [Permissões da política de acesso](https://docs.aws.amazon.com/eks/latest/userguide/access-policy-permissions.html).

   É possível conceder permissões do Kubernetes às entradas de acesso de duas maneiras:
   +  **Use uma política de acesso:** as políticas de acesso são modelos de permissões do Kubernetes definidos previamente e mantidos pela AWS. Eles pela conceituação de conjuntos de permissões padronizados para casos de uso comuns.
   +  **Referencie um grupo de Kubernetes**: se você associar uma identidade do IAM a um grupo do Kubernetes, será possível criar recursos do Kubernetes que concedam permissões ao grupo. Para obter mais informações, consulte [Usar a autorização de RBAC](https://kubernetes.io/docs/reference/access-authn-authz/rbac/) na documentação do Kubernetes.

     1. Crie uma entrada de acesso para sua entidade principal do IAM usando a CLI da AWS. Substitua *my-cluster* pelo nome do cluster. Substitua *111122223333* pelo ID da sua conta.

        ```
        aws eks create-access-entry \
            --cluster-name my-cluster \
            --principal-arn arn:aws:iam::111122223333:role/my-console-viewer-role
        ```

        Veja abaixo um exemplo de saída.

        ```
        {
            "accessEntry": {
                "clusterName": "my-cluster",
                "principalArn": "arn:aws:iam::111122223333:role/my-console-viewer-role",
                "kubernetesGroups": [],
                "accessEntryArn": "arn:aws:eks:region-code:111122223333:access-entry/my-cluster/role/111122223333/my-console-viewer-role/abc12345-1234-1234-1234-123456789012",
                "createdAt": "2024-03-15T10:30:45.123000-07:00",
                "modifiedAt": "2024-03-15T10:30:45.123000-07:00",
                "tags": {},
                "username": "arn:aws:iam::111122223333:role/my-console-viewer-role",
                "type": "STANDARD"
            }
        }
        ```

     1. Associe uma política à entrada de acesso. Para visualizar os recursos do Kubernetes, use a `AmazonEKSViewPolicy`:

        ```
        aws eks associate-access-policy \
            --cluster-name my-cluster \
            --principal-arn arn:aws:iam::111122223333:role/my-console-viewer-role \
            --policy-arn arn:aws:eks::aws:cluster-access-policy/AmazonEKSViewPolicy \
            --access-scope type=cluster
        ```

        Veja abaixo um exemplo de saída.

        ```
        {
            "clusterName": "my-cluster",
            "principalArn": "arn:aws:iam::111122223333:role/my-console-viewer-role",
            "associatedAt": "2024-03-15T10:31:15.456000-07:00"
        }
        ```

        Para acesso específico do namespace, é possível definir o escopo da política para namespaces específicos:

        ```
        aws eks associate-access-policy \
            --cluster-name my-cluster \
            --principal-arn arn:aws:iam::111122223333:role/my-console-viewer-role \
            --policy-arn arn:aws:eks::aws:cluster-access-policy/AmazonEKSViewPolicy \
            --access-scope type=namespace,namespaces=default,kube-system
        ```

     1. Verifique se a entrada de acesso foi criada com êxito:

        ```
        aws eks describe-access-entry \
            --cluster-name my-cluster \
            --principal-arn arn:aws:iam::111122223333:role/my-console-viewer-role
        ```

     1. Liste as políticas associadas para confirmar a associação da política:

        ```
        aws eks list-associated-access-policies \
            --cluster-name my-cluster \
            --principal-arn arn:aws:iam::111122223333:role/my-console-viewer-role
        ```

        Veja abaixo um exemplo de saída.

        ```
        {
            "associatedAccessPolicies": [
                {
                    "policyArn": "arn:aws:eks::aws:cluster-access-policy/AmazonEKSViewPolicy",
                    "accessScope": {
                        "type": "cluster"
                    },
                    "associatedAt": "2024-03-15T10:31:15.456000-07:00",
                    "modifiedAt": "2024-03-15T10:31:15.456000-07:00"
                }
            ]
        }
        ```

## Visibilidade do CloudTrail
<a name="cloudtrail-visibility"></a>

Ao visualizar os recursos do Kubernetes, você verá o nome de operação a seguir nos seus logs do CloudTrail:
+  `AccessKubernetesApi`: ao ler ou visualizar recursos

Esse evento do CloudTrail fornece uma trilha de auditoria do acesso de leitura aos seus recursos de Kubernetes.

**nota**  
Esse nome da operação aparece nos logs do CloudTrail somente para fins de auditoria. Ele não é uma ação do IAM e não podem ser usado nas declarações de política do IAM. Para controlar o acesso de leitura aos recursos do Kubernetes por meio de políticas do IAM, use a permissão `eks:AccessKubernetesApi` conforme mostrado na seção [Permissões obrigatórias](#view-kubernetes-resources-permissions).