Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

180
Vistas
¿Cómo administrar EKS desde el perfil de la instancia EC2?

Nuestro sistema tiene clústeres de EKS kubernetes. Los administramos desde los "hosts bastión" de la instancia EC2, donde ingresamos, configuramos nuestras credenciales y usamos kubectl para administrar el clúster.

No queremos seguir teniendo que configurar manualmente nuestras credenciales en el host EC2.

Entonces, estoy tratando de asociar un perfil de instancia EC2 con el host EC2 con los permisos apropiados para administrar el clúster. Sin embargo, no funciona.

La instancia EC2 tiene un perfil de instancia de IAM que está asociado con un rol que contiene esta política (permisos completos de EKS)

 { "Sid": "2", "Effect": "Allow", "Action": [ "eks:*" ], "Resource": "*" }

Entonces, cuando ejecuto los siguientes comandos, espero poder enumerar los servicios activos en EKS:

 [ec2-user@ip-10-0-0-72 ~]$ aws eks update-kubeconfig --name my_eks_cluster_name [ec2-user@ip-10-0-0-72 ~]$ kubectl get svc error: the server doesn't have a resource type "svc"

El error implica que no tengo permiso. Probé esto configurando algunas credenciales de AWS en el host:

 [ec2-user@ip-10-0-0-72 ~]$ export AWS_ACCESS_KEY_ID=... [ec2-user@ip-10-0-0-72 ~]$ export AWS_SECRET_ACCESS_KEY=... [ec2-user@ip-10-0-0-72 ~]$ export AWS_SESSION_TOKEN=...

ahora, trato de enumerar svc:

 [ec2-user@ip-10-0-0-72 ~]$ kubectl get svc NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE kubernetes ClusterIP 172.20.0.1 <none> 443/TCP 85d

funciona

¿Por qué el rol de instancia de IAM no es suficiente para permitirme administrar mi clúster de EKS a través de kubectl?

over 4 years ago · Santiago Trujillo
2 Respuestas
Responde la pregunta

0

Gracias a @jordanm por señalar que EKS usa un mapa de configuración para manejar la autorización.

Pude editar el mapa de configuración, agregando una entrada para asignar el rol de IAM del perfil de la instancia EC2, arn:aws:iam::111111111111:role/eks_management_host_jw_jw , al system:masters (administradores)

 # Please edit the object below. Lines beginning with a '#' will be ignored, # and an empty file will abort the edit. If an error occurs while saving this file will be # reopened with the relevant failures. # apiVersion: v1 data: mapRoles: | - groups: - system:bootstrappers - system:nodes rolearn: arn:aws:iam::111111111111:role/eks_node_jw_jw username: system:node:{{EC2PrivateDNSName}} - groups: # <-- I added this - system:masters rolearn: arn:aws:iam::111111111111:role/eks_management_host_jw_jw username: system:admin kind: ConfigMap metadata: # ...
over 4 years ago · Santiago Trujillo Denunciar

0

De forma predeterminada, solo el creador del clúster tiene permisos para acceder a los recursos dentro de un clúster y ningún otro usuario o función. Para otorgar permiso de clúster a cualquier otro usuario o rol, EKS tiene un mapa de configuración llamado aws-ath en el espacio de nombres kube-system . Debe definir mapRoles dentro de él para otorgar permiso a otros roles. De manera similar, para otorgar permisos a otros usuarios, se debe definir mapUsers .

Ejemplo

 apiVersion: v1 kind: ConfigMap metadata: name: aws-auth namespace: kube-system data: mapRoles: | - rolearn: <ARN of instance role (not instance profile)> username: system:node:{{EC2PrivateDNSName}} groups: - system:bootstrappers - system:nodes - system:masters

Referencia: https://docs.aws.amazon.com/eks/latest/userguide/add-user-role.html

over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda