文档章节

Kubernetes NFS存储服务的误报

openthings
 openthings
发布于 2018/09/12 11:01
字数 633
阅读 43
收藏 0

在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、参考资源

 

 

© 著作权归作者所有

openthings
粉丝 325
博文 1140
码字总数 689435
作品 1
东城
架构师
私信 提问
Kubernetes上建立WordPress博客

在Kubernetes上运行WordPress的好处是显而易见的。首先是安装非常简单(在已有集群的情况下),其次是可靠性更高,第三是规模可以伸缩。当然,可以在多个云之间更为容易地迁移也是非常重要的...

openthings
2018/09/15
609
0
nfs-client-provisioner源码分析

版权声明:本文为博主原创文章,未经博主允许不得转载。如需转载请联系本人,并标明作者和出处。 https://blog.csdn.net/huwh_/article/details/82052191 如果要开发一个,需要使用到the hel...

胡伟煌
2018/08/25
0
0
Rook 0.8 安装及Dashboard的问题和解决

Rook(https://rook.io)已经到了0.8版本,并且进入CNCF的孵化器。Rook是一个容器存储框架,已经率先支持Ceph(http://docs.ceph.org.cn/start/intro/)分布式文件系统。 这里介绍其安装过程,其...

openthings
2018/09/15
511
0
Harbor快速部署到Kubernetes集群及登录问题解决

Harbor(https://goharbor.io)是一个功能强大的容器镜像管理和服务系统,用于提供专有容器镜像服务。随着云原生架构的广泛使用,原来由VMWare开发的Harbor也加入了云原生基金会(参考《Har...

openthings
02/23
541
2
利用NFS client provisioner动态提供Kubernetes后端存储卷–安装指南与实践

本文翻译自nfs-client-provisioner的说明文档,本文将介绍使用nfs-client-provisioner这个应用,利用NFS Server给Kubernetes作为持久存储的后端,并且动态提供PV。前提条件是有已经安装好的N...

店家小二
2018/12/14
0
0

没有更多内容

加载失败,请刷新页面

加载更多

使用TensorFlow的AI程序运行报错AttributeError: module 'tensorflow' has no attribute 'xxx'

使用TensorFlow的AI程序,在运行时报错AttributeError: module 'tensorflow' has no attribute 'xxx',首先检查是否是包路径不对,一般是版本变化所致。...

织梦之魂
57分钟前
3
0
提示浏览器版本低

本文转载于:专业的前端网站➭提示浏览器版本低 网站网页在遇到浏览器低版本(尤其是IE浏览器)时,提示浏览器版本低(如IE8以及以下),建议用户升级浏览器以获得最好体验。以下是代码: 1...

前端老手
58分钟前
6
0
CentOS 7系统增加swap

转载请注明文章出处:CentOS 7系统增加swap swap是位于磁盘上的特殊文件(或分区),属于“虚拟内存”的一部分。通俗点就是内存的备胎,内存充足的情况下,基本上没swap什么事(和设置有关)...

tlanyan
今天
6
0
基于Prometheus和Grafana的监控平台 - 环境搭建

相关概念 微服务中的监控分根据作用领域分为三大类,Logging,Tracing,Metrics。 Logging - 用于记录离散的事件。例如,应用程序的调试信息或错误信息。它是我们诊断问题的依据。比如我们说...

JAVA日知录
今天
6
0
PHP运行时全局构造体

struct _php_core_globals { zend_bool magic_quotes_gpc; // 是否对输入的GET/POST/Cookie数据使用自动字符串转义。 zend_bool magic_quotes_runtime; //是否对运行时从外部资源产生的数据使...

冻结not
今天
5
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部