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

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
CentOS修改主机名永久生效
查看主机命令: [root@linux_epm2 ~]# hostname localhost.localdomain localhost.localdomain即为默认的主机名。 修改network文件: 用root用户登录,如果不是root用户,使用su命令切换为root用户: [guoky@linux_epm2 root]$ su Password: [root@linux_epm2 ~]# 然后修改/etc/sysconfig下的network文件: [root@linux_epm2 ~]# cd /etc/sysconfig [root@linux_epm2 sysconfig]# vi network NETWORKING=yes HOSTNAME= localhost.localdomain 修改前: 修改后: 修改hosts文件: 修改/etc下的hosts文件: [root@linux_epm2 sysconfig]# cd /etc [root@linux_epm2 etc]# vi hosts 127.0.0.1localhost localhost.l...
- 下一篇
阿里云CentOS6配置Web服务器
最近买了阿里云的CentOS系统的Linux服务器,花了些时间把环境配置了一下,用来发布后端。 jdk Tomcat Maven Git mysql5.7.17 CentOS环境初始化 1.CentOS备份 mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup 1 2.下载新的CentOS-Base.repo wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-6.repo 1 3.生成缓存 yum makecache 1 阿里云Centos环境初始化 http://mirrors.aliyun.com/help/centos 创建新用户 1. 创建用户 useradd -d /usr/用户名 -m 用户名 1 2.设置用户密码 passwd 用户名 1 设置新用户密码 3.修改配置文件 vim /etc/sudoers 1 找到root后添加一条新用户的...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- 设置Eclipse缩进为4个空格,增强代码规范
- CentOS8编译安装MySQL8.0.19
- Windows10,CentOS7,CentOS8安装MongoDB4.0.16
- SpringBoot2编写第一个Controller,响应你的http请求并返回结果
- CentOS关闭SELinux安全模块
- CentOS8,CentOS7,CentOS6编译安装Redis5.0.7
- SpringBoot2整合Redis,开启缓存,提高访问速度
- CentOS7安装Docker,走上虚拟化容器引擎之路
- Docker使用Oracle官方镜像安装(12C,18C,19C)