构建高可用服务器之一 Keepalive介绍及安装-阿里云开发者社区

开发者社区> 科技小先锋> 正文

构建高可用服务器之一 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,如需转载请自行联系原作者

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
Spring Boot 基础教程:入门简介
作为 Spring Boot 基础教程的开篇,本文主要介绍了 Spring Boot 的定义、特点以及它的优缺点,并探讨了我们为何要使用 Spring Boot 这一利器,使用它又能给我们带来什么好处。
10 0
tddl连接池获取和释放流程疑问
最近遇到线上机器连接池满的情况,排查发现tddl里面在连接池获取和释放流程中有些问题
5 0
冬季实战营第一期:从零到一上手玩转云服务器-体验报告
本期主要实践以下内容: 1.初步认识ECS云服务器,能够体验到登陆ECS服务器,登陆控制台,管理ECS等操作。 2.使用ECS云服务器搭建LAMP环境,其中LAMP是指Linux、Apache、MySQL、PHP。 3.使用ECS云服务器MySQL数据库,并通过DMS数据管理服务远程访问MySQL数据库。 4.使用PolarDB云数据库+ECS搭建门户网站,通过之前所学LAMP架构讲MySQL替换为PolarDB云数据库并部署门户网站。
9 0
原来使用PolarDB和ECS搭建门户网站并没有那么难
以前一直使用虚拟主机搭建网站,服务器就使用那些面板,一直对直接在服务器上搭建网站有些怵,跟着这个实验做,发现只需要不到十步就可以完成网站的搭建。
8 0
基于阿里云服务器安装Docker完整图文教程
基于阿里云服务器安装Docker完整图文教程
3 0
iLogtail 与Filebeat 性能对比
前段时间, iLogtail 阿里千万实例可观测采集器开源,其中介绍了iLogtail采集性能可以达到单核100MB/s,相比开源采集Agent有5-10倍性能优势。很多小伙伴好奇iLogtail具体的性能数据和资源消耗如何,本文将针对目前业界使用度较高且性能相对较优的Agent FileBeat进行对比,测试这两个Agent在不同压力场景下的表现如何。
4 0
从传统银行到互联网,异地多活难不难?(3)
从传统银行到互联网,异地多活难不难?(3)
4 0
宝塔面板如何为网站配置SSL证书?
原文链接:https://blog.csdn.net/JunyouYH/article/details/120734870(我的不属于转载)
3 0
6967
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
《2021云上架构与运维峰会演讲合集》
立即下载
《零基础CSS入门教程》
立即下载
《零基础HTML入门教程》
立即下载