Gay*_*riB 2 kubernetes kubernetes-security
我们可以使用nfs卷插件来维护kubernetes集群中的高可用性和灾难恢复吗?
我正在使用MongoDB运行pod.得到错误
chown:更改'/ data/db'的所有权:不允许操作.
云任何身体,请建议我如何解决错误?(要么)
是否有任何替代卷插件可以在kubernetes集群中实现HA-DR?
mda*_*iel 13
chown:更改'/ data/db'的所有权:不允许操作.
你想要启动mongo容器root
,以便你可以 chown
在目录中,或者如果图像禁止它(因为一些图像已经有一个USER mongo
禁止容器升级权限的子句root
),那么两件事之一:取代具有securityContext
节的用户containers:
或使用initContainer:
以抢先更改目标文件夹为mongo UID:
方法#1:
containers:
- name: mongo
image: mongo:something
securityContext:
runAsUser: 0
Run Code Online (Sandbox Code Playgroud)
(可能需要更改群集的配置以允许此类内容出现在a中PodSpec
)
方法#2(我使用Elasticsearch图像的方法):
initContainers:
- name: chmod-er
image: busybox:latest
command:
- /bin/chown
- -R
- "1000" # or whatever the mongo UID is, use string "1000" not 1000 due to yaml
- /data/db
volumeMounts:
- name: mongo-data # or whatever
mountPath: /data/db
containers:
- name: mongo # then run your container as before
Run Code Online (Sandbox Code Playgroud)
小智 7
/data/db 是一个挂载点,即使您没有明确在那里挂载卷。数据被持久保存到特定于 pod 的覆盖层。Kubernetes 将所有卷挂载为 0755 root.root,无论目录最初的权限是什么。当然 mongo 不能 chown 那个。
如果将卷安装在 /data/db 下面的某个位置,您将收到相同的错误。
如果您在 /data 处挂载上面的卷,数据将不会存储在 NFS 上,因为 /data/db 处的挂载点将写入覆盖层。但您不会再收到该错误了。
归档时间: |
|
查看次数: |
5228 次 |
最近记录: |