NFS挂载原理
当我们在NFS服务器设置好一个共享目录/home/public后,其他的有权访问NFS服务器的NFS客户端就可以将这个目录挂载到自己文件系统的某个挂载点,这个挂载点可以自己定义,如上图客户端A与客户端B挂载的目录就不相同。并且挂载好后我们在本地能够看到服务端/home/public的所有数据。如果服务器端配置的客户端只读,那么客户端就只能够只读。如果配置读写,客户端就能够进行读写。挂载后,NFS客户端查看磁盘信息命令:df –h。
NFS通讯原理
首先服务器端启动RPC服务,并开启111端口
服务器端启动NFS服务,并向RPC注册端口信息
客户端启动RPC(portmap服务),向服务端的RPC(portmap)服务请求服务端的NFS端口
服务端的RPC(portmap)服务反馈NFS端口信息给客户端。
客户端通过获取的NFS端口来建立和服务端的NFS连接并进行数据的传输
NFS服务所需软件:
安装NFS服务,需要安装两个软件,分别是:
RPC主程序:rpcbind
NFS 其实可以被视为一个 RPC 服务,因为启动任何一个 RPC 服务之前,我们都需要做好 port 的对应 (mapping) 的工作才行,这个工作其实就是『 rpcbind 』这个服务所负责的!也就是说, 在启动任何一个 RPC 服务之前,我们都需要启动 rpcbind 才行! (在 CentOS 5.x 以前这个软件称为 portmap,在 CentOS 6.x 之后才称为 rpcbind 的!)。
NFS主程序:nfs-utils
就是提供 rpc.nfsd 及 rpc.mountd 这两个 NFS daemons 与其他相关 documents 与说明文件、执行文件等的软件!这个就是 NFS 服务所需要的主要软件。
NFS的相关文件:
主要配置文件:/etc/exports
这是 NFS 的主要配置文件了。该文件是空白的,有的系统可能不存在这个文件,主要手动建立。NFS的配置一般只在这个文件中配置即可。
NFS 文件系统维护指令:/usr/sbin/exportfs
这个是维护 NFS 分享资源的指令,可以利用这个指令重新分享 /etc/exports 变更的目录资源、将 NFS Server 分享的目录卸除或重新分享。
分享资源的登录档:/var/lib/nfs/*tab
在 NFS 服务器的登录文件都放置到 /var/lib/nfs/ 目录里面,在该目录下有两个比较重要的登录档, 一个是 etab ,主要记录了 NFS 所分享出来的目录的完整权限设定值;另一个 xtab 则记录曾经链接到此 NFS 服务器的相关客户端数据。
客户端查询服务器分享资源的指令:/usr/sbin/showmount
这是另一个重要的 NFS 指令。exportfs 是用在 NFS Server 端,而 showmount 则主要用在 Client 端。showmount 可以用来察看 NFS 分享出来的目录资源。
(1)安装NFS和rpc
#安装nfs服务
sudo yum install -y nfs-utils
#安装rpc服务
sudo yum install -y rpcbind
(2)启动服务和配置开机启动
注意:先启动rpc服务,在启动nfs服务。
#启动rpc服务
sudo systemctl start rpcbind
#配置开机启动
sudo systemctl enable rpcbind
#启动nfs服务
sudo systemctl start nfs-server
#配置开机启动
sudo systemctl enable nfs-server
(3)创建挂载点目录
sudo mkdir -p /data/es
sudo chown -R yph:yph /data/es
(4)修改配置文件
sudo vi /etc/exports
#添加
/data/es *(rw,sync,no_root_squash,no_subtree_check)
(5)刷新配置立即生效
sudo exportfs -a #刷新配置立即生效
showmount -e 192.168.60.101 #查看服务器共享目录信息
(1)安装NFS和rpc
#安装nfs服务
sudo yum install -y nfs-utils
#安装rpc服务
sudo yum install -y rpcbind
(2)启动服务和配置开机启动
注意:先启动rpc服务,在启动nfs服务。
#启动rpc服务
sudo systemctl start rpcbind
#配置开机启动
sudo systemctl enable rpcbind
#启动nfs服务
sudo systemctl start nfs-server
#配置开机启动
sudo systemctl enable nfs-server
(3)创建挂载点目录
sudo mkdir -p /data/es
sudo chown -R yph:yph /data/es
(4)挂载服务器共享目录
#查看nfs服务器的共享目录有哪些
showmount -e 192.168.60.101
手动挂载服务器目录
sudo mount -t nfs 192.168.60.101:/data/es /data/es
df -Th #查看本机的挂载点
(4.2)配置服务器启动自动挂载
#修改配置文件
sudo vim /etc/fstab
添加如下内容
192.168.60.101:/data/es /data/es nfs defaults 0 0
#立即生效
sudo mount -a
解读配置:192.168.60.101:/data/es /data/es nfs defaults 0 0
192.168.60.101:/data/es:用来挂载每个文件系统的分区设备文件名或 UUID(用于指代设备名);
/data/es:挂载点;
nfs:文件系统的类型;
defaults:各种挂载参数;
0:指定分区是否被 dump 备份;0 代表不备份,1 代表备份,2 代表不定期备份
0:指定分区是否被 fsck 检测;0 代表不检测
(1)注册资源库
(2)指定快照策略
定时快照
(3)生成快照,测试恢复
删除索引index
api恢复索引index
https://192.168.60.102:9200/_snapshot/my-snap/daily-snap-2023.03.21-ol7atsrerga6xfuizqhqja/_restore/
{
"indices": "index",
"ignore_unavailable":true
}
结果: