构建高可用服务器之一 Keepalive介绍及安装

简介:

    Keepalived 是一个基于VRRP协议来实现的LVS服务高可用方案,可以利用其来避免单点故障。一个mysqllvsnginx服务会有2台服务器运行Keepalived,一台为主服务器(MASTER),一台为备份服务器(BACKUP),但是对外表现为一个虚拟IP,主服务器会发送特定的消息给备份服务器,当备份服务器收不到这个消息的时候,即主服务器宕机的时候,备份服务器就会接管虚拟IP,继续提供服务,从而保证了高可用性。

以下简图为例,当服务调用mysql的时候,直接调用vip,这样即使master上宕机,依旧可访问从数据库。

wKioL1VaFzHDXH_IAADg7tHdTAY044.jpg

Keepalive的安装:

1、  安装环境包

1
[root@jacken ~] # yum  -y  install  kernel-devel openssl-devel  popt-devel

2、  安装keepalive

1
2
3
4
5
[root@jacken ~] #  wget http://www.keepalived.org/software/keepalived-1.1.15.tar.gz
[root@jacken ~] # tar -zxf keepalived-1.1.15.tar.gz
[root@jacken ~] # cd keepalived-1.1.15
[root@jacken keepalived-1.1.15] #./configure --with-kernel-dir=/usr/src/kernels/2.6.32-431.el6.x86_64/
[root@jacken ~] # make && make install

在编译选项中,“--sysconf”指定了Keepalived配置文件的安装路径.“--with-kernel-dir”是个很重要的参数,但这个参数并不是要把Keepalived编译进内核,而是指定使用内核源码中的头文件,即include目录。只有在使用LVS时,才需要用到“--with-kernel-dir”参数,其他时候是不需要的。

3、  设置keepalive

1
2
3
4
5
6
7
8
9
10
[root@jacken ~] # DIR=/usr/local/ ; cp$DIR/etc/rc.d/init.d/keepalived /etc/rc.d/init.d/
[root@jacken ~] # cp $DIR/etc/sysconfig/keepalived  /etc/sysconfig/ && mkdir -p /etc/keepalived
[root@jacken ~] # cp $DIR/sbin/keepalived  /usr/sbin/
[root@jacken ~] # cp /usr/local/etc/keepalived/keepalived.conf /etc/keepalived/
[root@jacken ~] # /etc/init.d/keepalivedrestart
Stopping keepalived:                                       [FAILED]
Starting keepalived:                                       [  OK  ]
[root@jacken ~] #modprobe ip_vs 
[root@jacken ~] #modprobe ip_vs_rr
[root@jacken ~] #modprobe ip_vs_wrr

Other

脚本配置文件:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
[root@jacken ~] # chmod +xinstall_keepalive.sh
[root@jacken ~] # cat install_keepalive.sh
#!/bin/bash
yum -y   install   kernel-devel openssl-devel  popt-devel &&
wget http: //www .keepalived.org /software/keepalived-1 .1.15. tar .gz &&
tar  -zxf  keepalived-1.1.15. tar .gz &&
cd  keepalived-1.1.15 &&
. /configure  --with-kernel- dir = /usr/src/kernels/2 .6.32-431.el6.x86_64/ &&
make  &&  make  install  &&
DIR= /usr/local/
cp  $DIR /etc/rc .d /init .d /keepalived   /etc/rc .d /init .d/  &&
cp  $DIR /etc/sysconfig/keepalived  /etc/sysconfig/  &&  mkdir  -p  /etc/keepalived  &&
cp  $DIR /sbin/keepalived  /usr/sbin/ &&
cp  /usr/local/etc/keepalived/keepalived .conf  /etc/keepalived/  &&
/etc/init .d /keepalived  restart
if  [ $? - eq  0 ]; then
          echo  -e  '\e[32mInstall Keepalive Successfully!\e[0m'
else
          echo  -e  '\e[31mInstall Keepalive Failure!\e[0m'
fi
[root@jacken ~] #

其实这个不算是什么脚本,方便安装而已,一定要注意内核版本号要对应。


本文转自Jacken_yang 51CTO博客,原文链接:http://blog.51cto.com/linuxnote/1652612,如需转载请自行联系原作者

相关文章
|
22小时前
|
弹性计算 安全 网络安全
带你读《从基础到应用云上安全航行指南》——阿里云产品专家教你如何全方位构建ECS安全体系(1)
带你读《从基础到应用云上安全航行指南》——阿里云产品专家教你如何全方位构建ECS安全体系(1)
84 0
|
22小时前
|
弹性计算 安全 网络安全
带你读《从基础到应用云上安全航行指南》——阿里云产品专家教你如何全方位构建ECS安全体系(2)
带你读《从基础到应用云上安全航行指南》——阿里云产品专家教你如何全方位构建ECS安全体系(2)
100 0
|
22小时前
|
弹性计算 人工智能 安全
带你读《从基础到应用云上安全航行指南》——阿里云产品专家教你如何全方位构建ECS安全体系(3)
带你读《从基础到应用云上安全航行指南》——阿里云产品专家教你如何全方位构建ECS安全体系(3)
95 0
|
3天前
|
弹性计算 监控 异构计算
ECS实例问题之安装驱动程序失败如何解决
ECS实例指的是在阿里云ECS服务中创建的虚拟计算环境,用户可在此环境中运行应用程序和服务;本合集将介绍ECS实例的创建、管理、监控和维护流程,及常见问题处理方法,助力用户保障实例的稳定运行。
|
11天前
|
弹性计算 Linux 数据安全/隐私保护
阿里云幻兽帕鲁服务器搭建教程_神仙级Palworld安装教程
阿里云幻兽帕鲁服务器搭建教程_神仙级Palworld安装教程,阿里云提供了一键部署幻兽帕鲁(Palworld)服务器的便捷服务,让用户可以快速创建和管理自己的游戏服务器,利用计算巢或OOS的幻兽帕鲁程序一键部署Palworld
|
15天前
|
Ubuntu Linux 数据安全/隐私保护
如何在windows电脑上搭建Linux环境(手把手教安装虚拟机软件和使用云服务器)
如何在windows电脑上搭建Linux环境(手把手教安装虚拟机软件和使用云服务器)
|
18天前
|
弹性计算
电子书阅读分享《基于ECS倚天实例的应用构建最佳实践》
电子书阅读分享《基于ECS倚天实例的应用构建最佳实践》
250 1
|
19天前
|
缓存 关系型数据库 MySQL
百度搜索:蓝易云【CentOS8服务器安装MySQL报错:no match mysql-community-server】
现在,你已经成功安装了MySQL服务器并解决了"no match mysql-community-server"的报错问题。祝你使用愉快!
26 1
|
19天前
|
前端开发 Java API
构建异步高并发服务器:Netty与Spring Boot的完美结合
构建异步高并发服务器:Netty与Spring Boot的完美结合
|
19天前
|
NoSQL Redis Docker
在docker中安装redis,并且阿里云服务器配置
在docker中安装redis,并且阿里云服务器配置
100 1