为什么要说这个呢,由于节点环境不一致,导致在重建pod时,我们暂且叫该pod为 cxpod,cxpod所在宿主机
出现了问题现象如下:
一、cxpod始终处于创建中 ContainerCreating  
[root@master-web-38 ~]#  kubectl describe pod cxpod
......
mount.nfs: mounting 10.121.53.91:/nfs/res/shfprsc/upload/cfs failed, reason given by server: No such file or directory

我的处理方式是:

1)查看该node机器是否有安装nfs客户端
[root@ht22 calico]# rpm -qa nfs-utils rpcbind
nfs-utils-1.3.0-0.68.el7.2.x86_64
rpcbind-0.2.0-49.el7.x86_64

已安装,查看启动状态。

[root@ht22 calico]# systemctl status nfs.service

[root@ht22 calico]# systemctl status  rpcbind.service

2) 查看nfs服务器端暴露情况(nfs server ip是 10.121.53.91)

[root@ht22 calico]# showmount -e 10.121.53.91
Export list for 10.121.53.90:
/nfs/bucket *
/nfs *
/nfs/k8slog/es5 10.121.56.0/24
/nfs/k8slog 10.121.51.0/24,10.121.52.0/24,10.121.56.0/24,10.121.55.0/24
/nfs/aill 10.121.51.0/24,10.121.52.0/24,10.121.56.0/24,10.121.55.0/24
/nfs/res 10.121.51.0/24,10.121.53.0/24,10.121.54.0/24,10.121.55.0/24
/nfs/upload 10.121.51.0/24,10.121.55.0/24
 原来 ht22 ip  10.121.52.12 即10.121.52.* 这个段并没有设置在服务端开放,所以需要设置服务器端开放该段访问。
3)修改nfs server服务器端的配置文件

root@fpNet-nfs-1 bill]# vi /etc/exports
.......
//增加52段

/nfs/res 10.129.52.0/24(rw,sync,insecure,no_subtree_check,no_root_squash)
......

配置说明:

ro:目录只读
rw:目录读写
sync:将数据同步写入内存缓冲区与磁盘中,效率低,但可以保证数据的一致性
async:将数据先保存在内存缓冲区中,必要时才写入磁盘
all_squash:将远程访问的所有普通用户及所属组都映射为匿名用户或用户组(nfsnobody)
no_all_squash:与all_squash取反(默认设置)
root_squash:将root用户及所属组都映射为匿名用户或用户组(默认设置)
no_root_squash:与rootsquash取反
anonuid=xxx:将远程访问的所有用户都映射为匿名用户,并指定该用户为本地用户(UID=xxx)
anongid=xxx:将远程访问的所有用户组都映射为匿名用户组账户

4)重启nfs server服务
[root@fpNet-nfs-1 bill]# /etc/init.d/nfs restart

问题得到解决。顺利创建,这里由于是pod 里面直接挂载的目录,我们不用在客户端先挂载某个目录,如果需要可以

采用普遍安全挂载参数即可

mount -t nfs -o nosuid,noexec,node,rw 192.168.10.150:/data/bbs /data/bbs   类似这种。

二、如果你没有安装nfs客户端,请安装nfs客户端

#cat /etc/redhat-release

1)检查系统版本及NFS服务nfs-utils 和rpcbind有没有安装

# rpm -qa nfs-utils rpcbind

2)安装NFS服务nfs-untils和rpcbind

# yum install nfs-utils rpcbind -y

3)启动rpcbind服务

#systemctl start rpcbind.service

4)查看rpcbind服务状态

#systemctl status rpcbind.service

5)查看rpc

# lsof -i :111

6)查看nfs服务向rpc注册的端口信息
#rpcinfo -p localhost

7)把rpcbind另入开机自启动

#systemctl enable rpcbind.service

8)启动NFS服务并查看其状态

#systemctl start nfs.service
9)查看nfs
#systemctl status nfs.service

10)把NFS服务加入开机自启动并查看其状态

#systemctl enable nfs.service

11)查看挂载nfs服务器端挂载情况

showmount -e localhost
12) 查看服务器的暴露的网段和目录情况

[root@ht22 calico]# showmount -e 10.121.53.91

Export list for 10.121.53.90:

/nfs/bucket *

/nfs *

/nfs/k8slog/es5 10.121.56.0/24

/nfs/k8slog 10.121.51.0/24,10.121.52.0/24,10.121.56.0/24,10.121.55.0/24

/nfs/aill 10.121.51.0/24,10.121.52.0/24,10.121.56.0/24,10.121.55.0/24

/nfs/res 10.121.51.0/24,10.121.53.0/24,10.121.54.0/24,10.121.55.0/24

/nfs/upload 10.121.51.0/24,10.121.55.0/24

总结: 这个主要是提示了,k8s 的pod可以挂载nfs目录,挂载可以灵活设置。 主要看我们的需求,需掌握的是
1、pod 出现问题,kubectl describe pod ...  命令还是很不错的查看问题出现原因的方式
2、nfs客户端安装
3、nfs服务器端安装就不写了。 自己可以查资料
我们很多机器上都用到nfs处理存储,比如:备份,配置文件统一修改等。

 

ro:目录只读

rw:目录读写

sync:将数据同步写入内存缓冲区与磁盘中,效率低,但可以保证数据的一致性

async:将数据先保存在内存缓冲区中,必要时才写入磁盘

all_squash:将远程访问的所有普通用户及所属组都映射为匿名用户或用户组(nfsnobody)

no_all_squash:与all_squash取反(默认设置)

root_squash:将root用户及所属组都映射为匿名用户或用户组(默认设置)

no_root_squash:与rootsquash取反

anonuid=xxx:将远程访问的所有用户都映射为匿名用户,并指定该用户为本地用户(UID=xxx)

anongid=xxx:将远程访问的所有用户组都映射为匿名用户组账户

nfs客户端的一次处理的更多相关文章

  1. NFS客户端访问行为相关的几个参数解释

    soft / hard Determines the recovery behavior of the NFS client after an NFS request times out. If ne ...

  2. nfs nobody,nobody 需要在nfs客户端修改从nfs服务器端共享过来的目录怎么办?

    1,加入我们使用nfs共享安装oracle, 安装oracle需要修改base,data,orainventory等等目录及自目录的属主及权限,一般会继承nfs客户端目录的权限及属主 groupadd ...

  3. NFS客户端阻塞睡眠问题与配置调研

    Linux NFS客户端需要很小心地配置,否则在NFS服务器崩溃时,访问NFS的程序会被挂起,用ps查看,进程状态(STAT)处于D,意为(由于IO阻塞而进入)不可中断睡眠(如果是D+,+号表示程序运 ...

  4. NFS相关、NFS服务端安装配置、exportfs命令、nfs客户端的问题

    1.NFS (network file system,基于RPC协议) 2.NFS服务端安装配置安装服务端:yum install nfs-utils rpcbind -y安装客户端:yum inst ...

  5. exportfs命令 NFS客户端问题 FTP介绍 使用vsftpd搭建ftp

    exportfs命令 • 常用选项 • -a 全部挂载或者全部卸载 • -r 重新挂载 • -u 卸载某一个目录 • -v 显示共享目录 • 以下操作在服务端上 • vim /etc/exports ...

  6. exportfs命令、NFS客户端问题、FTP介绍、使用vsftpd搭建ftp

    6月22日任务 14.4 exportfs命令14.5 NFS客户端问题15.1 FTP介绍15.2/15.3 使用vsftpd搭建ftp 14.4 exportfs命令 当我们修改nfs的配置文件e ...

  7. NFS客户端挂载及永久生效

    1.NFS客户端挂载的命令格式: 挂载命令 挂载的格式类型 NFS服务器提供的共享目录 NFS客户端要挂载的目录mount -t nfs 服务器IP:/共享目录 /本地的挂载点(必须存在) 重启失效 ...

  8. windows7 10 windows2008 windws2012 nfs客户端的安装

    servermanagercmd.exe -install FS-NFS-Services   for windows2008 windows2012 在添加功能角色-添加文件打印服务选择nfs客户端 ...

  9. nfs下的exportfs命令和nfs客户端重新挂载

    工作中,如果使用了nfs服务器,会遇到修改nfs服务器配置的情况,如果想重新让客户端加载上修改后的配置,但是又不能重启rpcbind服务,我们需要使用export命令了 exportfs命令 常用选项 ...

  10. NFS客户端挂载目录后无写入权限的解决方案

    转载至:https://blog.csdn.net/younger_china/article/details/52089337 在客户机通过 mount -o rw -t nfs 192.168.1 ...

随机推荐

  1. 空间插值生物X适宜性分析

    1 前言 这期博主将根据示例大概讲一下插值分析. 2 问题阐述 根据要求,完成以下操作: (1)请就以上条件确定此地区适合X的生活范围,并制作专题图.专题图内容要求以地形和水系作为背景,且给出适宜区域 ...

  2. 原生 JS 实现 VS Code 自动切换输入法状态!这次没有AHK

    上一篇文章:使用 AHK 在 VS Code 中根据上下文自动切换输入法状态 给出一个使用 ahk 在 VSCode 自动切换输入法的方法.不过这个方法实际上很蹩脚,一点都不优(zhuang)雅(bi ...

  3. Java基础—String构造方法

    Java基础--String构造方法 public String(): 创建一个空表字符串对象,不包含任何内容 public String(char[]chs): 根据字符数组的内容,来创建字符串对象 ...

  4. kubernetes 的ingress controller 的nginx configuration配置参数

    下列列举一些参数其中常用的大家可根据实际情况自行添加(影响全局) kubectl edit cm nginx-configuration -n ingress-nginx 配置文件cm的定义: htt ...

  5. CRI容器运行时

    CRI容器运行时 我们知道 Kubernetes 提供了一个 CRI 的容器运行时接口,那么这个 CRI 到底是什么呢?这个其实也和 Docker 的发展密切相关的. 在 Kubernetes 早期的 ...

  6. java代码常用知识点

    1.Assert java断言assert是jdk1.4引入的.assert这个关键字我们称之为"断言".当这个关键字后边的条件为假的时候,程序自动崩溃并抛出AssertionEr ...

  7. react核心?

    虚拟DOM, Diff算法, 遍历key值 react-dom: 提供了针对DOM的方法,比如:把创建的虚拟DOM,渲染到页面上 或 配合ref来操作DOM react-router

  8. ubuntu18.04设置开机自启Django

    设置开机自启: rc-local.server [Unit] Description=/etc/rc.local Compatibility ConditionPathExists=/etc/rc.l ...

  9. Struts2框架提供的结果类型?

    已配置结果类型名 类 名 描 述 dispatcher org.apache.struts2.dispatcher.ServletDispatcherResult 默认结果类型,用来呈现JSP页面 c ...

  10. BeanFactory – BeanFactory 实现举例?

    Bean 工厂是工厂模式的一个实现,提供了控制反转功能,用来把应用的配置和依赖从正真的应用代码中分离. 最常用的BeanFactory 实现是XmlBeanFactory 类.