我们有多个容器,其中一个是在PVC上挂载卷,另一个是nifi容器,试图访问这些挂载的卷,包括nifi目录。
pv(在nfs上)中挂载卷的用户id是10030,而nifi使用1000的用户id,导致pod崩溃,因为它没有足够的权限访问nifi目录。
我们如何在编写文件中将nifi默认用户更改为100030或做其他事情来解决这个问题。谢谢
我们尝试了多种方法,包括给nifi用户设置音量,但它又变回了10030。
我们有多个容器,其中一个是在PVC上挂载卷,另一个是nifi容器,试图访问这些挂载的卷,包括nifi目录。
pv(在nfs上)中挂载卷的用户id是10030,而nifi使用1000的用户id,导致pod崩溃,因为它没有足够的权限访问nifi目录。
我们如何在编写文件中将nifi默认用户更改为100030或做其他事情来解决这个问题。谢谢
我们尝试了多种方法,包括给nifi用户设置音量,但它又变回了10030。
1条答案
按热度按时间yi0zb3m41#
要解决此问题,您需要确保NiFi使用的用户ID与已挂载卷的用户ID匹配。您可以考虑以下几种方法。
**1:**在您的Kubernetes部署中,您可以通过在NiFi容器规范中设置
securityContext
来指定NiFi应该运行的用户ID。字符串
这将确保NiFi使用用户ID 10030运行,与已安装卷的用户ID匹配。
**2:**出于安全考虑,不建议您以root用户身份运行NiFi,然后修改挂载卷的权限,允许NiFi用户(ID 1000)访问。但这种方式可能会带来安全风险,请谨慎使用。
**3:**您可以在NiFi启动前使用
initContainer
调整挂载卷的权限,initContainer
可以对NiFi需要访问的目录/文件设置相应的权限。型
在本例中,init容器会在NiFi启动前将挂载卷的所有权更改为用户ID 1000。