Настройка securityContext внутри развертывания Kubernetes

В своих развертываниях я использую том, подключенный к nfs. Мне нужно дать ему fsGroup, как показано ниже:

securityContext:
  runAsUser: 1000
  runAsGroup: 3000
  fsGroup: 2000

Есть ли способ сделать это в манифесте развертывания? Как я вижу в документации, я могу установить контекст безопасности только в pod yaml.


person Manuel Castro    schedule 30.07.2019    source источник
comment
развертывание получило шаблон модуля, который совпадает со спецификацией модуля. Вы можете установить контекст безопасности там.   -  person wargre    schedule 30.07.2019
comment
Вы имеете в виду под спец. Контейнерами?   -  person Manuel Castro    schedule 31.07.2019


Ответы (1)


Вы можете использовать securityContext в Deployment так же, как вы используете его внутри Pod.

Как это уже было предложено, поместив его в template.spec:

apiVersion: apps/v1
kind: Deployment
metadata:
  name: test-deployment
  labels:
    app: test
spec:
  replicas: 3
  selector:
    matchLabels:
      app: test
  template:
    metadata:
      labels:
        app: test
    spec:
      securityContext:
          runAsUser: 2000
          runAsGroup: 3000
          fsGroup: 2000
      containers:
      - name: test
        image: busybox
        ports:
        - containerPort: 80
        command: [ "sh", "-c", "sleep 1h" ]

И вы можете это проверить:

$ kubectl exec -it test-deployment-54d954d7f-2b582  sh
/ $ ps
PID   USER     TIME  COMMAND
    1 2000      0:00 sleep 1h
    6 2000      0:00 sh
   11 2000      0:00 ps
/ $ whoami
whoami: unknown uid 200
person Crou    schedule 31.07.2019
comment
Привет, я столкнулся с этой проблемой прямо сейчас (stackoverflow.com/questions/59484063/). Я не могу заставить это работать в моем развертывании. Когда вы пытаетесь ответить, мой модуль завис из-за CrashLoopBackOff ошибки. Проверка журналов через kubectl logs pod/<pod id> показывает эту ошибку: / sbin / runit-wrapper: строка 5: невозможно создать / env: Permission denied. Мне очень нужна помощь, пожалуйста! - person Dreadnaut; 26.12.2019