Configuración del agente de Pod Identity de Amazon EKS
Las asociaciones de Pod Identity de Amazon EKS ofrecen la posibilidad de administrar las credenciales para las aplicaciones, de un modo similar a cómo los perfiles de instancia de Amazon EC2 proporcionan credenciales a instancias de Amazon EC2.
Pod Identity de Amazon EKS proporciona credenciales a sus cargas de trabajo con una API de autenticación de EKS adicional y un pod de agente que se ejecuta en cada nodo.
Consideraciones
-
De forma predeterminada, el agente de Pod Identity de EKS escucha en una dirección
IPv4
eIPv6
para que los pods soliciten credenciales. El agente usa la dirección IP de bucle invertido (localhost)169.254.170.23
paraIPv4
y la dirección IP de localhost[fd00:ec2::23]
paraIPv6
. -
Si deshabilita las direcciones
IPv6
o evita las direcciones IPIPv6
de localhost, el agente no podrá iniciarse. Para iniciar el agente en los nodos que no pueden usarIPv6
, siga los pasos que se indican en Desactivar IPv6 en el agente de Pod Identity de EKS a fin de deshabilitar la configuraciónIPv6
.
Creación del agente de Pod Identity de Amazon EKS
Requisitos previos de agente
-
Un clúster existente de Amazon EKS. Para implementar uno, consulte Introducción a Amazon EKS. La versión del clúster y la versión de la plataforma deben ser iguales o posteriores a las versiones indicadas en Versiones del clúster de Pod Identity de EKSVersiones de clúster de EKS Pod Identity.
-
El rol de nodo tiene permisos para que el agente realice la acción
AssumeRoleForPodIdentity
en la API de autenticación de EKS. Puede usar la Política administrada de AWS: AmazonEKSWorkerNodePolicy política administrada de AWS: AmazonEKSWorkerNodePolicy o agregar una política personalizada similar a la siguiente:{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "eks-auth:AssumeRoleForPodIdentity" ], "Resource": "*" } ] }
Esta acción se puede limitar mediante etiquetas para restringir los roles que pueden asumir los pods que utilizan el agente.
-
Los nodos pueden acceder y descargar imágenes de Amazon ECR. La imagen del contenedor del complemento se encuentra en los registros que figuran en Visualización de los registros de imágenes de contenedores de Amazon para los complementos de Amazon EKSVisualización de los registros de imágenes de contenedores de Amazon para los complementos de Amazon EKS.
Tenga en cuenta que puede cambiar la ubicación de la imagen y proporcionar
imagePullSecrets
para los complementos de EKS en Valores de configuración opcionales en la AWS Management Console, y en--configuration-values
en la AWS CLI. -
Los nodos pueden acceder a la API de autenticación de Amazon EKS. En el caso de los clústeres privados, se requiere el punto de conexión
eks-auth
en AWS PrivateLink.
Configuración del agente con la consola de AWS
-
Abra la consola de Amazon EKS
. -
En el panel de navegación izquierdo, seleccione Clústeres y, a continuación, seleccione el nombre del clúster para el que desea configurar el complemento de agente de Pod Identity de EKS.
-
Elija la pestaña Complementos.
-
Escoja Obtener más complementos.
-
Seleccione la casilla situada en la parte superior derecha del cuadro de complementos para el agente de Pod Identity de EKS y, a continuación, elija Siguiente.
-
En la página Configurar las opciones de complementos seleccionados, selecciona cualquier versión de la lista desplegable Versión.
-
(Opcional) Expanda Valores de configuración opcionales para introducir una configuración adicional. Por ejemplo, puede proporcionar una ubicación de imagen de contenedor alternativa e
ImagePullSecrets
. El JSON Schema con las claves aceptadas se muestra en Esquema de configuración de complementos.Introduzca las claves y los valores de configuración en Valores de configuración.
-
Elija Siguiente.
-
Confirme que los pods de agente de Pod Identity de EKS se estén ejecutando en su clúster.
kubectl get pods -n kube-system | grep 'eks-pod-identity-agent'
Un ejemplo de salida sería el siguiente.
eks-pod-identity-agent-gmqp7 1/1 Running 1 (24h ago) 24h eks-pod-identity-agent-prnsh 1/1 Running 1 (24h ago) 24h
Ahora puede usar las asociaciones de Pod Identity de EKS en su clúster. Para obtener más información, consulte Asignación de un rol de IAM a la cuenta de servicio de Kubernetes.
Configuración del agente con AWS CLI
-
Ejecute el siguiente comando de AWS CLI. Reemplace
my-cluster
por el nombre del clúster.aws eks create-addon --cluster-name my-cluster --addon-name eks-pod-identity-agent --addon-version v1.0.0-eksbuild.1
nota
El agente de Pod Identity de EKS no utiliza el
service-account-role-arn
en Roles de IAM para cuentas de servicio. Debe proporcionar al agente de Pod Identity de EKS los permisos en el rol de nodo. -
Confirme que los pods de agente de Pod Identity de EKS se estén ejecutando en su clúster.
kubectl get pods -n kube-system | grep 'eks-pod-identity-agent'
Un ejemplo de salida sería el siguiente.
eks-pod-identity-agent-gmqp7 1/1 Running 1 (24h ago) 24h eks-pod-identity-agent-prnsh 1/1 Running 1 (24h ago) 24h
Ahora puede usar las asociaciones de Pod Identity de EKS en su clúster. Para obtener más información, consulte Asignación de un rol de IAM a la cuenta de servicio de Kubernetes.