NFS部署过程

课前回顾 及 NFS

NFS部署过程

1)安装服务端

yum install -y nfs-utils rpcbind

2)修改配置文件

vim /etc/exports#共享目录       IP网段            参数/data 172.16.1.0/24(rw,sync,all_squash,anonuid=666,anongid=666)

3)nfs自带用户:nfsnobody 65534,自己创建用户

groupadd www -g 666useradd www -u 666 -g 666 -s /sbin/nologin -M

4)创建共享目录

mkdir /datachown -R www.www /data

5)启动服务

systemctl start rpcbind nfs-server

客户端部署

1)安装rpcbind和nfs

yum install -y rpcbind nfs-utils

2)启动rpcbind

systemctl start rpcbind

3)查看可挂载点

showmount -e 172.16.1.31

4)挂载

mount -t nfs 172.16.1.31:/data /var/www/html/tupian

5)开机挂载

vim /etc/fstab172.16.1.31:/data /var/www/html/tupian nfs defaults 0 0

6)使用mount -a 检测

[[email protected] ~]# mount -a

7)卸载

umount /var/www/html/tupian#强制卸载umount -lf /var/www/html/tupian

8)nfs挂载文件

[[email protected] ~]# cat /var/lib/nfs/etab

9)增加挂载的安全性

#通过mount -o指定挂载参数,禁止使用suid,exec,增加安全性能[[email protected] ~]# mount -t nfs -o nosuid,noexec,nodev 172.16.1.31:/data /mnt

nfs配置参数

rw:共享目录的权限是 可读 可写

sync:同时将数据写入内存和磁盘,增强数据的安全性,保证数据不丢失

all_squash:无论使用什么用上传或者访问,一律压缩成 nfs的匿名用户

anonuid:指定一个匿名用户,必须是系统存在的uid

anongid:指定一个匿名用户组,必须是系统存在的gid

----------------------------------------------不常用--------------------------------------------

root_squash 当NFS客户端以root管理员访问时,映射为NFS服务器的匿名用户(不常用)
no_root_squash 当NFS客户端以root管理员访问时,映射为NFS服务器的root管理员(不常用)
no_all_squash 无论NFS客户端使用什么账户访问,都不进行压缩
async 优先将数据保存到内存,然后再写入硬盘;这样效率更高,但可能会丢失数据
ro 只读权限
   

NFS存储小结

  • NFS存储优点

    • 1)NFS文件系统简单易用、方便部署、数据可靠、服务稳定、满足中小企业需求。

      2)NFS文件系统内存放的数据都在文件系统之上,所有数据都是能看得见。

    • NFS存储局限

      • 1)存在单点故障, 如果构建高可用维护麻烦web->nfs()->backup
      • 2)NFS数据明文, 并不对数据做任何校验。
      • 3)客户端挂载NFS服务没有密码验证, 安全性一般(内网使用)

3.NFS应用建议 1)生产场景应将静态数据尽可能往前端推, 减少后端存储压力

2)必须将存储里的静态资源通过CDN缓存jpg\png\mp4\avi\css\js

3)如果没有缓存或架构本身历史遗留问题太大, 在多存储也无用

rsync+nfs实战,解决nfs的单点故障

服务器系统 角色 IP
CentOS 7.5 NfsServer(A) 172.16.1.31
CentOS 7.5 NfsClient(B) 172.16.1.41
CentOS 7.5 NfsClient(C) 172.16.1.7

1)安装服务端

yum install -y rpcbind nfs-utils

2)编辑服务端的配置文件

vim /etc/exports/data 172.16.1.0/24(rw,sync,all_squash,anonuid=666,anongid=666)

3)创建用户

groupadd www -g 666useradd www -u 666 -g 666 -s /sbin/nologin -M

4)创建目录并授权

mkdir /datachown -R www.www /data

5)启动服务

systemctl start rpcbind nfs-server

6)检查

cat /var/lib/nfs/etab/data   172.16.1.0/24(rw,sync,wdelay,hide,nocrossmnt,secure,root_squash,all_squash,no_subtree_check,secure_locks,acl,no_pnfs,anonuid=666,anongid=666,sec=sys,rw,secure,root_squash,all_squash)

配置客户端

1)安装客户端服务

yum install -y rpcbind nfs-utils

2)启动rpc

systemctl start rpcbind

3)查看挂载点

showmount -e 172.16.1.31

4)挂载

mount -t nfs 172.16.1.31:/data /var/www/html/tupian

结合rsync

1)NFS安装rsync

yum install -y rsync

2)客户端与服务端的关系

3)使用免密的方式

export RSYNC_PASSWORD=123456

rsync服务端操作(backup)

1)创建www用户

groupadd www -g 666
useradd www -u 666 -g 666 -s /sbin/nologin -M

2)统一rsync服务的用户和用户组(修改配置文件)

vim /etc/rsyncd.conf
uid = www
gid = www
port = 873
fake super = yes
use chroot = no
max connections = 200
timeout = 600
ignore errors
read only = false
list = false
auth users = rsync_backup
secrets file = /etc/rsync.passwd
log file = /var/log/rsyncd.log
#####################################
[zls]
comment = welcome to oldboyedu backup!
path = /backup

[nfs]
comment = welcome to oldboyedu nfs!
path = /data

3)创建目录并授权

[[email protected] ~]# mkdir /data
[[email protected] ~]# chown -R www.www /data/

4)编写备份脚本

vim rsync.sh
#!/bin/bash

PATH=‘/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin‘
H=`hostname`
I=`ifconfig eth1|awk ‘NR==2{print $2}‘`
D=`date +%F`
S=${H}_${I}_${D}
BD=/backup
export RSYNC_PASSWORD=123456

mkdir -p ${BD}/${S}

tar zcf ${BD}/${S}/conf.tar.gz /etc/passwd &>/dev/null

md5sum ${BD}/${S}/conf.tar.gz  > /backup/${I}.txt

rsync -az ${BD}/ [email protected]::zls
rsync -az --delete /data/ [email protected]::nfs
find ${BD} -type d -mtime +7|xargs rm -fr

5)安装nfs服务端

[[email protected] ~]# yum install -y rpcbind nfs-utils

6)编辑配置文件

[[email protected] ~]# vim /etc/exports
/data 172.16.1.0/24(rw,sync,all_squash,anonuid=666,anongid=666)

7)启动服务

[[email protected] ~]# systemctl start rpcbind nfs-server
[[email protected] ~]# systemctl enable rpcbind nfs-server

web01客户端写脚本

#!/bin/bash

check_nfs=`df -h|grep ‘/var/www/html/tupian‘|wc -l`
if [ $check_nfs -eq 0 ];then
        showmount -e 172.16.1.31 &>/dev/null
        if [ $? -eq 0 ];then
                mount -t nfs 172.16.1.31:/data /var/www/html/tupian
        else
                mount -t nfs 172.16.1.41:/data /var/www/html/tupian
        fi
fi

 

5.录视频

原文地址:https://www.cnblogs.com/223zhp/p/11372880.html

时间: 2024-10-10 13:28:32

NFS部署过程的相关文章

redhat下oracle11g的安装部署过程

一.检查Linux够不够1个G: 方法: #grep MemTotal /proc/meminfo 二.检查交换分区的大小: 方法: #grep SwapTotal  /proc/meminfo 参考例图如下: 屏幕剪辑的捕获时间: 2013/9/24 星期二 7:45 这一步很重要:Package Requirements 1.Oracle Database Package Requirements for Linux x86 Operating System Requirement Orac

SCCM 2012 R2安装部署过程和问题(一)

在进行Windows Server 2012 R2虚拟化测试前,由于需要安装,部署和管理很多的服务器,自然会想到该如何提高效率和有效的管理.在Windows Server 2008的时代微软已经提供称作Windows部署服务(Windows Deloyment Services, WDS)的服务器角色,使用该服务器角色可以完成PXE和多播安装和部署服务器的任务.但是微软还有一个更强大的工具称为System Center Configuration Manager(SCCM).SCCM其实是Sys

ubuntu16.4安装部署过程

以下是ubuntu16.4安装部署过程,之前每次安装都要去找半天过程,所以自己整理了一下. 有的人可能没有这一步,无妨,继续向下 这是在给你自动配置一些东西,如果你想手动自己配置,可以选择中断,下面的进度条同样. 也可以选择系统配置同时设置LVN,即第二项 配置完成,可以重新启动.因为我的网络是系统自动配置,也可以自己手动添加.

淘宝分布式 key/value 存储引擎Tair安装部署过程及Javaclient測试一例

文件夹 1. 简单介绍 2. 安装步骤及问题小记 3. 部署配置 4. Javaclient測试 5. 參考资料 声明 1. 以下的安装部署基于Linux系统环境:centos 6(64位),其他Linux版本号可能有所差异. 2. 网上有人说tair安装失败可能是由于gcc版本号问题,高版本号的gcc可能不支持某些特性导致安装失败.经过实验证明.该说法是错误的,tair安装失败有各种可能的原因但绝对与gcc版本号无关,比方我的gcc開始版本号为4.4.7,后来tair安装失败,我又一次编译低版

NFS部署及优化(二)

NFS部署及优化(二) 一.如何配置更改文件用户 在B机器上: 在实际生产环境当中,直接用映射过来的nfsnobody用户并不合适 那么如何来指定新建的这个用户呢? 下面我们先来创建一个普通用户,命令如下: [[email protected] shiyan]# useradd user111 [[email protected] shiyan]# cat /etc/passwd |grep user111 user111:x:502:502::/home/user111:/bin/bash #

linux下smb打印服务器部署过程(对windows终端)

一. 需求 用户需求:员工需要打印多种资料.标书.凭证.打印需求很大.建立稳健的打印服务系统,以方便员工打印.复印.扫描. 细化需求: 1.部署一台装有开源系统的打印服务器: 2.高可用性.可靠性: 3.方便安装,在windows端感受不到平台差异: 4.打印机以windows计算机名为用户名,能记录打印作业的发送者.文档名.大小.提交时间,方便在出现打印故障时找到问题电脑快速修复: 5.不能接收扫描文档: 6.能兼容xp.win7的32.64位系统. 二.部署过程 1.安装RHEL6.3时,选

超详细从零记录Hadoop2.7.3完全分布式集群部署过程

超详细从零记录Ubuntu16.04.1 3台服务器上Hadoop2.7.3完全分布式集群部署过程.包含,Ubuntu服务器创建.远程工具连接配置.Ubuntu服务器配置.Hadoop文件配置.Hadoop格式化.启动.(首更时间2016年10月27日) 主机名/hostname IP 角色 hadoop1 192.168.193.131 ResourceManager/NameNode/SecondaryNameNode hadoop2 192.168.193.132 NodeManager/

淘宝分布式 key/value 存储引擎Tair安装部署过程及Java客户端测试一例

目录 1. 简介 2. 安装步骤及问题小记 3. 部署配置 4. Java客户端测试 5. 参考资料 声明 1. 下面的安装部署基于Linux系统环境:centos 6(64位),其它Linux版本可能有所差异. 2. 网上有人说tair安装失败可能是因为gcc版本问题,高版本的gcc可能不支持某些特性导致安装失败,经过实验证明,该说法是错误的,tair安装失败有各种可能的原因但绝对与gcc版本无关,比如我的gcc开始版本为4.4.7,后来tair安装失败,我重新编译低版本的gcc(gcc4.1

hudson部署过程

hudson部署过程: java安装 http://developer.51cto.com/art/201504/470683.htm tomcat安装 http://blog.csdn.net/huyisu/article/details/38372663 注册环境变量 hudson安装 http://www.ttlsa.com/tools/install-hudson-on-linux/ (1)将hudson-3.3.2.war放到./tomecat/webapps目录下: (2)到./to