3

我正在尝试使用 openshift(使用 minishift)运行简单的 elk 容器。我要运行的图像是这个麋鹿图像。在将映像部署到 openshift 期间,它会给出以下警告:

映像 sebp/elk 以集群管理员可能不允许的 root 用户身份运行。

我忽略此错误并使用此映像创建部署。在该 pod 尝试启动容器后,它失败并出现以下错误:

启动定期命令调度程序 cron

cron:无法打开或创建/var/run/crond.pid:权限被拒绝...失败!

chown:更改“/var/lib/elasticsearch”的所有权:不允许操作

我认为它与 root 用户警告有关,然后尝试了这些步骤Enable Images to Run with USER in the DockerfileGrant a Service Account Access to the Privileged SCC 。他们都失败了,出现以下错误:

Murats-MacBook-Pro-2:~ murat$ oc adm policy add-scc-to-group anyuid system:authenticated

来自服务器的错误(禁止):用户“system”无法在集群范围内获取 securitycontextconstraints.security.openshift.io

Murats-MacBook-Pro-2:~ murat$ oc adm policy add-scc-to-user anyuid system:serviceaccount:elk:elk

来自服务器的错误(禁止):用户“系统”无法在集群范围内获取 securitycontextconstraints.security.openshift.io

非常感谢。

4

2 回答 2

5

我们有针对这个特定用例的anyuid插件。考虑使用它。

要使用它,请运行以下命令

minishift addon apply anyuid

要了解有关插件的更多信息,请在此处查看Minishift 插件

于 2018-03-26T11:59:34.630 回答
3

启用运行映像的命令anyuid需要以管理员身份运行。对于 Minishift,您可以使用以下命令以管理员身份登录:

oc login -u system:admin

完成后请记住以普通用户身份重新登录。

于 2018-01-22T14:17:54.513 回答