您好,登錄后才能下訂單哦!
CentOS release 6.8 x64 (Final)2.6.32-642.4.2.el6.x86_64 安裝keepalived-1.3.5+lvs
============
一、環境安裝:
============
1.依賴安裝
yum install -y openssl-devel libnl3-devel ipset-devel iptables-devel libnfnetlink-devel popt* 增加軟連接 ln -s /usr/src/kernels/`uname -r` /usr/src/linux
2.5臺機器IP設置
LVS1: 172.16.0.100
LVS2: 172.16.0.101
VIP: 172.16.0.150
WEB: 172.16.0.102
WEB2:172.16.0.103
web3:172.16.0.104(windows客戶端IIS)
3.關閉selinux
修改/etc/selinux/config文件中設置SELINUX=disabled ,然后重啟服務器。
4.關閉iptables,如果不關的話,需更具情況增加開放端口。
#iptables -I INPUT -p tcp --dport 80 -j ACCEPT #iptables -I INPUT -p icmp -j ACCEPT #service iptables save
二、安裝步驟(在LVS1.LVS2上安裝):
============
1)安裝lvs管理工具
1.tar zxvf ipvsadm-1.26.tar.gz 2.cd ipvsadm-1.26 3.'make' 4.'make install' 5.#ipvsadm 6.lsmod | grep ip_vs
2)安裝keepalived軟件
1. tar zxvf keepalived-1.3.5.tar.gz 2. cd ikeepalived-1.3.5 3. ./configure --prefix=/usr/local/keepalived --with-init=SYSV #注:(upstart|systemd|SYSV|SUSE|openrc) #根據系統選擇對應的啟動方式 4. 'make' 5. 'make install'.
6.配置keepalived文件的路徑
cp /usr/local/keepalived/etc/rc.d/init.d/keepalived /etc/init.d/ cp /usr/local/keepalived/etc/sysconfig/keepalived /etc/sysconfig/ mkdir /etc/keepalived cp /usr/local/keepalived/etc/keepalived/keepalived.conf /etc/keepalived/ cp /usr/local/keepalived/sbin/keepalived /usr/sbin/
7.配置文件(vim /etc/keepalived/keepalived.conf)
#這里是全局定義部分
global_defs { notification_email { root@local #設置報警郵件單個或多個地址 } notification_email_from server@local #郵件的發送地址 smtp_server 127.0.0.1 #smtp 地址 smtp_connect_timeout 30 #連接smtp服務器超時的實際 router_id LVS_ONE #路由ID兩臺機器不能相同。LVS2更改為不同 vrrp_skip_check_adv_addr # vrrp_strict #嚴格執行VRRP協議規范,此模式不支持節點單播. #且重啟keepalived服務,會自動啟動iptables,原計劃打算關閉iptables, #但測試發現,多次(通過命令service iptables stop且chkconfig iptables off,) #將iptables關閉后,但啟動或重啟keepalived服務后,自動又啟動起來iptables, #且自加了一條把VIP地址DROP掉的規則。導致VIP查不到,ping不通.默認安裝時自帶配置 #含有此選項。所以建議禁用此選項。 vrrp_garp_interval 0 vrrp_gna_interval 0 } #vrrp 實例定義部分 vrrp_instance VI_1 { state MASTER #keepalived 的角色 MASTER 表示主服務器。LVS2更改為:BACKUP interface eth0 #指定監測網卡 virtual_router_id 51 #虛擬路由標示,相同實例,需相同標示。 priority 150 #優先級 數字越大 優先級越高 MASTER的優先級高于BACKUP優先級(如master 150,backup 100) advert_int 1 #設定主備之間檢查時間 單位s authentication { #設定驗證類型和密碼 auth_type PASS auth_pass 1111 } virtual_ipaddress { #設定虛擬IP地址 可以設置多個 每行一個 172.16.0.150/24 brd 172.16.0.255 dev eth0 label eth0:0 } } #虛擬服務器部分 virtual_server 172.16.0.150 80 { delay_loop 6 #設定運行情況檢查時間 單位s lb_algo rr #負載調度算法 rr即輪叫算法 lb_kind DR #設置LVS負載機制 NAT TUN DR 三種模式可選 persistence_timeout 0 #會話時間 #會話保持在某個服務節點 #用戶在動態頁面50s內沒有任何動作,那么后面就會被分發到其他節點 #用戶一直動作,不受50s限制 protocol TCP #使用協議 #以下為real_server部分 real_server 172.16.0.102 80 { weight 1 #服務節點權值,數字越大,權值越高 #權值的大小可以為不同性能的服務器分配不同的負載 #這樣才能有效合理的利用服務器資源 TCP_CHECK { #狀態檢查部分 connect_timeout 3 #3s無響應超時 nb_get_retry 3 #重試次數 delay_before_retry 3 #重試間隔 connect_port 80 #連接端口 } } real_server 172.16.0.103 80 { weight 1 TCP_CHECK { connect_timeout 3 nb_get_retry 3 delay_before_retry 3 connect_port 80 } } real_server 172.16.0.104 80 { weight 1 TCP_CHECK { connect_timeout 3 nb_get_retry 3 delay_before_retry 3 connect_port 80 } } }
三、客戶端設置(web1,web2配置)
1.增加啟動關閉腳本,并chmod執行權限
#!/bin/bash # # Script to start LVS DR real server. # description: LVS DR real server # . /etc/rc.d/init.d/functions VIP=172.16.0.150 #修改相應的VIP host=`/bin/hostname` case "$1" in start) # 啟動 LVS-DR 模式,real server on this machine. 關閉ARP沖突檢測。 /sbin/ifconfig lo down /sbin/ifconfig lo up echo 1 > /proc/sys/net/ipv4/conf/lo/arp_ignore echo 2 > /proc/sys/net/ipv4/conf/lo/arp_announce echo 1 > /proc/sys/net/ipv4/conf/all/arp_ignore echo 2 > /proc/sys/net/ipv4/conf/all/arp_announce /sbin/ifconfig lo:0 $VIP broadcast $VIP netmask 255.255.255.255 up /sbin/route add -host $VIP dev lo:0 ;; stop) #停止LVS-DR real server loopback device(s). /sbin/ifconfig lo:0 down echo 0 > /proc/sys/net/ipv4/conf/lo/arp_ignore echo 0 > /proc/sys/net/ipv4/conf/lo/arp_announce echo 0 > /proc/sys/net/ipv4/conf/all/arp_ignore echo 0 > /proc/sys/net/ipv4/conf/all/arp_announce ;; status) # Status of LVS-DR real server. islothere=`/sbin/ifconfig lo:0 | grep $VIP` isrothere=`netstat -rn | grep "lo:0" | grep $VIP` if [ ! "$islothere" -o ! "isrothere" ];then # Either the route or the lo:0 device # not found. echo "LVS-DR real server Stopped!" else echo "LVS-DR real server Running..." fi ;; *) # Invalid entry. echo "$0: Usage: $0 {start|status|stop}" exit 1 ;; esac
2.增加web http服務,使用80端口可以打開網站。
3.測試服務器相互之間是否可以PING通。
4.windows客戶端增加VIP事項(web3機器):
win2003地址設置方法:控制面板->添加硬件->添加新的硬件->手動安裝硬件-》網絡適配器
重命名為VIP,增加IP地址172.16.0.104,掩碼255.255.255.0
打開regedit,編輯:subnetMask為255.255.255.255
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Tcpip\Parameters\Interfaces
Win2008地址設置方法:控制面板-硬件和打印機->新增硬件
找到新增的環回連接,重命名為VIP, 右鍵VIP連接屬性,開始設置TCP/IP
172.16.0.104 255.255.255.255.255 保存
運行CMD執行:
netsh interface ipv4 set interface "VIP" weakhostreceive=enabled netsh interface ipv4 set interface "VIP" weakhostsend=enabled netsh interface ipv4 set interface "LAN" weakhostreceive=enabled netsh interface ipv4 set interface "LAN" weakhostsend=enabled
四、測試檢查keepalived+lvs問題
1、 查看系統日志 /var/log/messages
2、 檢查負載均衡器的網絡連通狀況(ping命令或arping)。
3、 檢查 keepalived 的運行情況。ps -aux | grep keepalived查看是否進程啟動。lsmod | grep ip_vs,檢查ipvs 模塊是否被加載到系統的內核,vip 是否被綁定到網絡接口,ipvsadm 是否有輸出。
4、 檢查 keepalived 的配置文件書寫是否正確。
5、 檢查負載均衡器是否啟用防火墻規則。
6、 realserver的web是否正常
推薦文檔:http://www.keepalived.org/pdf/sery-lvs-cluster.pdf
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。