Visualización de los recursos de Kubernetes en la Consola de administración de AWS - Amazon EKS

Ayude a mejorar esta página

Para contribuir a esta guía del usuario, elija el enlace Edit this page on GitHub que se encuentra en el panel derecho de cada página.

Visualización de los recursos de Kubernetes en la Consola de administración de AWS

Puede ver los recursos de Kubernetes implementados en su clúster con la Consola de administración de AWS. No puede ver los recursos de Kubernetes con la AWS CLI o eksctl. Para ver los recursos de Kubernetes mediante una herramienta de línea de comandos, utilice kubectl.

nota

Para ver la pestaña Recursos y la sección Nodos de la pestaña Computación de la Consola de administración de AWS, la entidad principal de IAM que utilice debe tener permisos de IAM y Kubernetes específicos. Para obtener más información, consulte Permisos necesarios.

  1. Abra la consola de Amazon EKS.

  2. En la lista Clusters (Clústeres), seleccione el clúster que contiene los recursos de Kubernetes que desea ver.

  3. Seleccione la pestaña Recursos.

  4. Seleccione un grupo de Tipo de recurso del que desea ver los recursos, como Cargas de trabajo. Aparece una lista de los tipos de recursos de ese grupo.

  5. Seleccione un tipo de recurso, como Deployments (Implementaciones), en el grupo Cargas de trabajo. Puede ver una descripción del tipo de recurso, un enlace a la documentación de Kubernetes para obtener más información sobre el tipo de recurso y una lista de los recursos de ese tipo que se implementan en el clúster. Si la lista está vacía, no hay recursos de ese tipo implementado en el clúster.

  6. Seleccione un recurso para ver más información acerca de una instantánea. Pruebe los siguientes ejemplos:

    • Seleccione el grupo Cargas de trabajo, seleccione el tipo de recurso de Implementaciones y seleccione el recurso coredns. Al seleccionar un recurso, se encuentra en Vista estructurada, de forma predeterminada. Para algunos tipos de recursos, verá una sección de Pods en Vista estructurada. En esta sección se muestran los pods administrados por la carga de trabajo. Puede seleccionar cualquier pod de la lista para ver información acerca del pod. No todos los tipos de recursos muestran información en Structured View (Vista estructurada). Si selecciona Raw view (Vista sin procesar) en la esquina superior derecha de la página del recurso, verá la respuesta JSON completa de la API de Kubernetes para el recurso.

    • Seleccione el grupo Cluster (Clústeres) y, a continuación, seleccione el tipo de recursos Nodes (Nodos). Aparece una lista de todos los nodos del clúster. Los nodos pueden ser cualquier tipo de nodo de Amazon EKS. Esta es la misma lista que ve en la sección Nodos al seleccionar la pestaña Informática de su clúster. Seleccione un recurso de nodo de la lista. En Vista estructurada, también ve una sección de Pods. En esta sección se muestran todos los pods que se ejecutan en el nodo.

Permisos necesarios

Para ver la pestaña Recursos y la sección Nodos de la pestaña Computación de la Consola de administración de AWS, la entidad principal de IAM que utilice debe tener permisos mínimos de IAM y Kubernetes específicos. Debe tener configurados correctamente tanto los permisos de IAM como los de control de acceso basado en roles de Kubernetes. Complete los siguientes pasos para asignar los permisos necesarios a las entidades principales de IAM.

  1. Asegúrese de que la eks:AccessKubernetesApi y otros permisos de IAM necesarios para ver los recursos de Kubernetes estén asignados a la entidad principal de IAM que esté utilizando. Para obtener más información acerca de cómo editar los permisos para una entidad principal de IAM, consulte Control del acceso para las entidades principales de IAM en la Guía del usuario de IAM. Para obtener más información acerca de cómo editar los permisos de un rol, consulte Modificación de una política de permisos de rol (consola) en la Guía del usuario de IAM.

    En la siguiente política de ejemplo se incluyen los permisos necesarios para que una entidad principal vea los recursos de Kubernetes de todos los clústeres de su cuenta. Reemplace 111122223333 por su ID de cuenta de 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 ver los nodos de los clústeres conectados, el rol de IAM del conector de Amazon EKS debería poder suplantar a la entidad principal en el clúster. Esto permite que Amazon EKS Connector asigne la entidad principal a un usuario de Kubernetes.

  2. Configure los permisos de control de acceso basado en roles de Kubernetes mediante las entradas de acceso de EKS.

    ¿Qué son las entradas de acceso de EKS?

    Las entradas de acceso de EKS son una forma simplificada de conceder a las entidades principales de IAM (usuarios y roles) acceso al clúster de Kubernetes. En lugar de administrar manualmente los recursos de control de acceso basado en roles de Kubernetes y el ConfigMap de aws-auth, las entradas de acceso gestionan automáticamente la asignación entre los permisos de IAM y los de Kubernetes mediante políticas administradas proporcionadas por AWS. Para obtener información detallada sobre las entradas de acceso, consulte Concesión de acceso para los usuarios de IAM a las entradas de acceso de Kubernetes con EKS. Para obtener información sobre las políticas de acceso disponibles y sus permisos, consulte Permisos de políticas de acceso.

    Puede asociar permisos de Kubernetes a entradas de acceso dos maneras:

    • Uso de una política de acceso: las políticas de acceso son plantillas predefinidas de permisos de Kubernetes mantenidas por AWS. Estas proporcionan conjuntos de permisos estandarizados para casos de uso comunes.

    • Hacer referencia a un grupo de Kubernetes: si asocia una identidad de IAM con un grupo de Kubernetes, puede crear recursos de Kubernetes que concedan permisos a ese grupo. Para obtener más información, consulte Utilización de la autorización de RBAC en la documentación de Kubernetes.

      1. Cree una entrada de acceso para la entidad principal de IAM mediante la CLI de AWS. Reemplace my-cluster por el nombre de su clúster. Reemplace 111122223333 por el ID de su cuenta.

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

        Un ejemplo de salida sería el siguiente.

        { "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" } }
      2. Asocie una política a la entrada de acceso. Para ver recursos de Kubernetes, utilice la 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

        Un ejemplo de salida sería el siguiente.

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

        Para acceso específico a un espacio de nombres, puede delimitar la política a espacios de nombres 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
      3. Verifique que la entrada de acceso se haya creado correctamente:

        aws eks describe-access-entry \ --cluster-name my-cluster \ --principal-arn arn:aws:iam::111122223333:role/my-console-viewer-role
      4. Enumere las políticas asociadas para confirmar la asociación de la política:

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

        Un ejemplo de salida sería el siguiente.

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

Visibilidad en CloudTrail

Cuando visualice recursos de Kubernetes, verá el siguiente nombre de operación en los registros de CloudTrail:

  • AccessKubernetesApi: cuando se leen o visualizan recursos

Este evento de CloudTrail proporciona un registro de auditoría del acceso de lectura a los recursos de Kubernetes.

nota

Este nombre de operación aparece en los registros de CloudTrail únicamente con fines de auditoría. No es una acción de IAM y no se puede utilizar en declaraciones de políticas de IAM. Para controlar el acceso de lectura a los recursos de Kubernetes mediante políticas de IAM, utilice el permiso eks:AccessKubernetesApi, como se indica en la sección Permisos necesarios.