博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Kubernetes NFS存储服务的误报
阅读量:6829 次
发布时间:2019-06-26

本文共 907 字,大约阅读时间需要 3 分钟。

hot3.png

在Kubernetes 1.11.2 + Ubuntu 18.04上,使用NFS部署JupyterHub和IPFS后,所有的服务都是可以用的。

1、问题现象

但在重启机器后,所有的PVC都无法连接、Pod启动失败。

查看NFS服务、PVC、PV都是绿色状态,全部正常。后来发现这个是假信号,磁盘根本没有挂载。

查看Pod的日志,显示“invalid directory or file”。

从原始磁盘查起,在命令行运行df -h,发现NFS的挂载盘没有出现。

奇了怪了!

2、解决方法

突然想起,可能是启动时系统没有挂载数据盘!!!

去挂载数据盘,再重启一下docker。再去看,Pod已经可以正常访问了。问题确认!

3、一劳永逸

把磁盘设为系统启动挂载(Ubuntu 桌面版直接使用“磁盘”工具,进去修改选项即可)。

服务器可以将其参数写入/etc/fstab,启动时就会自动挂载。

sudo nano /etc/fstab

里面的格式是(各个域用空格分开):

  • file system,可以通过ls -l /dev/disk/by-uuid查看UUID,设进去。
  • mount point,一般为/mnt/mydatadisk,mydatadisk为自己的名称。
  • type,设为auto,如果是特殊格式需要专门设置。
  • option,设为 nosuid,nodev,nofail,x-gvfs-show。这些参数是桌面“磁盘工具”设置产生的,有的好像没啥用。
  • dump,设为0。
  • pass,设为0。

我的磁盘是NTFS格式,从原来移动硬盘拔下来的。现在的Ubuntu18.04对NTFS支持还是不错了。

然后按ctrl+x保存,重启系统后,Pod的启动和数据访问都恢复了正常。

如果有多个磁盘,参照上面的格式一一处理,在fstab里添加多条记录。对于Kubernetes这样的集群,都需要在启动时就挂载磁盘的,里面的Pod才能访问到。当然,也可以使用LVM逻辑卷的方式由系统自动合称为一个大的逻辑磁盘。

4、参考资源

 

 

转载于:https://my.oschina.net/u/2306127/blog/2050022

你可能感兴趣的文章
magento 购物车 首页 显示
查看>>
mapper.xml
查看>>
模拟EventCenter,flash自带的事件机制的一个解耦框架,callback回调方式用于模块之间的通信...
查看>>
zookeeper选主算法二
查看>>
JS 中的require 和 import 区别整理
查看>>
stream& datagram socket
查看>>
vue.js 2.0开发(4)
查看>>
urb传输的代码分析【转】
查看>>
ftrace 简介【转】
查看>>
内置函数总结
查看>>
模块的查找顺序
查看>>
LeetCode OJ:Ugly Number(丑数)
查看>>
wpf中ListBox的选中项与ComboBox间的绑定
查看>>
洛谷P1067 多项式输出
查看>>
web前台传参到后台出现错误
查看>>
数据库的备份和导入
查看>>
Oracle trunc()函数的用法
查看>>
col-md-*和col-sm-*
查看>>
前端开发大众手册(包括工具、网址、经验等)
查看>>
IOC容器
查看>>