关键词:
概述
NFS是一款经典的网络文件系统,在Linux上我们可以通过创建一个NFS服务在不同的服务器之间共享磁盘文件,而不用在多个服务器之间进行不断的拷贝复制,麻烦且浪费存储空间。在k8s中我们也可以使用NFS来作为我们的存储类,实现文件的持久化存储。
安装
接下来我们介绍一下如何在CentOS中安装NFS服务,以及如何在客户端机器挂载NFS。
服务端
操作系统:CentOS 7.6 64bit
IP地址: 192.168.202.151
为服务端安装NFS相关组件
yum -y install nfs-utils
创建需要共享的NFS目录,并赋予相关权限
mkdir /home/nfs
chmod 777 /home/nfs
编辑配置文件/etc/exports
来配置我们的NFS服务的访问和同步策略
- ro 只读
- rw 可读写
- sync 同步写数据,保证数据不丢失
- async 异步写数据,在写入持久化存储之前进行请求响应,如果服务器重启可能会导致文件丢失或者损坏
- root_squash 将root用户(uid/gid 0)的请求映射为匿名用户(anonymous uid/gid)
- no_root_squash 禁用root_squash规则
- all_squash 将所有用户都映射为匿名用户
- no_all_squash 禁用all_squash规则,默认选项
- anonuid 指定要映射为匿名用户的uid,例如:anonuid=150
- anongid 指定要映射为匿名用户的gid,例如:anongid=100
这里我们挂载的NFS指定为可读写的目录,并且进行同步读写,将所有root用户都映射为匿名用户
/home/nfs 192.168.202.1/24(rw,sync,root_squash)
完整的配置参数介绍可以使用以下命令查看
man exports
配置完成后,启动NFS相关的服务
systemctl restart rpcbind
systemctl start nfs-server
如果需要的话,可以配置NFS服务端为开机自启动
systemctl enable rpcbind
systemctl enable nfs-server
如果不再需要开机启动时,也可以使用以下命令禁用开机自启动
systemctl disable rpcbind
systemctl disable nfs-server
客户端
操作系统:CentOS 7.6 64bit
IP地址: 192.168.202.152
为客户端安装NFS相关组件
yum -y install nfs-utils
创建需要挂载到本地的目录并赋予权限,这里任意指定,不一定要与服务端相同
mkdir /home/nfs
chmod 777 /home/nfs
将NFS文件系统挂载到本地的目录上
mount -t nfs 192.168.202.151:/home/nfs /home/nfs
如若不再需要可以使用以下命令卸载NFS目录
umount /home/nfs
如果执行上述的mount
命令一直处于等待状态,可能是服务器上启用了防火墙或者是云服务器本身的防火墙限制了端口的访问,需要在NFS服务端
开放以下端口号的访问权限:111
、2049
、20048
。如果是云服务器可以到各自的网站后台去配置防火墙策略,如果是本地的机器可以使用以下命令开放指定的端口。
firewall-cmd --zone=public --add-port=111/tcp --permanent
firewall-cmd --zone=public --add-port=111/udp --permanent
firewall-cmd --zone=public --add-port=2049/tcp --permanent
firewall-cmd --zone=public --add-port=20048/tcp --permanent
firewall-cmd --zone=public --add-port=20048/udp --permanent
firewall-cmd --reload
上述端口信息都可以在以下文件中查找到
/usr/lib/firewalld/services/nfs.xml
/usr/lib/firewalld/services/rpc-bind.xml
/usr/lib/firewalld/services/mountd.xml
如果你不关心具体的端口号,也可以直接使用以下命令,直接根据配置文件放行相应的端口
firewall-cmd --zone=public --add-service=nfs --permanent
firewall-cmd --zone=public --add-service=rpc-bind --permanent
firewall-cmd --zone=public --add-service=mountd --permanent
firewall-cmd --reload
如果想要在开机的时候自动挂载NFS目录,则需要在/etc/fstab文件中新增一行添加以下记录
192.168.202.151:/home/nfs /home/nfs nfs defaults 0 0
其他命令
# 在服务端执行,查看nfs状态信息
nfsstat -s
# 在客户端执行,查看nfs挂载信息
nfsstat -m
# 查看服务端的远程共享信息,此命令会调用服务端的20048端口
showmount -e 192.168.202.151
# 查看rpcbind注册的所有端口号
rpcinfo -p
# 在服务端执行,重新挂载/etc/exports中配置
exportfs -r
nfs搭建(代码片段)
一、环境nfsserver01:192.168.127.100 centos7.3nfsclient01:192.168.127.101 centos7.3二、NFS原理三、安装测试1、nfsserver安装[[email protected]~]#yuminstallrpcbindnfs-utils-y[[email protected]~]#mkdir/ 查看详情
nfs系统的搭建(代码片段)
问题: 由于工作,需要,不断得进行挂在硬盘重装系统,NFS系统给了我一个很好的解决方案。于是决定写一篇博客,防止以后再次使用的时候,能够很快得重新建立NFS文件系统。调研: NFS(NetworkFileSystem)即网络文... 查看详情
nfs服务搭建(centos7下)(代码片段)
...端的挂载目录查看服务端写入的文件 至此,NFS服务搭建完成 补充:rw#客户端对共享的目录可读写ro#客户端对共享的目录只读不可写sync#同步模式,也就是把内存的数据实时写入硬盘,但这样会降低磁盘效率async#... 查看详情
ubuntu下搭建nfs服务(代码片段)
1、NFS介绍NFS(NetworkFileSystem)即网络文件系统,是FreeBSD支持的文件系统中的一种,它允许网络中的计算机之间通过TCP/IP网络共享资源。在NFS的应用中,本地NFS的客户端应用可以透明地读写位于远端NFS服务器上... 查看详情
redhat6.5中搭建nfs共享存储服务(代码片段)
NFS是一种基于TCP/IP传输的网络文件系统协议,通过NFS服务客户机可以像访问本地目录一样访问远程NFS服务器中提供的共享资源,对于大多数负载均衡群集来说,使用NFS协议来共享数据库较为常见,但NFS服务没有用户认证机制,且... 查看详情
centos7搭建部署nginx+haproxy+nfs(代码片段)
目录:1.实验环境2.Nginx搭建部署3.Haporxy服务器部署4.NFS服务器部署5.实验结束实验环境:主机IP主要软件Nginx192.168.121.144nginx-1.8.1.tar.gzNginx192.168.121.145nginx-1.8.1.tar.gzHaproxy192.168.121.146HaporxyNFS192.168.121.143NFS所有主机关闭防火墙和修改... 查看详情
linux搭建nfs开发环境(代码片段)
网络文件系统,英文NetworkFileSystem(NFS),是由SUN公司研制的UNIX表示层协议,能使使用者访问网络上别处的文件就像在使用自己的计算机一样。我们可以在Ubuntu上制作板子需要的文件,然后使用NFS来加载文件到板子... 查看详情
centos7nfs网络文件系统搭建
NFS,是NetworkFileSystem的简写,即网络文件系统。网络文件系统是FreeBSD支持的文件系统中的一种,也被称为NFS.NFS允许一个系统在网络上与他人共享目录和文件。通过使用NFS,用户和程序可以像访问本地文件一样访问远端系统上的... 查看详情
centos7搭建haproxy+nginx+nfs(代码片段)
HAProxy简介HAProxy是一个使用C语言编写的自由及开放源代码软件,其提供高可用性、负载均衡,以及基于TCP和HTTP的应用程序代理。HAProxy实现了一种事件驱动,单一进程模型,此模型支持非常大的并发连接数。多进程或多... 查看详情
nfs服务器搭建与配置(代码片段)
NFS服务器搭建与配置前言一、nfs介绍:1.什么是nfs?2.为什么需要nfs服务器?3.nfs服务器是否是最佳的解决方法?4.存储服务器的优缺点5.nfs解决了什么问题?有什么优缺点?二、具体实验操作:1.环境准备:2.安装nfs的相关软件3.启动nfs-s... 查看详情
ubuntu20.04nfs搭建(代码片段)
使用命令安装NFS服务:sudoapt-getinstallnfs-kernel-serverrpcbind等待安装完成,安装完成以后在用户根目录下创建一个名为“linux”的文件夹,以后所有的东西都放到这个“linux”文件夹里面,在“linux”文件夹里面新建一... 查看详情
centos7搭建haproxy+nginx+nfs负载均衡实现高可用集群(代码片段)
...,一台服务器安装haproxy实现调度,另两台服务器搭建nginx提供web服务,一台客户机测试访问。·····················主机系统IP功能HAproxycentos7192.168.254.214HAproxynginxcentos7192.168.254.226nginxnginxcentos7192.168.254.227nginx... 查看详情
nfs服务搭建与配置(代码片段)
NFS服务搭建与配置NFS介绍NFS服务端安装配置NFS配置选项exportfs命令NFS客户端问题NFS介绍NFS是NetworkFileSystem的缩写NFS最早由Sun公司开发,分2,3,4三个版本,2和3由Sun起草开发,4.0开始Netapp公司参与并主导开发,最新为4.1版本NFS数据... 查看详情
在centos7系统中搭建docker测试mysql(代码片段)
在CentOs7系统中搭建docker测试MySQL前言对于大部分初学者朋友来说想要尝试在docker环境下使用mysql,使用阿里云,腾讯云之类的虽然更简单但花费也会增多,那为啥不自己来搭建一个简单的liunx系统试试呢?CentOS7系... 查看详情
centos7搭建nfs共享文件
1.编写exportsvim /etc/exports/data *(insecure,rw,sync,no_root_squash,no_subtree_check)2.启动nfs服务systemctl start nfssystemctl enable nfs3.测试挂载是否成功showmount -eps:我在最后测试过程 查看详情
centos7中nfs文件系统的使用(代码片段)
需求:李志亮:file01:1.1.1.1(内网ip172.20.103.212),file02:2.2.2.2(内网ip172.20.103.211)这两台机器的/dev/mapper/myvg-mylv/data这个盘都挂载到video0147.254.78.171,video0247.254.83.81这两台机器上即将file01和file02的/data目录都挂载到video01和vide 查看详情
nfs(代码片段)
...:通过网络存储和组织文件的一种方法或机制。NFS服务的搭建NFS服务,会携带启动很多的端口,而端口会经常变化。所以需要RPC服务来帮忙当中介因此搭建nfs服务第一步 查看详情