Lvs负载均衡

文中只涉及一台负载均衡服务器,和两台真实服务器,主要是初步体验负载均衡;实际的环境中,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 
测试结果

posted @ 2020-10-13 16:22  疯狂的米粒儿  阅读(145)  评论(0编辑  收藏  举报