Как узнать, к какому «пользователю» я должен добавить «scc»? - PullRequest
2 голосов
/ 06 марта 2019

Я пытаюсь запустить elasticsearch контейнер в моем проекте openshift.

Я получил ошибки:

В привилегированных контейнерах запрещены возможности. Адд: Неверное значение: «IPC_LOCK»: возможность не может быть добавлена.: возможность не может быть добавлена ​​

Я обнаружил, что вам нужно добавить privileged scc к учетной записи пользователя (или создать собственную выделенную).

Я пытался следовать документам https://docs.openshift.com/container-platform/3.4/admin_guide/manage_scc.html, где даны следующие команды:

oc create serviceaccount mysvcacct -n myproject
oc adm policy add-scc-to-user privileged system:serviceaccount:myproject:mysvcacct

Однако, ни единого ключа не дано, что такое mysvcacct и почему этоназывается mysvcacct.

Поскольку мой проект называется logging, я пробовал следующее:

oc create serviceaccount logging -n logging
oc adm policy add-scc-to-user privileged system:serviceaccount:logging:logging 

, но это ничего не изменило.Я продолжаю получать ту же ошибку.

Что мне там не хватает?Какое имя мне следует использовать вместо mysvcacct?

1 Ответ

2 голосов
/ 07 марта 2019

К вашему сведению, я представляю пример формата yaml.

  • Вы можете изменить имя ServiceAccount, используя oc patch dc/your-deploymentConfigName cmd следующим образом.
# oc patch dc/elasticsearch --patch '{"spec":{"template":{"spec":{"serviceAccountName": "logging"}}}}'
  • Или, используя oc edit dc/your-deploymentConfigName, осмотрите serviceAccountName.
# oc edit dc/elasticsearch
    ...
    spec:
      containers:
      - image: docker-registry.default.svc:5000/test/...
        imagePullPolicy: Always
        name: web
        ports:
        - containerPort: 8080
          protocol: TCP
        resources: {}
        terminationMessagePath: /dev/termination-log
        terminationMessagePolicy: File
      dnsPolicy: ClusterFirst
      restartPolicy: Always
      schedulerName: default-scheduler
      securityContext: {}
      serviceAccount: logging
      serviceAccountName: logging
...