haporxy+keepalived实现负载均衡+高可用

环境准备

主机规划
服务器 IP 主机名 服务
centos7x2(haproxy01) 192.168.138.132 centos7x2 Haproxy、Nginx、keepalived
centos7x3(haproxy02) 192.168.138.133 centos7x3 Haproxy、Nginx、keepalived
192.168.138.200(vip)

其中haproxy负责负债均衡,nginx单纯作为web服务

hosts文件解析
[root@centos7x2 ~]# cat /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.138.132 centos7x2
192.168.138.133 centos7x3

操作系统

centos7.7

[root@centos7x2 ~]# cat /etc/redhat-release 
CentOS Linux release 7.7.1908 (Core)
[root@centos7x2 ~]# uname -a
Linux centos7x2 3.10.0-1062.12.1.el7.x86_64 #1 SMP Tue Feb 4 23:02:59 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux

系统环境

关闭selinux

sed -i '7s#enforcing#disabled#g' /etc/selinux/config
setenforce 0

关闭iptables

systemctl stop firewalld.service
systemctl disable firewalld.service

安装基本包

yum -y install net-tools vim lrzsz tree screen lsof tcpdump nc mtr nmap gcc glibc gcc-c++
软件版本
haproxy:1.5.18
nginx:1.18.0
keepalived:1.3.5

安装HAProxy

安装haproxy和其他软件类似,基本上也分为源码安装和yum安装,采用yu’m安装得版本可能稍微比较旧,在CentOS7系统下一般为1.5版本。这两个方式本身区别并不太大,但是安装目录会有一定得出入,在配置程序得时候需要稍微注意。

这里的安装均采用yum方式,编译安装就不细说,两者任选其一均可

yum安装
[root@centos7x3 ~]# yum install -y haproxy

[root@centos7x2 ~]# haproxy -v
HA-Proxy version 1.5.18 2016/05/10
Copyright 2000-2016 Willy Tarreau <willy@haproxy.org>
配置rsyslog
[root@centos7x3 ~]# mkdir /var/log/haproxy
[root@centos7x3 ~]# chmod a+w /var/log/haproxy/
[root@centos7x3 ~]# vim /etc/rsyslog.conf 
#将如下两行得注释取消
$ModLoad imudp
$UDPServerRun 514
#在该文件添加如下内容:
# Save haproxy log
local3.*          /var/log/haproxy/haproxy.log
[root@centos7x3 ~]# vim /etc/sysconfig/rsyslog
[root@centos7x3 ~]# cat /etc/sysconfig/rsyslog
# Options for rsyslogd
# Syslogd options are deprecated since rsyslog v3.
# If you want to use them, switch to compatibility mode 2 by "-c 2"
# See rsyslogd(8) for more details
#SYSLOGD_OPTIONS=""
SYSLOGD_OPTIONS="-r -m 0 -c 2"

#-c 2 使用兼容模式,默认是-c 5; -r 开启远程日志; -m 0 标记时间戳。单位是分钟,为0时,表示禁用该功能。
[root@centos7x3 ~]# systemctl restart rsyslog

配置haproxy
  • 第一台机器的haproxy配置,/etc/haproxy/haproxy.cfg
global
    maxconn 10000
    chroot /var/lib/haproxy
    user haproxy
    group haproxy
    daemon
    nbproc 1 
    pidfile /var/lib/haproxy/haproxy.pid 
    log 127.0.0.1 local3 info

defaults
    mode http
    log global
    option http-keep-alive
    ma
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值