2019-04-17Day34 课后笔记

1、什么是NFS ?

全称 network  file  system   网络文件系统

什么是文化系统?

通过网络来存储和组织文件的一种方法或机制。

2、为什么药用共享存储?

前端所有应用服务器接收到用户上传的图片、文件、视频都会统一存储上。

为什么要共享?

所有节点服务器都需要将内容存到存储上,取的统一来取。

3、共享存储的种类?

单一存储系统就是NFS,适用于中小型企业,相当于阿里云服务的NAS服务。OSS对象存储。NFS性能不高。

大型企业会用:FastDFS、Ceph、GlsterFS、Mfs

大型存储厂商:EMS、Netapp

硬件存储:稳定、双主机头

4、NFS的工作原理

NFS网络文件系统

启动NFS服务,而且还要启动很多端口

NFS功能,需要很多服务。每个服务都有端口,而且经常变化。

如何让客户端找到这些端口?

NFS服务:

(1)、NFS服务(有很多进程和端口),将自己的端口告诉RPC

(2)、RPC服务(对外的固定端口111)

客户端请求NFS服务,需要先找到RPC111,查找NFS端口,发给客户。

实践:

1、安装

[root@nfs01~]#rpm -qa nfs-utils rpcbind

[root@nfs01~]#yum install nfs-utils rpcbind -y

2、开启rpcbind.service服务

systemctl start rpcbind.service

systemctl enable rpcbind.service

systemctl status rpcbind.service

3、开启nfs服务

rpcinfo -p 127.0.0.1

systemctl start nfs

systemctl enable nfs

systemctl status nfs

rpcinfo -p 127.0.0.1

[root@web01~]#netstat -lutup|grep rpc

[root@web01~]#ps -ef|grep rpcbind

rpc       7819      1  0 11:33 ?        00:00:00 /sbin/rpcbind -w

root      8096   7568  0 12:20 pts/0    00:00:00 grep --color=auto rpcbind

4、实践

[root@nfs01~]#tail -q /etc/exports

#yu

/data 172.16.1.0/24(rw,sync)

[root@nfs01~]# mkdir -p /data

[root@nfs01/]# ls -ld /data

drwxr-xr-x 2 root root 42 4月  16 19:09 /data

[root@nfs01/]# grep nfsno /etc/passwd

nfsnobody:x:65534:65534:Anonymous NFSUser:/var/lib/nfs:/sbin/nologin

[root@nfs01/]#chown -R nfsnobody.nfsnobody /data

[root@nfs01/]#ls -ld /data/

drwxr-xr-x 2 nfsnobody nfsnobody 42 4月  16 19:09 /data/

5、重启NFS

[root@nfs01/]#systemctl reload nfs   (平滑重启)< ===生产场景必须实现平滑重启

[root@nfs01/]# exportfs -r

6、检查

[root@nfs01/]# showmount -e 172.16.1.31

Export list for 172.16.1.31:/data 172.16.1.0/24     < ====看到共享目录

7、服务端本地挂载

[root@nfs01/]#mount -t nfs 172.16.1.31:/data /mnt

[root@nfs01/]#df -h

文件系统                 容量  已用  可用已用% 挂载点

/dev/mapper/centos-root   19G 1.9G   17G   10% /

devtmpfs                 475M     0 475M    0% /dev

tmpfs                    487M     0 487M    0% /dev/shm

tmpfs                    487M  7.6M 479M    2% /run

tmpfs                    487M     0 487M    0% /sys/fs/cgroup

/dev/sda1                253M  144M 109M   57% /boot

tmpfs                     98M     0  98M    0% /run/user/0

172.16.1.31:/data         19G 1.9G   17G   10% /mnt

[root@nfs01/]# touch /mnt/oldboy.txt

[root@nfs01/]# ls /mnt/

a b  c  d oldboy.txt

换到web01挂载

1、安装

[root@nfs01~]#rpm -qa nfs-utils rpcbind

[root@nfs01~]#yum install nfs-utils rpcbind -y

2、开启rpcbind.service服务

systemctl start rpcbind.service

systemctl enable rpcbind.service

systemctl status rpcbind.service

[root@web01~]#netstat -lutup|grep rpc

[root@web01~]#ps -ef|grep rpcbind

rpc       7819      1  0 11:33 ?        00:00:00 /sbin/rpcbind -w

root      8096   7568  0 12:20 pts/0    00:00:00 grep --color=auto rpcbind

3、查看NFS服务器提供的共享目录

[root@web01~]#showmount -e 172.16.1.31

Export list for 172.16.1.31:

/data 172.16.1.0/24

4、挂载

[root@web01/]# mount -t nfs 172.16.1.31:/data /mnt

[root@web01/]# df -h

文件系统                 容量  已用  可用已用% 挂载点

/dev/mapper/centos-root   19G 1.9G   17G   10% /

devtmpfs                 475M     0 475M    0% /dev

tmpfs                    487M     0 487M    0% /dev/shm

tmpfs                    487M  7.6M 479M    2% /run

tmpfs                    487M     0 487M    0% /sys/fs/cgroup

/dev/sda1                253M  144M 109M   57% /boot

tmpfs                     98M     0  98M    0% /run/user/0

172.16.1.31:/data         19G 1.9G   17G   10% /mnt

[root@web01/]#touch /mnt/yu.txt

[root@web01/]#ls /mnt/

a b  c  d  oldboy.txt  yu.txt

backup端和web端的配置方法一致。

最后就是实现开机自动挂载

1、[root@nfs01/]# vim /etc/rc.local 

如果开机没有实现自动挂载,就需要去查看/etc/rc.d/rc.local/这个文件的权限,如果没有加执行权限x,那么开机时不会进行自动挂载的。

2、在/etc/fstab 中进行配置

       但是在/etc/fstab中配置会出现开机无法自动挂载的情况,大致原因是因为NFS服务开启和系统其他软件的开启是要有先后顺序的。NFS服务需要系统网络自启以后才会去启动。如果在/etc/fstab中记性配置的话,会造成NFS和系统其他服务一起启动。从而导致无法实现自动挂载。

你可能感兴趣的:(2019-04-17Day34 课后笔记)