LVS_DR
使用DR模型的FWM類型的lvs服務負載均衡一個php應用,如Discuz!論壇或者phpMyAdmin;
前提條件:三臺主機(一臺調度器,兩臺服務器即RS)
聲明:調度器配置一個網絡接口
主接口地址:172.16.1.11/16(DIP)
主接口標籤地址:172.16.1.254/32(VIP)
# ifconfig ens33:0 172.16.1.254 netmask 255.255.255.255 broadcast 172.16.1.254 up
RS1:
主接口:172.16.1.12/16
環回接口的標籤接口:172.16.1.254/32
# ifconfig lo:0 172.16.1.254 netmask 255.255.255.255 broadcast 172.16.1.254 up
RS2:
主接口:172.16.1.13/16
環回接口的標籤接口:172.16.1.254/32
# ifconfig lo:0 172.16.1.254 netmask 255.255.255.255 broadcast 172.16.1.254 up
配置:
RS1:內核參數的配置:
# echo 1 > /proc/sys/net/ipv4/conf/all/arp_ignore
# echo 1 > /proc/sys/net/ipv4/conf/lo/arp_ignore
# echo 2 > /proc/sys/net/ipv4/conf/all/arp_announce
# echo 2 > /proc/sys/net/ipv4/conf/lo/arp_announce
配置LAMP服務:
前提:安裝LAMP所需組件:
# yum install httpd php php-mysql mariadb-server
創建虛擬主機:
# cd /etc/httpd/conf.d/
# vim vhost1.conf
<VirtualHost 172.16.1.12:80>
ServerName www.ytc.com
DocumentRoot "/myweb/vhost1"
DirectoryIndex index.php
<Directory "/myweb/vhost1">
Options None
AllowOverride None
Require all granted
</Directory>
</VirtualHost>
完善虛擬主機所需目錄要求:
# mkdir -pv /myweb/vhost1
# cd /myweb/vhost1
# vim index.php (做測試頁面)
Real Server 1 <br>
<?php
phpinfo();
?>
將phpmyadmin包傳送到該目錄並解壓
# tsr xf phpMyAdmin-3.5.4-all-languages.tar.gz
注意iptables和SELinux的干擾:
# iptables -F
# setenforce 0
RS2:內核參數的配置:
# echo 1 > /proc/sys/net/ipv4/conf/all/arp_ignore
# echo 1 > /proc/sys/net/ipv4/conf/lo/arp_ignore
# echo 2 > /proc/sys/net/ipv4/conf/all/arp_announce
# echo 2 > /proc/sys/net/ipv4/conf/lo/arp_announce
配置LAMP服務:
前提:安裝LAMP所需組件:
# yum install httpd php php-mysql mariadb-server
創建虛擬主機:
# cd /etc/httpd/conf.d/
# vim vhost1.conf
<VirtualHost 172.16.1.13:80>
ServerName www.ytc.org
DocumentRoot "/myweb/vhost2"
DirectoryIndex index.php
<Directory "/myweb/vhost2">
Options None
AllowOverride None
Require all granted
</Directory>
</VirtualHost>
完善虛擬主機所需目錄要求:
# mkdir -pv /myweb/vhost2
# cd /myweb/vhost2
# vim index.php (做測試頁面)
Real Server 2 <br>
<?php
phpinfo();
?>
將wordpress包傳送到該目錄並解壓
# tsr xf wordpress-4.2-zh_CN.tar.gz
注意iptables和SELinux的干擾:
# iptables -F
# setenforce 0
調度器配置:
給數據報文打標記;
# iptables -t mangle -A PREROUTING -d 172.16.1.254 -p tcp --dport 80 -j MARK --set-mark 10
創建集羣:
# ipvsadm -A -f 10 -s wrr
向集羣中添加RS:
# ipvsadm -a -f 10 -r 172.16.1.12 -g -w 2
# ipvsadm -a -f 10 -r 172.16.1.13 -g -w 2
web端測試:
輸入172.16.1.254/index.php
第三次輸入172.16.1.254:
然後做長連接和數據庫共享(上一篇博客中,這裏不再贅述)
web端測試:172.16.1.254/wordpress/index.php
創建數據庫授權用戶後,登錄:
完成;