共计 9544 个字符,预计需要花费 24 分钟才能阅读完成。
10.3 NFS 服务端部署环境准备
10.3.1 NFS 服务部署服务器准备
服务器系统 | 角色 | IP |
CentOS6.7 x86_64 | NFS 服务器端(NFS-server) | 192.168.1.14 |
Centos6.7 x86_64 | NFS 客户端(Web-lamp01) | 192.168.1.15 |
Centos6.7 x86_64 | NFS 客户端(Web-lnmp02) | 192.168.1.16 |
10.3.2 NFS 服务部署架构图
10.3.3 NFS 服务器端操作系统及内核版本
1 [root@NFS-server ~]# cat /etc/RedHat-release | |
2 CentOS release 6.7 (Final) | |
3 [root@NFS-server ~]# username -r | |
4 [root@NFS-server ~]# uname -r | |
5 2.6.32-573.el6.x86_64 | |
6 [root@NFS-server ~]# uname -m | |
7 x86_64 |
10.4 NFS 服务安装前准备
10.4.1 查询 nfs-utils 和 rpcbind 包是否安装
1 [root@NFS-server ~]# rpm -qa nfs-utils rpcbind ## 查询结果为两个安装包都未安装 | |
2 [root@NFS-server ~]# |
知识扩展:
安装 NFS 软件安装的 3 种方法:
检查:rpm -qa nfs-utils rpcbind ←最佳
1) 方法 1:yum -y install nfs-utils rpcbind
2) 方法 2: 通过系统光盘里的 rpm 包安装,命令如:rpm -ivh nfs-utils-1.2.3-36.e16.x86_64.rpm
3) 方法 3:LANG=en
yum grouplist|grep -i nfs
yum groupinstall “NFS file server” -y
10.4.2 使用方法 1 安装所需软件包
10.4.3 检查安装包是否安装上
1 [root@NFS-server ~]# rpm -qa nfs-utils rpcbind | |
2 rpcbind-0.2.0-11.el6_7.x86_64 | |
3 nfs-utils-1.2.3-64.el6.x86_64 |
10.4.4 接下来启动相应的服务
1 [root-server ~]# /etc/init.d/rpcbind status <== 检查 rpcbind 服务状态 | |
2 rpcbind is stopped | |
3 [root-server ~]# rpcinfo -p localhost <==rpcbind 服务未启动检查 rpcinfo 信息报错 | |
4 rpcinfo: can't contact portmapper: RPC: Remote system error - Connection refused | |
5 [root-server ~]# /etc/init.d/rpcbind start <== 启动 rpcbind 服务 | |
6 Starting rpcbind: [OK] | |
7 [root-server ~]# /etc/init.d/rpcbind status | |
8 rpcbind (pid 2083) is running... | |
9 [root-server ~]# /etc/init.d/nfs status <== 查看 nfs 服务状态 | |
10 rpc.svcgssd is stopped | |
11 rpc.mountd is stopped | |
12 nfsd is stopped | |
13 rpc.rquotad is stopped | |
14 [root-server ~]# /etc/init.d/nfs start <== 启动 nfs 服务 | |
15 Starting NFS services: [OK] | |
16 Starting NFS quotas: [OK] | |
17 Starting NFS mountd: [OK] | |
18 Starting NFS daemon: [OK] | |
19 Starting RPC idmapd: [OK] |
10.4.5 设置开机自启动
1 [root@NFS-server ~]# chkconfig --level 35 nfs on <== 设置 nfs 服务开机自启动 | |
2 [root@NFS-server ~]# chkconfig --list nfs | |
3 nfs 0:off 1:off 2:off 3:on 4:off 5:on 6:off | |
4 [root@NFS-server ~]# chkconfig --level 35 rpcbind on | |
5 [root@NFS-server ~]# chkconfig --list rpcbind <==<== 设置 rpcbind 服务开机自启动 | |
6 rpcbind 0:off 1:off 2:on 3:on 4:on 5:on 6:off |
10.5 配置 NFS 服务端
10.5.1 NFS 服务端配置文件路径
NFS 服务配置文件路径为:/etc/exports, 并且默认是为空。
1 [root@NFS-server ~]# ll /etc/exports | |
2 -rw-r--r--. 1 root root 0 Jan 12 2010 /etc/exports | |
3 [root@NFS-server ~]# cat /etc/exports | |
4 [root@NFS-server ~]# |
10.5.2 编辑 NFS 服务端配置文件
1 [root@NFS-server ~]# vim /etc/exports | |
2 /data 192.168.1.0/24(rw,sync,all_squash) <== 添加如下内容 |
1 [root@NFS-server ~]# vim /etc/exports | |
2 /data 192.168.1.0/24(rw,sync,all_squash) <== 添加如下内容 | |
3 [root@NFS-server ~]# mkdir -p /data <== 创建共���目录 /data | |
4 [root@NFS-server ~]# ls -ld /data | |
5 drwxr-xr-x. 3 root root 4096 Nov 26 15:19 /data <== 当前共享目录的属主属组分别为 root | |
6 [root@NFS-server ~]# chown -R nfsnobody.nfsnobody /data <== 修改 /data 及子文件属主属组为 nfsnobody | |
7 [root@NFS-server ~]# ls -ld /data | |
8 drwxr-xr-x. 3 nfsnobody nfsnobody 4096 Nov 26 15:19 /data |
10.5.3 重新加载 NFS 服务 (优雅重启)
1 [root@NFS-server ~]# /etc/init.d/nfs reload ===exportfs -r | |
2 [root@NFS-server ~]# cat /var/lib/nfs/etab | |
3 /data 192.168.1.0/24(rw,sync,wdelay,hide,nocrossmnt,secure,root_squash,all_squash,no_subtree_check,secure_locks,acl,anonuid=65534,anongid=65534,sec=sys,rw,root_squash,all_squash) | |
4 [root@NFS-server ~]# showmount -e 192.168.1.14 <== 挂载前首先检查有权限需要挂载的信息 | |
5 Export list for 192.168.1.14: | |
6 /data 192.168.1.0/24 <--- 可以看到共享 /data 目录 |
10.5.4 检查或测试挂载
1 [root@NFS-server test]# mount -t nfs 192.168.1.14:/data /mnt ## 将 /data 共享目录挂载到 /mnt 目录 | |
2 [root@NFS-server test]# df -h | |
3 Filesystem Size Used Avail Use% Mounted on | |
4 /dev/sda3 7.1G 1.5G 5.3G 22% / | |
5 tmpfs 279M 0 279M 0% /dev/shm | |
6 /dev/sda1 190M 36M 145M 20% /boot | |
7 192.168.1.14:/data 7.1G 1.5G 5.3G 22% /mnt |
注意:
大型企业工作场景统一按照运维规范将服务的启动写到 /etc/rc.local 文件里,而不用 chkconfig 管理。把 /etc/rc.local 文件作为本机的重要档案,所有服务的开机自启动都必须放入 /etc/rc.local。这样规范的好处是,一旦有运维人员离职,或者业务迁移时都通过 /etc/rc.local 很容易查看服务器相关的服务,可以方便运维管理。并且把启动命令放入到 /etc/rc.local 文件中一定要加上启动服务的注释。
1 [root@NFS-server test]# vim /etc/rc.local | |
2 #!/bin/sh | |
3 # | |
4 # This script will be executed *after* all the other init scripts. | |
5 # You can put your own initialization stuff in here if you don't | |
6 # want to do the full Sys V style init stuff. | |
7 | |
8 touch /var/lock/subsys/local | |
9 #start up nfs services by zhurui at 20160226 | |
10 /etc/init.d/rpcbind start <== 开机自启 rpcbind 服务 | |
11 /etc/init.d/nfs start <== 开机自启 nfs 服务 |
Web-lamp01 客户端部署:
1 1. 安装软件 | |
2 [root@Web-lamp01 ~]# yum -y install nfs-utils rpcbind | |
3 Loaded plugins: fastestmirror, security | |
4 Setting up Install Process | |
5 Loading mirror speeds from cached hostfile | |
6 * base: mirrors.sina.cn | |
7 * extras: mirrors.opencas.cn | |
8 * updates: centos.ustc.edu.cn | |
9 base | 3.7 kB 00:00 | |
10 extras | 3.4 kB 00:00 | |
11 extras/primary_db | 34 kB 00:00 | |
12 updates | 3.4 kB 00:00 | |
13 2. 启动 rpcbind | |
14 [root@Web-lamp01 ~]# /etc/init.d/rpcbind start | |
15 Starting rpcbind: [OK] | |
16 [root@Web-lamp01 ~]# | |
17 3. 配置开机自启动 | |
18 [root@Web-lamp01 ~]# chkconfig --level 35 rpcbind on | |
19 [root@Web-lamp01 ~]# chkconfig --list rpcbind | |
20 rpcbind 0:off 1:off 2:on 3:on 4:on 5:on 6:off | |
21 [root@Web-lamp01 ~]# | |
22 4. 测试服务端共享 | |
23 [root@Web-lamp01 ~]# showmount -e 192.168.1.14 | |
24 Export list for 192.168.1.14: | |
25 /data 192.168.1.0/24 | |
26 5. 挂载 | |
27 [root@Web-lamp01 ~]# mount -t nfs 192.168.1.14:/data /mnt | |
28 [root@Web-lamp01 ~]# df -h | |
29 Filesystem Size Used Avail Use% Mounted on | |
30 /dev/sda3 7.1G 1.5G 5.3G 22% / | |
31 tmpfs 279M 0 279M 0% /dev/shm | |
32 /dev/sda1 190M 36M 145M 20% /boot | |
33 192.168.1.14:/data 7.1G 1.5G 5.3G 22% /mnt | |
34 6. 测试读, 写 | |
35 服务器端:36 [root@NFS-server test]# cd /data/ | |
37 [root@NFS-server data]# ll | |
38 total 8 | |
39 -rw-r--r--. 1 nfsnobody nfsnobody 0 Nov 28 12:20 fs.sf | |
40 drwxr-xr-x. 2 nfsnobody nfsnobody 4096 Nov 26 15:19 test | |
41 drwxr-xr-x. 2 nfsnobody nfsnobody 4096 Nov 28 12:20 zhurui | |
42 [root@NFS-server data]# mkdir zhurui1 | |
43 [root@NFS-server data]# ll | |
44 total 12 | |
45 -rw-r--r--. 1 nfsnobody nfsnobody 0 Nov 28 12:20 fs.sf | |
46 drwxr-xr-x. 2 nfsnobody nfsnobody 4096 Nov 26 15:19 test | |
47 drwxr-xr-x. 2 nfsnobody nfsnobody 4096 Nov 28 12:20 zhurui | |
48 drwxr-xr-x. 2 root root 4096 Nov 28 12:21 zhurui1 | |
49 客户端:50 [root@Web-lamp01 ~]# cd /mnt/ | |
51 [root@Web-lamp01 mnt]# ll | |
52 total 4 | |
53 drwxr-xr-x. 2 nobody nobody 4096 Nov 26 15:19 test | |
54 [root@Web-lamp01 mnt]# touch fs.sf | |
55 [root@Web-lamp01 mnt]# ll | |
56 total 4 | |
57 -rw-r--r--. 1 nobody nobody 0 Nov 28 12:20 fs.sf | |
58 drwxr-xr-x. 2 nobody nobody 4096 Nov 26 15:19 test | |
59 [root@Web-lamp01 mnt]# mkdir zhurui | |
60 [root@Web-lamp01 mnt]# ls -ld zhurui/ | |
61 drwxr-xr-x. 2 nobody nobody 4096 Nov 28 12:20 zhurui/ | |
62 [root@Web-lamp01 mnt]# ll | |
63 total 12 | |
64 -rw-r--r--. 1 nobody nobody 0 Nov 28 12:20 fs.sf | |
65 drwxr-xr-x. 2 nobody nobody 4096 Nov 26 15:19 test | |
66 drwxr-xr-x. 2 nobody nobody 4096 Nov 28 12:20 zhurui | |
67 drwxr-xr-x. 2 nobody nobody 4096 Nov 28 12:21 zhurui1 | |
68 7. 开机自启动 | |
69 [root@Web-lamp01 mnt]# vim /etc/rc.local | |
70 #start up rpcbind services by zhurui 20160226 | |
71 | |
72 /etc/init.d/rpcbind start | |
73 | |
74 /bin/mount -t nfs 192.168.1.14:/data /mnt |
Web-lnmp02 客户端部署跟 Web-lamp01 部署步骤相同,这里就不多加说明
14 1 1. 安装软件 | |
15 2 [root@Web-lnmp02 ~]# yum -y install nfs-utils rpcbind | |
16 3 Loaded plugins: fastestmirror, security | |
17 4 Setting up Install Process | |
18 5 Loading mirror speeds from cached hostfile | |
19 6 * base: mirrors.sina.cn | |
20 7 * extras: mirrors.opencas.cn | |
21 8 * updates: centos.ustc.edu.cn | |
22 9 base | 3.7 kB 00:00 | |
23 10 extras | 3.4 kB 00:00 | |
24 11 extras/primary_db | 34 kB 00:00 | |
25 12 updates | 3.4 kB 00:00 | |
26 13 2. 启动 rpcbind | |
27 14 [root@Web-lnmp02 ~]# /etc/init.d/rpcbind start | |
28 15 Starting rpcbind: [OK] | |
29 16 [root@Web-lnmp02 ~]# | |
30 17 3. 配置开机自启动 | |
31 18 [root@Web-lnmp02 ~]# chkconfig --level 35 rpcbind on | |
32 19 [root@Web-lnmp02 ~]# chkconfig --list rpcbind | |
33 20 rpcbind 0:off 1:off 2:on 3:on 4:on 5:on 6:off | |
34 21 [root@Web-lnmp02 ~]# | |
35 22 4. 测试服务端共享 | |
36 23 [root@Web-lnmp02 ~]# showmount -e 192.168.1.14 | |
37 24 Export list for 192.168.1.14: | |
38 25 /data 192.168.1.0/24 | |
39 26 5. 挂载 | |
40 27 [root@Web-lnmp02 ~]# mount -t nfs 192.168.1.14:/data /mnt | |
41 28 [root@Web-lnmp02 ~]# df -h | |
42 29 Filesystem Size Used Avail Use% Mounted on | |
43 30 /dev/sda3 7.1G 1.5G 5.3G 22% / | |
44 31 tmpfs 279M 0 279M 0% /dev/shm | |
45 32 /dev/sda1 190M 36M 145M 20% /boot | |
46 33 192.168.1.14:/data 7.1G 1.5G 5.3G 22% /mnt | |
47 34 6. 测试读, 写 | |
48 35 服务器端:49 36 [root@NFS-server test]# cd /data/ | |
50 37 [root@NFS-server data]# ll | |
51 38 total 8 | |
52 39 -rw-r--r--. 1 nfsnobody nfsnobody 0 Nov 28 12:20 fs.sf | |
53 40 drwxr-xr-x. 2 nfsnobody nfsnobody 4096 Nov 26 15:19 test | |
54 41 drwxr-xr-x. 2 nfsnobody nfsnobody 4096 Nov 28 12:20 zhurui | |
55 42 [root@NFS-server data]# mkdir zhurui1 | |
56 43 [root@NFS-server data]# ll | |
57 44 total 12 | |
58 45 -rw-r--r--. 1 nfsnobody nfsnobody 0 Nov 28 12:20 fs.sf | |
59 46 drwxr-xr-x. 2 nfsnobody nfsnobody 4096 Nov 26 15:19 test | |
60 47 drwxr-xr-x. 2 nfsnobody nfsnobody 4096 Nov 28 12:20 zhurui | |
61 48 drwxr-xr-x. 2 root root 4096 Nov 28 12:21 zhurui1 | |
62 49 客户端:63 50 [root@Web-lnmp02 ~]# cd /mnt/ | |
64 51 [root@Web-lnmp02 mnt]# ll | |
65 52 total 4 | |
66 53 drwxr-xr-x. 2 nobody nobody 4096 Nov 26 15:19 test | |
67 54 [root@Web-lnmp02 mnt]# touch fs.sf | |
68 55 [root@Web-lnmp02 mnt]# ll | |
69 56 total 4 | |
70 57 -rw-r--r--. 1 nobody nobody 0 Nov 28 12:20 fs.sf | |
71 58 drwxr-xr-x. 2 nobody nobody 4096 Nov 26 15:19 test | |
72 59 [root@Web-lnmp02 mnt]# mkdir zhurui | |
73 60 [root@Web-lnmp02 mnt]# ls -ld zhurui/ | |
74 61 drwxr-xr-x. 2 nobody nobody 4096 Nov 28 12:20 zhurui/ | |
75 62 [root@Web-lnmp02 mnt]# ll | |
76 63 total 12 | |
77 64 -rw-r--r--. 1 nobody nobody 0 Nov 28 12:20 fs.sf | |
78 65 drwxr-xr-x. 2 nobody nobody 4096 Nov 26 15:19 test | |
79 66 drwxr-xr-x. 2 nobody nobody 4096 Nov 28 12:20 zhurui | |
80 67 drwxr-xr-x. 2 nobody nobody 4096 Nov 28 12:21 zhurui1 | |
81 68 7. 开机自启动 | |
82 69 [root@Web-lnmp02 mnt]# vim /etc/rc.local | |
83 70 #start up rpcbind services by zhurui 20160226 | |
84 71 | |
85 72 /etc/init.d/rpcbind start | |
86 73 | |
87 74 /bin/mount -t nfs 192.168.1.14:/data /mnt |
10.6 mount 挂载性能优化参数选项
(1) 禁止更新目录及文件时间戳挂载
1 mount -t nfs -o noatime,nodiratime 192.168.1.14:/data
(2) 安全加优化的挂载方式
1 mount -t nfs -o nosuid,noexec,nodev,noatime,nodiratime,intr,rsize=131072,wsize=131072 192.168.1.14:/data /mnt
(3) 默认的挂载方式
1 mount -t nfs 192.168.1.14:/data /mnt
10.7 NFS 内核优化
对应的具体内核优化命令:
1 cat >>/etc/sysctl.conf<<EOF | |
2 net.core.wmem_default = 8388608 | |
3 net.core.rmem_default = 8388608 | |
4 net.core.rmem_max = 16777216 | |
5 net.core.wmem_max = 16777216 | |
6 EOF |
执行 sysctl - p 生效
————————————– 分割线 ————————————–
Ubuntu 12.04 安装 NFS server http://www.linuxidc.com/Linux/2012-09/70728.htm
NFS 服务器安装配置实现 Ubuntu 12.04 与 ARM 文件共享 http://www.linuxidc.com/Linux/2012-10/73159.htm
Ubuntu 搭建 nfs 服务器 http://www.linuxidc.com/Linux/2012-10/71930.htm
文件服务器 NFS 配置详解 http://www.linuxidc.com/Linux/2013-06/86542.htm
Ubuntu 下搭建 NFS 网络文件系统服务器 http://www.linuxidc.com/Linux/2013-07/87367.htm
Heartbeat_ldirector+LB+NFS 实现 HA 及 LB、文件共享 http://www.linuxidc.com/Linux/2013-06/85292.htm
CentOS 5.5 配置 NFS 服务器教程 http://www.linuxidc.com/Linux/2013-03/81737.htm
Ubuntu 12.10 下 NFS 的安装使用 http://www.linuxidc.com/Linux/2013-03/80478.htm
————————————– 分割线 ————————————–
本文永久更新链接地址 :http://www.linuxidc.com/Linux/2016-02/128709.htm
