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

288
Vistas
Kubernetes fsGroup no cambia la propiedad del archivo en PersistentVolume

En el host, todo en el directorio montado ( /opt/testpod ) es propiedad de uid=0 gid=0. Necesito que esos archivos sean propiedad de lo que decida el contenedor, es decir, un gid diferente, para poder escribir allí. Recursos con los que estoy probando:

 --- apiVersion: v1 kind: PersistentVolume metadata: name: pv labels: name: pv spec: storageClassName: manual capacity: storage: 10Mi accessModes: - ReadWriteOnce hostPath: path: "/opt/testpod" --- apiVersion: v1 kind: PersistentVolumeClaim metadata: name: pvc spec: storageClassName: manual selector: matchLabels: name: pv accessModes: - ReadWriteOnce resources: requests: storage: 10Mi --- apiVersion: v1 kind: Pod metadata: name: testpod spec: nodeSelector: foo: bar securityContext: runAsUser: 500 runAsGroup: 500 fsGroup: 500 volumes: - name: vol persistentVolumeClaim: claimName: pvc containers: - name: testpod image: busybox command: [ "sh", "-c", "sleep 1h" ] volumeMounts: - name: vol mountPath: /data

Una vez que el pod se está ejecutando, kubectl exec en él y ls -la /data muestra todo lo que aún es propiedad de gid=0. De acuerdo con algunos documentos de Kuber, se supone que fsGroup todo en el inicio del módulo, pero no sucede. ¿Qué estoy haciendo mal, por favor?

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

0

El hostpath tipo de ruta de host no es compatible con el contexto de seguridad. Tienes que ser root para que se escriba el volumen. Se describe bien en este problema de github y en este documento sobre hostPath :

Los directorios creados en los hosts subyacentes solo pueden ser escritos por root. Debe ejecutar su proceso como root en un contenedor privilegiado o modificar los permisos de archivo en el host para poder escribir en un volumen hostPath

También puede consultar esta solicitud de github que describe por qué es peligroso cambiar el permiso del directorio del host.

La gente de solución describe que parece estar funcionando es otorgar a su usuario privilegios de sudo, pero eso en realidad hace que la idea de ejecutar el contenedor como usuario no root sea inútil.

El contexto de seguridad parece estar funcionando bien con el volumen de dirección vacía (bien descrito en los documentos de k8s aquí )

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