【问题标题】:Pod security context and NFS mountingPod 安全上下文和 NFS 挂载
【发布时间】:2019-10-19 11:09:57
【问题描述】:

根据这篇文章:

https://netapp.io/2018/06/15/highly-secure-kubernetes-persistent-volumes/

如果 pod 没有特权安全上下文,则您不能在 pod 中使用/挂载 NFS 共享。

我正在运行一个挂载了外部 NFS 的 pod,但我没有指定除 uid/gid 之外的任何安全上下文。 RW 工作正常。

如何检查我的 Pod 是普通 Pod 还是特权 Pod。

【问题讨论】:

    标签: kubernetes nfs


    【解决方案1】:

    您可以使用kubectl get pods yourpod -o json.spec.containers.securityContext 下或在元数据中进行检查

    例如,我创建了 2 个 nginx pod: nginx(具有特权:true)

    "metadata": {
        "annotations": {
            "cni.projectcalico.org/podIP": "10.48.2.3/32",
            "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Pod\",\"metadata\":{\"annotations\":{},\"labels\":{\"app\":\"nginx\"},\"name\":\"nginx\",\"namespace\":\"default\"},\"spec\":{\"containers\":[{\"image\":\"nginx\",\"name\":\"nginx\",\"ports\":[{\"containerPort\":80}],\"securityContext\":{\"privileged\":true}}]}}\n",
    
    
    "securityContext": {
       "privileged": true
    

    nginx 非特权

    "metadata": {
        "annotations": {
            "cni.projectcalico.org/podIP": "10.48.2.4/32",
            "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Pod\",\"metadata\":{\"annotations\":{},\"labels\":{\"app\":\"nginx\"},\"name\":\"nginx-nonprivileged\",\"namespace\":\"default\"},\"spec\":{\"containers\":[{\"image\":\"nginx\",\"name\":\"nginx\",\"ports\":[{\"containerPort\":80}]}]}}\n",
    

    【讨论】:

    • 这是我的问题,如果我在部署中根本没有这样做,它怎么会自动获得特权。我也会检查json。
    • 不,security contxt只有uid和gid,没有别的
    • 但是我看到 NFS 文件管理器在容器内被监控,它是如何工作的?
    猜你喜欢
    • 2020-12-07
    • 2021-10-09
    • 2021-12-22
    • 2021-12-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-01-10
    • 2021-11-26
    相关资源
    最近更新 更多