LVS/NAT实战篇(二)

一、LVS/NAT原理和特点

1. 重点理解NAT方式的实现原理和数据包的改变。

(1). 当用户请求到达Director Server,此时请求的数据报文会先到内核空间的PREROUTING链。 此时报文的源IP为CIP,目标IP为VIP 
(2). PREROUTING检查发现数据包的目标IP是本机,将数据包送至INPUT链
(3). IPVS比对数据包请求的服务是否为集群服务,若是,修改数据包的目标IP地址为后端服务器IP,然后将数据包发至POSTROUTING链。 此时报文的源IP为CIP,目标IP为RIP 
(4). POSTROUTING链通过选路,将数据包发送给Real Server
(5). Real Server比对发现目标为自己的IP,开始构建响应报文发回给Director Server。 此时报文的源IP为RIP,目标IP为CIP 
(6). Director Server在响应客户端前,此时会将源IP地址修改为自己的VIP地址,然后响应给客户端。 此时报文的源IP为VIP,目标IP为CIP

2. LVS-NAT模型的特性

  • RS应该使用私有地址,RS的网关必须指向DIP
  • DIP和RIP必须在同一个网段内
  • 请求和响应报文都需要经过Director Server,高负载场景中,Director Server易成为性能瓶颈
  • 支持端口映射
  • RS可以使用任意操作系统
  • 缺陷:对Director Server压力会比较大,请求和响应都需经过director server

二、LVS/NAT环境

三、实践

1)配置各个vm的IP地址(lvs调度器有两块网卡)完成之后

2)配置LVS调度器

yum -y install ipvsadm //安装ipvsadm工具

ipvsadm -v //查看版本

ipvsadm -A -t 172.16.16.172:80 -s rr

ipvsadm -a -t 172.16.16.172:80 -r 192.168.7.21:80 -m -w 1

ipvsadm -a -t 172.16.16.172:80 -r 192.168.7.22:80 -m -w 1

ipvsadm -a -t 172.16.16.172:80 -r 192.168.7.23:80 -m -w 1

ipvsadm -a -t 172.16.16.172:80 -r 192.168.7.24:80 -m -w 1

ipvsadm -ln //查看节点状态

ipvsadm -d -r 192.168.7.21:80 -t 172.16.16.172:80 //-d:删除某个节点;-D:删除整个虚拟服务器(ipvsadm -D -t 172.16.16.172:80);

ipvsadm-save > /etc/sysconfig/ipvsadm //保存策略

service ipvsadm stop //清除策略

service ipvsadm start //启动策略

3)配置web服务器 (使用nginx)每个节点都要做此步

yum -y install pcre-devel zlib-devel

useradd -M -s /sbin/nologin nginx

tar zxf nginx1.6.......gz

cd /nginx1.6.0/

./configure --prefix=/usr/local/nginx --user=nginx --group=nginx --with-http_stub_status_module && make && make install

ln -s /usr/local/nginx/sbin/nginx /usr/local/sbin

echo "www.baidu.com:21" > /usr/local/nginx/html/index.html

nginx -t //检测配置文件

nginx //启动nginx

killall -s HUP或-1 nginx //重载

killall -s QUIT或-3 nginx //杀死进程




route add default gw 192.168.7.254

4)配置NFS共享存储

yum -y install nfs-utils rpcbind //提供NFS共享服务;提供RPC支持

chkconfig nfs on

chkconfig rpcbind on

mkdir -p /opt/zm

vim /etc/exports

/opt/zm 192.168.7.0/24(rw,sync,no_root_squash) //rw:读写,sync:允许同步写入,no_root_squash:客户机以root身份访问时赋予本地root权限。


service rpcbind start

service nfs start

showmount -e //查看本机发布的NFS共享目录


//手动挂载

mount 192.168.7.250:/opt/zm /usr/loca/nginx/html/


//fstab自动挂载

192.168.7.250:/opt/zm /usr/local/nginx/html nfs default,_netdev 0 0 //若要加soft,intr参数可以实现软挂载,——netdev设备需要网络;

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值