【问题标题】:How OpenShift determine the scc for the pod?OpenShift 如何确定 pod 的 scc?
【发布时间】:2017-06-29 09:20:46
【问题描述】:

我对 OpenShift 中的 scc 感到困惑。我所有的 pod 都是用 scc:restricted 制作的。但现在我想要一些特权模式的 pod。

我试过这个命令:

$ oc edit scc privileged 

并添加服务帐户和命名空间

Als 尝试与用户创建一个新的 scc:

$ oc create -f scc.yaml

但是所有新的 pod 仍然是用 scc:restricted 创建的 :-(

【问题讨论】:

    标签: openshift


    【解决方案1】:

    您想使用oc adm policy add-role-to-user -z default somerole。问题是你为什么要这样做。使用 root 或其他提升权限运行容器通常不是一个好主意,除非您具有 OpenShift 集群的集群管理员访问权限,否则您无法启用此类权限。需要以额外权限运行通常表明图像构建不良。图像应设计为以任意非 root 用户身份运行。

    【讨论】:

    • 我同意你的说法,但我使用的是 Jenkins 持久模板,当我使用 maven 命令“权限不足”时出现错误。奇怪的是,当我在 Minishift 上使用相同的模板时,一切正常。在 OpenShift Origin 上,它仅在我将模板代码从“privileged false”更改为“privileged true”时才有效。有没有更好的方法让 Jenkins pod 中的 maven 工作?
    • 你在说什么 Jenkins 模板?在 OpenShift Online 的 Web 控制台中使用“添加到项目”时,您不只是从“持续集成和部署”类别中选择“Jenkins (Persistent)”吗?
    • 是的,我正在使用 Jenkins (Persistent) 模板。在该模板中,我将“特权假”更改为“特权真”。如果我将此模板添加到项目中,Jenkins pod 现在是“特权”。所以我可以运行 maven 命令。如果有另一种方法可以做到这一点?让我知道。还发布了标题“OpenShift Origin and Jenkins --> Permission denied”。
    • 假设是,因为它可以从“添加到项目”中获得,它应该开箱即用,您不需要自己摆弄模板来覆盖东西。您当然不需要将 pod 设置为 privileged,除非您尝试做一些非常奇怪的事情。你在做什么需要特权豆荚?此外,当您说在 OpenShift Origin 中工作时,您知道 Minishift 仍然是 OpenShift Origin。您能否说明您正在使用的集群,您自己设置的集群?
    • 让我们切换到我的另一个问题,因为那更具体stackoverflow.com/questions/44810450/…。在这里,您会看到 Maven 的错误。今天我们也有一些过度使用的错误(OOMKilled?)
    猜你喜欢
    • 1970-01-01
    • 2022-01-18
    • 2017-07-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-01-19
    • 2019-07-02
    • 1970-01-01
    相关资源
    最近更新 更多