zoukankan      html  css  js  c++  java
  • kubernetes pod 挂载configmap报错:read only fie system

    kubernetes pod 挂载configmap报错:read only fie system

     

      背景:使用的是腾讯云的容器服务,镜像是我们研发同学开发的镜像,其中在pod启动时需要新建一个路径 /app/subserver/config/disconf/ 。

      但是发现启动的时候报错:

    (read only fie system) 

      检查一下pod的设置,发现挂载的路径是可读写的:

      

       

      进入容器检查也没问题:

      

       

      搜索引擎了一番,发现几个类似的报错。但是仔细看看其实不对,他们这些返回的报错都是直接的物理或虚拟机系统报错的,不是k8s pod 的报错。而pod是无法直接重新挂载文件系统的。

      

      权限也有,路径也在,为什么还是说是只读文件系统呢?

      百度必应谷歌都没找到可以借鉴的。

      正好看到旁边研发同事有空,遂请教。大佬回:这个启动时候要创建写入文件,路径有吗?权限有吗?我一一检查,都有。

      大佬沉吟两秒:你进去创建一个文件试试。

      另外提一句,腾讯云的容器服务是可以设置启动命令的,比如我现在,就需要让pod启动后休眠一会儿,不然因为pod报错,它会不断自启,那就没办法进去检查了。在高级设置里面,或者可以直接加在yaml文件里:

      

       我进入容器,尝试创建文件:

      

      熟悉的报错。

      明明路径有权限,为什么提示只读呢?

      

      大佬问:他这个路径是主机文件系统的吗?

      主机文件系统?我看看。

      

       一语惊醒梦中人!

      这个不是pod的主机路径啊,这是挂载的configmap的路径。

      原来如此。因为挂载的configmap是外部挂载的,不属于pod自有的系统路径,所以是无法在一个configmap路径下面再新建路径的。

        

      那就好办了。把 /app/subserver/config/disconf/ 改为 /app/config/disconf/ 这样他就是在/app/这个路径下面创建路径并写入文件,这样应该就没问题了吧。

      

      可以看到,已经正常写入了三个文件。

      感谢lyy大佬!

    作者注: 本站文章除注明转载外,均为本站原创或编辑,欢迎大家转载,但请务必注明出处,尊重他人成果,谢谢。 任何问题请联系1187616732@qq.com
  • 相关阅读:
    PyQt作品 – PingTester – 多点Ping测试工具
    关于和技术人员交流的一二三
    Pyjamas Python Javascript Compiler, Desktop Widget Set and RIA Web Framework
    Hybrid Qt applications with PySide and Django
    pyjamas build AJAX apps in Python (like Google did for Java)
    PyQt 维基百科,自由的百科全书
    InfoQ:请问为什么仍要选择Java来处理后端的工作?
    Eric+PyQt打造完美的Python集成开发环境
    python select module select method introduce
    GUI Programming with Python: QT Edition
  • 原文地址:https://www.cnblogs.com/laijx/p/14328828.html
Copyright © 2011-2022 走看看