为什么要说这个呢,由于节点环境不一致,导致在重建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. 10 Java的方法 可变参数

    5.可变参数 JDK 1.5开始,Java支持传递同类型的可变参数给一个方法. 在方法声明中,在制定参数类型后加一个省略号(-). 一个方法中只能指定一个可变参数,它必须是方法的最后一个参数.任何普通 ...

  2. 测试杂谈——一条SQL引发的思考

    此篇只是个人记录,相信各位大神早已轻车熟路,不喜勿喷:有错之处,欢迎指正. 有一天收到新人的咨询,是关于sql的问题. 问题1:为什么sql查询的数据与界面展示的不准确: 问题2:为什么sql查询时间 ...

  3. Java案例——统计字符串中各种字符出现的次数

    /*案例:统计各种字符在字符串中出现的次数 分析:只考虑三种字符类型的情况下(大写字母,小写字母,数字) 1.使用Scanner 类获取字符串数据 2.遍历字符串得到每一个字符 3.判断每一个字符是那 ...

  4. Linux 环境下安装 Nexus 私服存储库

    镜像下载.域名解析.时间同步请点击阿里云开源镜像站 一.nexus私服存储库简介 Nexus 是一个强大的maven仓库管理器,它极大地简化了本地内部仓库的维护和外部仓库的访问.,还可以用来创建yum ...

  5. redis.conf配置信息详解

    redis.conf配置信息详解 配置文件 # Redis 配置文件 # 当配置中需要配置内存大小时,可以使用 1k, 5GB, 4M 等类似的格式,其转换方式如下(不区分大小写) # # 1k =& ...

  6. python写一个数字字典生成器

    #数字字典生成器 by qianxiao996 #博客地址:https://blog.csdn.net/qq_36374896 #此程序输入开始结束和位数即可在程序所在目录下生成字典 #只支持数字生成 ...

  7. 在centos7上安装iptables防火墙

    规则配置: iptables -P OUTPUT ACCEPT 1.关闭原先CentOS7自带的firewall防火墙: systemctl stop firewalld 2.安装或更新iptable ...

  8. List 和 Map 区别?

    表面来看,List是一个只是存放单个元素的集合,List集合所包含的元素可以重复,元素按放入的先后顺序来存放,程序可以通过元素的索引来读取元素,因此List相当于一个动态数组:Map则是一个存放key ...

  9. pg数据库排序和limit同时使用遇到的奇怪问题

    这两天由于一位实习生同事回学校答辩,因此我来跟进他之前开发的功能进行测试,测试反馈上来这么一个问题: 也就是说下面这两条sql查询出来的数据前10条的数据不一样. select * from tabl ...

  10. @Param注解和@Mapper注解

    @Param 1.如果dao方法中只有一个参数,入参可以为#{0}或者#{任意单词},也可以使用@Param指定参数名称,sql中就只能#{指定名称}获取参数 public List<Regio ...