网站首页 > 技术教程 正文
1)keepalived是什么
keepalived是集群管理中保证集群高可用的一个服务软件,其功能类似于heartbeat,用来防止单点故障。
2)keepalived工作原理
keepalived是以VRRP协议为实现基础的,VRRP全称Virtual Router Redundancy Protocol,即虚拟路由冗余协议。
keepalived主要有三个模块,分别是core、check和vrrp。core模块为keepalived的核心,负责主进程的启动、维护以及全局配置文件的加载和解析。check负责健康检查,包括常见的各种检查方式。vrrp模块是来实现VRRP协议的。
1、 创建依赖环境
yum -y install openssl-devel gcc gcc-c++
yum -y install libnl libnl-devel2、安装keepalived
wget https://www.keepalived.org/software/keepalived-2.2.7.tar.gz --no-check-certificate
tar -zxvf keepalived-2.2.7.tar.gz
cd keepalived-2.2.7
./configure --prefix=/usr/local/keepalived
make && make install3、创建启动文件
mkdir /etc/keepalived/
cp /usr/local/keepalived/etc/keepalived/keepalived.conf.sample /etc/keepalived/keepalived.conf
cp /usr/local/keepalived/etc/sysconfig/keepalived /etc/sysconfig/
cp /root/keepalived-2.2.7/keepalived/keepalived.service /etc/systemd/system/
ln -s /usr/local/keepalived-2.2.7/sbin/keepalived /usr/sbin/
cp /root/keepalived-2.2.7/keepalived/etc/init.d/keepalived /etc/init.d/
chmod 755 /etc/init.d/keepalived
systemctl enable keepalived.service
mkdir /var/log/keepalived/
vi /etc/sysconfig/keepalived
KEEPALIVED_OPTIONS="-D -d -S 0"
vi /etc/rsyslog.d/keepalived.conf
local0.* /var/log/keepalived/keepalived.log
systemctl restart rsyslog4、创建配置文件
master
cat > /etc/keepalived/keepalived.conf << EOF
! Configuration File for keepalived
global_defs {
router_id 190_master
}
vrrp_script chk_nginx {
script "/data/build/check_nginx.sh" # 检测nginx状态的脚本路径
interval 2 # 检测时间间隔
weight 3
}
vrrp_instance VI_1 {
state MASTER
interface em1
virtual_router_id 190 # 虚拟路由的ID号,两个节点设置必须一样
mcast_src_ip 192.168.8.4
priority 200 # 节点优先级,取值范围 0-254,MASTER要比BACKUP高
advert_int 1 # 组播信息发送间隔,两个节点设置必须一样,默认1s
nopreempt
authentication {
auth_type PASS
auth_pass 123456
}
virtual_ipaddress {
192.168.8.100 # 虚拟ip,两个节点设置必须一样,可以定义多个
}
track_script {
chk_nginx # 执行Nginx监控的服务
}
}
EOFslave
cat > /etc/keepalived/keepalived.conf << EOF
! Configuration File for keepalived
global_defs {
router_id 191_slave
}
vrrp_instance VI_1 {
state BACKUP
interface em1
virtual_router_id 190
mcast_src_ip 192.168.8.6
priority 100
advert_int 1
nopreempt
authentication {
auth_type PASS
auth_pass 123456
}
virtual_ipaddress {
192.168.8.100
}
}
EOF5、编写 Nginx 状态检测脚本
vi /data/build/check_nginx.sh
#!/bin/bash
#时间变量,用于记录日志
d=`date --date today +%Y%m%d_%H:%M:%S`
#计算nginx进程数量
n=`ps -C nginx --no-heading|wc -l`
#如果进程为0,则启动nginx,并且再次检测nginx进程数量,
#如果还为0,说明nginx无法启动,此时需要关闭keepalived
if [ $n -eq "0" ]; then
docker restart nginx
sleep 3
n2=`ps -C nginx --no-heading|wc -l`
if [ $n2 -eq "0" ]; then
echo "$d nginx down,keepalived will stop" >> /data/build/logs/check_nginx.log
systemctl stop keepalived.service
fi
fi6、启动keepalived
systemctl start keepalived.service
7、模仿down机
关闭master的keepalived模仿down机
systemctl stop keepalived.service
至此,Keepalived + Nginx 实现高可用 Web 负载均衡搭建完毕。
猜你喜欢
- 2024-10-14 使用keepalived监控tomcat 达到双机热备
- 2024-10-14 keepalived的安装(keepalived安装配置)
- 2024-10-14 15分钟学会nginx+tomcat+keepalived高可用负载均衡
- 2024-10-14 搭建环境tomcat+nginx+keepalived+zabbix
- 2024-10-14 K8s 通过 keepalive+nginx 实现 nginx-ingress-controller 高可用
- 2024-10-14 流量红利下怎么用双机搭建高可用与负载均衡——(上)
- 2024-10-14 快速入门-Keepalived+Nginx-HA高可用-不啰嗦-直接上-边实践边学
- 2024-10-14 Keepalived + Nginx 实现高可用 Web 负载均衡
- 2024-10-14 Keepalived+Nginx架构配置(keepalived nginx配置)
- 2024-10-14 Nginx双机主备(Keepalived实现)(nginx双机负载均衡配置)
欢迎 你 发表评论:
- 12-18苹果电脑笔记本怎么用(怎样使用苹果笔记本)
- 12-18电脑剪切快捷键(电脑剪切快捷键ctrl alt)
- 12-18最好的手机杀毒软件(360手机杀毒官方免费版)
- 12-18win10家庭版改为专业版(win10家庭版专业版教育版有什么区别)
- 12-18最佳的搜索引擎(最好的搜索引擎)
- 12-18电脑黑屏却开着机显示无信号
- 12-18win7驱动精灵离线版(驱动精灵win7离线安装包)
- 12-18mx播放器官网(mx播放器官网入口)
- 最近发表
- 标签列表
-
- 下划线是什么 (87)
- 精美网站 (58)
- qq登录界面 (90)
- nginx 命令 (82)
- nginx .http (73)
- nginx lua (70)
- nginx 重定向 (68)
- Nginx超时 (65)
- nginx 监控 (57)
- odbc (59)
- rar密码破解工具 (62)
- annotation (71)
- 红黑树 (57)
- 智力题 (62)
- php空间申请 (61)
- 按键精灵 注册码 (69)
- 软件测试报告 (59)
- ntcreatefile (64)
- 闪动文字 (56)
- guid (66)
- abap (63)
- mpeg 2 (65)
- column (63)
- dreamweaver教程 (57)
- excel行列转换 (56)

本文暂时没有评论,来添加一个吧(●'◡'●)