發布時間: 2018-05-05 12:45:50
CentOS7 搭建LVS+keepalived負載均衡(一)
本文涉及一臺負載均衡服務器,和兩臺真實服務器,
主要是初步體驗負載均衡;實際的環境中,lvs和keepalived一起用才是黃金搭檔,
lvs+keepalived的搭建過程
一、本次搭建的系統圖
- 虛擬機:VirtualBox
- virtaulbox host-only的IP地址:192.168.137.1
- 所用系統:CentOS7
- 真實web服務器(RS1):192.168.137.5
- 真實web服務器(RS2):192.168.137.6
- 負載均衡服務器:192.168.137.101
二、RS的配置過程
兩臺RS所用Web服務器均為nginx
2.1 靜態IP設置
(1)編輯配置文件
$ vim /etc/sysconfig/network-scripts/ifcfg-enp0s3
我這里叫enp0s3,也可能是其他名字,只是一個網卡代號而已
需要修改如下內容
? BOOTPROTO=static(使用靜態IP)
? ONBOOT=yes(開機啟動)
需要新增如下內容
? IPADDR=192.168.137.5
? NETMASK=255.255.255.0
? GATEWAY=192.168.137.1
? DNS1=192.168.137.1
(2)重啟網絡服務
$ service network restart
2.2 nginx的安裝與部署
(1)下載nginx的安裝包,我用的是nginx-1.10.1,放在/opt目錄
(2)安裝必備工具
$ yum -y install gcc gcc-c++ autoconf automake
$ yum -y install zlib zlib-devel openssl openssl-devel pcre-devel
說明:
pcre: 用來作地址重寫的功能。
zlib:nginx 的gzip模塊,傳輸數據打包,省流量(但消耗資源)。
openssl:提供ssl加密協議。
(3)安裝nginx
$ cd /opt
$ tar -zxvf nginx-1.10.1.tar.gz
$cd nginx-1.10.1
$ ./configure –prefix=/usr/local/nginx
$ make
$ make install
(4)修改nginx默認訪問頁面內容
$ vim /usr/local/nginx/html/index.html
把內容修改為RS1,為了方便一會測試負載均衡時,能清晰看到是哪臺服務器
(5)開放80端口
$ /sbin/iptables -I INPUT -p tcp –dport 80 -j ACCEPT
現在,訪問192.168.137.5就可以看到顯示RS1了,同理設置RS2
三、負載均衡服務器配置
CentOS7已經集成了LVS的核心,所以只需要安裝LVS的管理工具就可以了
(1)安裝ipvsadm
$ yum -y install ipvsadm
(2)設置ipv4轉發
$ sysctl -w net.ipv4.ip_forward=1
(3)關閉防火墻
iptables -F
(4)設置ipvsadm
$ ipvsadm -A -t 192.168.137.101:80 -s rr
$ ipvsadm -a -t 192.168.137.101:80 -r 192.168.137.5 -m
$ ipvsadm -a -t 192.168.137.101:80 -r 192.168.137.6 -m
$ ipvsadm -S
-A 添加虛擬服務
-a 添加一個真是的主機到虛擬服務
-S 保存
-s 選擇調度方法
rr 輪訓調度
-m 網絡地址轉換NAT
(5)測試
curl 192.168.137.101