k8s、nfs、mysql、changing ownership of '/var/lib/mysql/': Operation notpermitted

在k8s环境下安装mysql,磁盘挂载到nfs配置,结果kubectl logs -f 到pod后,看到changing ownership of '/var/lib/mysql/': Operation notpermitted错误,百度了良久,终于有了答案

在搜索这个问题时,在Stack Overflow中找到如下内容:

image

提示说确实是与NFS的配置有关,NFS默认是squash_all模式,但是要想使用NFS目录,将目录映射到docker容器中,必须要配置成no_root_squash模式才行,否则root用户无权限使用nfs的volume来映射docker容器中的目录!!!

no_root_squash模式:是登入 NFS 主机使用分享目录的使用者,如果是 root 的话,那么对于这个分享的目录来说,他就具有 root 的权限!这个项目『极不安全』,不建议使用!

这正是我遇到的问题,之前一直在排查k8s master节点的问题,查找资料有说是

kube-controller-manager的问题,但是排查一圈,没有发现问题。原来是NFS的问题啊,于是果断在NFS配置文件中增加了no_root_squash:

[root@dev252 etc]# more exports

/home/centos7/ 192.168.1.0/24(insecure,rw,sync,fsid=0)

/home/centos7/nfs192.168.1.0/24(insecure,rw,sync,no_root_squash,fsid=0)

这样,再重启nfs后,再次通过k8s启动mysql service,就一切都正常了,可以正常创建pod,也可在240上正常创建容器了!

参考文章:https://www.jianshu.com/p/d1ab286e68d2

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • k8s+mysql+pv+pvc+NFS实现mysql容器编排 首先需要介绍概念:pv和pvc PV 是集群提供的...
    zhaojian821阅读 12,736评论 2 7
  • nfs大纲 1.nfs是干什么1.什么是NFS,NFS是Network File System的缩写及网络文件系统...
    优秀砖阅读 8,563评论 0 0
  • 姓名:张猛 【嵌牛导读】:NFS是一种分布式的文件系统,用于共享文件和打印机。它允许用户调用挂载远端的文件系统或设...
    oliverabc阅读 4,429评论 0 0
  • 一、服务器配置: 安装软件: yum -y install nfs-utils rpcbind 更改配置文件: v...
    济夏阅读 7,980评论 0 51
  • 什么是NFS? 1.存储服务流程图 2.存储服务概念介绍 存储服务概念价值:1.可以实现数据统一共享存储2.节省架...
    linux_龍阅读 4,472评论 0 3