haproxy负载均衡

haproxy负载均衡

一、配置准备

全局配置

关闭防火墙、上下文

复制代码
[root@everyone ~]# systemctl stop firewalld
[root@everyone ~]# setenforce 0

haproxy端

复制代码
[root@hap ~]# yum install -y haproxy

web端

复制代码
[root@web1/web2 ~]# yum install -y nginx
[root@web1 ~]# echo web1 > /usr/share/nginx/html/index.html
[root@web2 ~]# echo web2 > /usr/share/nginx/html/index.html
[root@web1/web2 ~]# systemctl start nginx

二、haproxy 负载均衡(基于nginx)

haproxy端

修改配置文件

复制代码
[root@hap ~]# cd /etc/haproxy/
[root@hap haproxy]# vim haproxy.cfg 

启动服务

复制代码
[root@hap haproxy]# systemctl   start haproxy.service

检验状态

成功

三、KHN Triad

使用 keepalive 监控 haproxy 实现 nginx 的 负载均衡

准备阶段

2台 安装 keepalive 与 haproxy 服务 并改名为 khn-1 与 khn-2

2台 安装 nginx 并修改 默认访问文件

配置文件

KHN端

knh-1端
keepalived配置文件
复制代码
[root@khn-1 ~]# vim /etc/keepalived/keepalived.conf
脚本编写
复制代码
[root@khn-1 ~]# vim  /etc/keepalived/check_khn_nginx.sh
[root@khn-1 ~]# chmod +x /etc/keepalived/check_khn_nginx.sh
复制代码
[root@khn-1 ~]# vim  /etc/keepalived/add_dnat.sh
[root@khn-1 ~]# chmod +x /etc/keepalived/add_dnat.sh
复制代码
[root@khn-1 ~]# vim /etc/keepalived/remove_dnat.sh
[root@khn-1 ~]# chmod +x  /etc/keepalived/remove_dnat.sh
kaproxy配置文件
复制代码
[root@khn-1 ~]# vim /etc/haproxy/haproxy.cfg 
khn-2端
keepalived配置文件
复制代码
[root@khn-2 ~]# vim /etc/keepalived/keepalived.conf
脚本编写
复制代码
[root@khn-2 ~]# vim  /etc/keepalived/check_khn_nginx.sh
[root@khn-2 ~]# chmod +x /etc/keepalived/check_khn_nginx.sh
复制代码
[root@khn-2 ~]# vim  /etc/keepalived/add_dnat.sh
[root@khn-2 ~]# chmod +x /etc/keepalived/add_dnat.sh
复制代码
[root@khn-2 ~]# vim /etc/keepalived/remove_dnat.sh
[root@khn-2 ~]# chmod +x  /etc/keepalived/remove_dnat.sh
haproxy文件
复制代码
[root@khn-2 ~]# vim /etc/haproxy/haproxy.cfg 

启动服务

复制代码
[root@khn-1/khn-2 ~]# systemctl start haproxy
[root@khn-1/khn-2 ~]# systemctl start keepalived
查看

故障模拟

停止 khn-1 的 haproxy 服务

khn-1端

keepalived 检测 haproxy 服务停止 所以自己也停止服务

khn-2端

keepalived 检测到 khn-1 的keeplived服务停止,自己接替为主进行服务

此时访问

依旧正常

相关推荐
正在学习前端的---小方同学4 小时前
Harbor部署教程
linux·运维
牛奔5 小时前
Docker Compose 两种安装与使用方式详解(适用于 Docker 19.03 版本)
运维·docker·云原生·容器·eureka
翼龙云_cloud5 小时前
阿里云渠道商:如何手动一键扩缩容ECS实例?
运维·服务器·阿里云·云计算
墨风如雪6 小时前
拒绝被找回!MJJ必修课:Outlook邮箱交易后的“防回手”安全设置全攻略
服务器
DX_水位流量监测7 小时前
大坝安全监测之渗流渗压位移监测设备技术解析
大数据·运维·服务器·网络·人工智能·安全
电商API&Tina7 小时前
京东 API 数据采集接口接入与行业分析
运维·服务器·网络·数据库·django·php
Mr_Xuhhh7 小时前
博客标题:深入理解Shell:从进程控制到自主实现一个微型Shell
linux·运维·服务器
f***241110 小时前
高效自动化管理临时文件的技术方案
运维·自动化
m0_7381207211 小时前
应急响应——知攻善防靶场Linux-1详细应急过程
linux·运维·服务器·网络·web安全·ssh
obboda11 小时前
磁盘管理(MBR、LVM)
运维·5g