解决集群环境下文件一致性的问题:

1、方案一:直接申请共享盘,将共享盘挂载在到-A机器和B机器上。这种方式简单粗暴还实用,A、B两台机器都可以访问到这个硬盘。把文件读写目录直接指向共享硬盘就可以了。

2、采用分布式文件系统,这个我没深入研究,大家可以研究一下。

3、使用nfs共享资源目录方式实现局域网络内的可以互通的机器进行文件共享。

NFS是什么?

中文意思是网络文件系统。它的主要功能是通过网络(一般是局域网)让不同的主机系统之间可以共享文件或目录。

NFS实践

        采用3台机器进行验证, 蓝色机器是nfs的服务端,黑色机器是nfs的客户端。

linux挂载nfs共享目录卡顿 linux共享磁盘挂载nfs_运维

1、3机器必须都能在内部网络进行相互间的通信。

2、以linux-centos7为例。

3、每台机器都需要用到 nfs-utils,rpcbind。

nfs-server安装过程如下:

nfs-server:查看是否又安装nfs-utils rpcbind
rpm -qa nfs-utils rpcbind
yum -y install nfs-utils rpcbind

安装完成侯配置文件

一、配置nfs协议

vim /etc/sysconfig/nfs
设置各种*port=...参数,如果端口冲突了可以进行修改,也可以修改文件固定端口。

linux挂载nfs共享目录卡顿 linux共享磁盘挂载nfs_客户端_02

二、配置exports

配置文件:/etc/exports

设置共享目录:

linux挂载nfs共享目录卡顿 linux共享磁盘挂载nfs_linux_03

linux挂载nfs共享目录卡顿 linux共享磁盘挂载nfs_linux挂载nfs共享目录卡顿_04

linux挂载nfs共享目录卡顿 linux共享磁盘挂载nfs_服务器_05

本地NAS存储目录-配置:vim /etc/exports

/data/files 10.0.111.2/6(rw,sync,no_root_squash,no_all_squash)

/data/files 10.0.111.*(rw,sync,no_root_squash,no_all_squash)

/data/files 10.0.111.2(rw,sync,no_root_squash,no_all_squash) #以上三种方式均可,整个10.0.111.*段的电脑均可连接 /data/files 10.0.111.*(rw,sync,no_root_squash,no_all_squash)

linux挂载nfs共享目录卡顿 linux共享磁盘挂载nfs_服务器_06

添加vim /etc/exports 的配置

linux挂载nfs共享目录卡顿 linux共享磁盘挂载nfs_客户端_07

重新加载NFS配置:exportfs -arv

linux挂载nfs共享目录卡顿 linux共享磁盘挂载nfs_客户端_08

三、启动服务


systemctl start rpcbind
systemctl start nfs
 
     设置开机启动
 
systemctl enable rpcbind
systemctl enable nfs
 
查看端口占用,以便开着防火墙的时候设置
 
rpcinfo -p


查看本机共享 showmount -e 

linux挂载nfs共享目录卡顿 linux共享磁盘挂载nfs_服务器_09

nfs-client客户端安装过程:

nfs-server:查看是否又安装nfs-utils rpcbind

rpm -qa nfs-utils rpcbind
yum -y install nfs-utils rpcbind

 一、设置挂载目录 nfs-clientA 挂载目录 /data/files

linux挂载nfs共享目录卡顿 linux共享磁盘挂载nfs_linux_03

linux挂载nfs共享目录卡顿 linux共享磁盘挂载nfs_linux挂载nfs共享目录卡顿_04

linux挂载nfs共享目录卡顿 linux共享磁盘挂载nfs_服务器_05

二、将clinetA 的挂载目录:/data/files 挂载到nfs-server服务端。

1、检测是否可以访问到服务端的挂载目录

linux挂载nfs共享目录卡顿 linux共享磁盘挂载nfs_服务器_13

执行挂载命令:

linux挂载nfs共享目录卡顿 linux共享磁盘挂载nfs_linux_14

 这样就挂载成功了。

nfs-server端遇到的问题:

1、客户端访问不到服务端

端口问题,防火墙需要开放nfs-server的nfs端口 111 2049 892  

2、客户端挂载成功后/data/files 只读

原因是vim /etc/exports 配置有误导致的