在NAT模式下,缺点:调度器容易形成瓶颈;优点:安全、只需要一个公网IP、配置简单。
在TUN模式下,缺点:安全性相比较而言较差;优点:调度器与真实服务器可以分散放置(全球)。
在DR模式下,缺点:配置复杂,安全性较NAT稍差;优点:调度器与真实服务器在同一网络且均不处于网关位置,调度器负担较轻,适合较大的网络环境。
#开启路由转发
vim /etc/sysctl.conf
net.ipv4.ip_forward = 1
sysctl -p
启动ip_vs模块
LVS(Linux virtual Server)。基于IP地址和内容请求分发的负载均衡。
#启用ip_vs模块
modprobe ip_vs
lsmod | grep ip_vs
#查看ip_vs版本信息
cat /proc/net/ip_vs
echo "modprobe ip_vs" >> /etc/rc.local
LVS的负载调度算法
使用ipvsadm管理工具
ipvsadm是在负载调度器上使用的LVS群集管理工具,通过调用ip_vs模块来添加、删除服务器节点,以及查看群集的运行状态。
yum -y install ipvsadm
ipvsadm -v
LVS群集的管理工作主要包括创建虚拟服务器、添加服务器节点、查看群集节点状态、删除服务器节点、保存负载分配策略
创建虚拟服务器
ipvsadm -A -t 200.0.0.1:80 -s rr
-A : 添加虚拟服务器
-t : 指定VIP地址及TCP端口
-s : 指定负载调度算法
rr = 轮询;wrr = 加权轮询;lc = 最少连接;wlc = 加权最少连接
添加服务器节点:
ipvsadm -a -t 200.0.0.1:80 -r 192.168.1.2:80 -m -w 1
ipvsadm -a -t 200.0.0.1:80 -r 192.168.1.3:80 -m -w 1
ipvsadm -a -t 200.0.0.1:80 -r 192.168.1.4:80 -m -w 1
-a : 添加真实服务器
-t : 指定VIP地址及TCP端口
-r : 指定RIP地址及TCP端口
-m : 表示使用NAT群集模式
-m = NAT模式;-g = DR模式;-i = TUN模式
-w : 设置权重(权重为0时表示暂停节点)
查看群集节点状态:
ipvsadm -ln
Masq 全称Masquerade(地址伪装),表示采用的群集模式为NAT;如果是Route,则表示采用的群集模式为DR.
删除服务器节点:
ipvsadm -d -r 192.168.1.2:80 -t 192.168.1.1:80
#删除整个虚拟服务器
ipvsadm -D -t 192.168.1.1:80
保存负载分配策略:
#保存策略
ipvsadm-save > /etc/sysconfig/ipvsadm
chkconfig ipvsadm on
#确认保存结果
cat /etc/sysconfig/ipvsadm
#恢复LVS策略
ipvsadm-restore < /etc/sysconfig/ipvsadm
#停止与启动
service ipvsadm stop
service ipvsadm start
NFS共享存储服务
NFS是一种基于TCP/IP传输的网络文件系统协议。通过NFS协议,客户端可以像访问本地目录一样访问远程服务器中的共享资源。
使用NFS发布共享资源NFS服务的实现依赖于RPC(Remote Process Call,远端过程调用)机制,以完成远程到本地的映射过程。
#安装nfs-utils.用于NFS共享发布和访问。提供NFS共享。
yum -y install nfs-utils
#安装rpcbind.用于提供RPC支持
yum -y install rpcbind
chkconfig nfs on
chkconfig rpcbind on
设置共享目录:
mkdir -p /opt/wwwroot
vim /etc/exports
#"目录位置 客户机地址(权限选项)"
/opt/wwwroot 192.168.1.0/24(rw,sync,no_root_squash)
客户机地址 : 可以是主机名、IP地址、网段地址,允许使用*,?通配符
权限选项 : rw = 允许读写;ro = 只读;sync = 同步写入;no_root_squash = 当客户机以root身份访问时赋予本地root 权限
启动NFS服务程序:
service rpcbind start
service nfs start
netstat -antp | grep rpcbind
一定要先重启rpcbind,再重启nfs!
查看本机发布的NFS共享目录
showmount -e
在客户机中访问NFS共享资源
客户机安装并启动rpcbind服务
yum -y install rpcbind nfs-utils
chkconfig rpcbind on
service rpcbind start
查看NFS服务器共享了哪些目录:
showmount -e 192.168.1.10
手动挂载NFS共享目录:
mount 192.168.1.10:/opt/wwwroot /var/www/xingfafa
#确认挂载结果.或mount
tail -l /etc/mtab
配置fstab自动挂载:
vim /etc/fstab
192.168.1.10:/opt/wwwroot /var/www/xingfafa nfs defaults,_netdev 0 0
nfs : 文件系统类型
_netdev : 挂载参数(设备需要网络)