LVS
环境准备:5台虚拟机
dns:192.168.1.66 作用:
web1:192.168.1.67 作用:
web2:192.168.1.68 作用:
nat:192.168.1.69 192.168.1.169(VIP) 作用:
客户机:192.168.1.70 作用:
web1:
root@web1 \~# yum -y install nginx //yum下载
root@web1 \~# nginx //启动nginx
root@web1 \~# find / -name "nginx" //找nginx的配置文件
root@web1 \~# echo "i am web1" > /usr/share/nginx/html/index.html
root@web1 \~# systemctl stop firewalld
root@web1 \~# systemctl disable firewalld
root@web1 \~# setenforce 0
浏览器访问
web2:
root@web2 \~# yum -y install nginx
root@web2 \~# nginx
root@web2 \~# echo "i am web2" > /usr/share/nginx/html/index.html
root@web2 \~# systemctl stop firewalld
root@web2 \~# systemctl disable firewalld
root@web2 \~# setenforce 0
浏览器访问
dns:
root@localhost \~# yum -y install bind
root@localhost \~# vim /etc/named.conf
listen-on port 53 { 127.0.0.1;any; };
allow-query { localhost;any; };
root@localhost \~# vim /etc/named.rfc1912.zones
zone "yu.feng" IN {
type master;
file "yu.feng.zone";
allow-update { none; };
};
root@localhost \~# cp -p /var/named/named.localhost /var/named/yu.feng.zone
root@localhost \~# vim /var/named/yu.feng.zone
nat A 192.168.1.69
ds A 192.168.1.169
web1 A 192.168.1.67
web2 A 192.168.1.68
root@localhost \~# systemctl start named
root@dns \~# systemctl stop firewalld
root@dns \~# systemctl disable firewalld
root@dns \~# setenforce 0
客户机:
root@client \~# vim /etc/resolv.conf
nameserver 162.168.1.70
root@client \~# ping web2.tdr.com
PING web2.tdr.com (192.168.1.68) 56(84) bytes of data.
64 bytes from 192.168.1.68 (192.168.1.68): icmp_seq=1 ttl=64 time=0.759 ms
64 bytes from 192.168.1.68 (192.168.1.68): icmp_seq=2 ttl=64 time=0.503 ms
nat主机:做个时间同步,考虑到压力过大,所以不再创建新的虚拟机
root@nat \~# yum install -y ntpdate.x86_64
root@nat \~# ntpdate cn.ntp.org.cn
12 Aug 14:12:05 ntpdate4567: adjust time server 106.75.185.63 offset 0.047541 sec
root@nat \~# crontab -e
* 2 * * * /usr/sbin/ntpdate cn.ntp.org.cn
root@nat \~# crontab -l
* 2 * * * /usr/sbin/ntpdate cn.ntp.org.cn
root@nat \~# yum -y install ntp
root@nat \~# systemctl start ntpd
//在其他主机都做下面的操作,同步时间
root@localhost \~# yum -y install ntpdate.x86_64
root@localhost \~# crontab -e
30 2 * * * /usr/sbin/ntpdate 192.168.1.69
NAT模式搭建实战
root@nat \~# yum -y install ipvsadm.x86_64
-A 添加虚拟服务器
-t 设置群集地址(VIP,Virtual IP) tcp/udp
-s 指定负载调度算法(rr|wrr|Ic|w|c|sh...)
-a 添加真实服务器
-d 删除真实服务器
-r 指定真实服务器(Real Server)的地址
-m 使用NAT模式;-g、-i分别对应DR、TUN模式
-w 为节点服务器设置权重,默认为1
root@nat \~# ipvsadm -A -t 192.168.1.169:80 -s rr //rr为轮询
root@nat \~# ipvsadm -L -n //查看集群规则
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
-> RemoteAddress:Port Forward Weight ActiveConn InActConn
TCP 192.168.1.169:80 rr
root@nat \~# ipvsadm -a -t 192.168.1.169:80 -r 192.168.1.67:80 -m //添加真实服务器web1
root@nat \~# ipvsadm -a -t 192.168.1.169:80 -r 192.168.1.68:80 -m //添加真实服务器web2
root@nat \~# ipvsadm -L -n
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
-> RemoteAddress:Port Forward Weight ActiveConn InActConn
TCP 192.168.1.169:80 rr
-> 192.168.1.67:80 Masq 1 0 0
-> 192.168.1.68:80 Masq 1 0 0