keepalived安装配置实战心得(实现高可用保证网络服务不间断)
keepalived安装配置实战心得(实现高可用保证网络服务不间断)
一、准备2台虚拟机
安装的系统是:centos-release-7-1.1503.el7.centos.2.8.x86_64
二、每个虚拟机添加两个网卡
1、网络连接模式为 桥接模式(复制网络连接状态)
2、IP地址均
1号机器:第一个网卡IP静态配置 192.168.1.219
第二个网卡IP地址为动态分配 (DHCP)
2号机器:第一个网卡IP静态配置 192.168.1.94
第二个网卡IP地址为动态分配 (DHCP)
三、安装keepalived (1,2号机器都装)
1、在终端里面运行: yum install keepalived
2、默认安装目录是:/etc/keepalived/
3、配置文件在:/etc/keepalived/keepalived.conf
四、安装一个简单的web服务,比如Apache (1,2号机器都装)
1、在终端里面运行: yum install httpd
2、默认安装目录是:/etc/httpd/
3、配置文件在:/etc/httpdd/conf/httpd.conf
4、网站主目录默认是: /var/www/html/
5、在主目录下手工增加 一个index.html页面(用于测试)
cd /var/www/html/
vi index.html (随便输入几个字符比如:1号机就输入:“1号机”; 2号机就输入:“2号机”)
保存一下
五、进行keepalived配置 (目的是任何一个机器挂了,不影响网站的访问)
1、编辑1号机器的/etc/keepalived/keepalived.conf内容如下:
! Configuration File for keepalived
global_defs {
#notification_email {
# acassen@firewall.loc
# failover@firewall.loc
# sysadmin@firewall.loc
#}
#notification_email_from Alexandre.Cassen@firewall.loc
#smtp_server 192.168.200.1
#smtp_connect_timeout 30
router_id LVS_DEVEL1 #路由ID所有节点都一样
}
vrrp_instance VI_1 {
state MASTER
interface eno33554944 #eth0 这是第二块网卡的标识,根据你的时机情况来,具体可以查看 /etc/sysconfig/network-scripts/
virtual_router_id 51
priority 100 #keepalived节点的优先级,主的机器比从的大
advert_int 1
authentication {
auth_type PASS
auth_pass 1111
}
virtual_ipaddress {
192.168.1.222 #对外的keepalived的虚拟IP地址(简单的说可以理解成你的域名就指向这个IP地址,keepalived保证哪个机器活着哪个机器就是这个对外的IP)
}
}
virtual_server 192.168.1.222 80 {
delay_loop 6
lb_algo rr
lb_kind NAT
persistence_timeout 50
protocol TCP
sorry_server 192.168.1.222 80
real_server 192.168.1.219 80 {
weight 1
HTTP_GET {
url {
path /var/www/html/index.html
#digest 640205b7b0fc66c1ea91c463fac6334d
}
connect_timeout 3
nb_get_retry 3
delay_before_retry 3
}
}
real_server 192.168.1.94 80 {
weight 1
HTTP_GET {
url {
path /var/www/html/index.html
#digest 640205b7b0fc66c1ea91c463fac6334c
}
connect_timeout 3
nb_get_retry 3
delay_before_retry 3
}
}
}
2、编辑2号机器的/etc/keepalived/keepalived.conf内容如下:
! Configuration File for keepalived
global_defs {
#notification_email {
# acassen@firewall.loc
# failover@firewall.loc
# sysadmin@firewall.loc
#}
#notification_email_from Alexandre.Cassen@firewall.loc
#smtp_server 192.168.200.1
#smtp_connect_timeout 30
router_id LVS_DEVEL1 #路由ID所有节点都一样
}
vrrp_instance VI_1 {
state BACKUP
interface eno16777736 #eth0 这是第二块网卡的标识,根据你的时机情况来,具体可以查看 /etc/sysconfig/network-scripts/
virtual_router_id 51
priority 99 #keepalived节点的优先级,主的机器比从的大
advert_int 1
authentication {
auth_type PASS
auth_pass 1111
}
virtual_ipaddress {
192.168.1.222 #对外的keepalived的虚拟IP地址(简单的说可以理解成你的域名就指向这个IP地址,keepalived保证哪个机器活着哪个机器就是这个对外的IP)
}
}
#虚拟服务映射关系我们的目的是当你访问192.168.1.222 自动指向真实的活着的服务器
virtual_server 192.168.1.222 80 {
delay_loop 6
lb_algo rr
lb_kind NAT
persistence_timeout 50
protocol TCP
sorry_server 192.168.1.222 80
#真实的服务器 1号机
real_server 192.168.1.219 80 {
weight 1
HTTP_GET {
url {
path /var/www/html/index.html
#digest 640205b7b0fc66c1ea91c463fac6334d
}
connect_timeout 3
nb_get_retry 3
delay_before_retry 3
}
}
#真实的服务器 2号机
real_server 192.168.1.94 80 {
weight 1
HTTP_GET {
url {
path /var/www/html/index.html
#digest 640205b7b0fc66c1ea91c463fac6334c
}
connect_timeout 3
nb_get_retry 3
delay_before_retry 3
}
}
}
六、启动服务
1、service httpd start (启动apache,1,2号机都启动)
2、service keepalived start (启动keepalived,1,2号机都启动)
启动之后可以通过以下命令查看运行状态
3、service httpd status (查看apache服务的状态)
4、service keepalived status (启动keepalived服务的状态)
通过以下命令保证开机自动启动
3、chkconfig httpd on (apache服务开机自动给启动)
4、chkconfig keepalived on (keepalived服务开机自动给启动)
七、验收成果
随便找一个机器在浏览器中输入:
http://192.168.1.222/
通过对1、2号机的网络的断开和连接查看浏览器显示的内容,如果任何一个机器网络断了或挂了,6秒后还能正常访问说明大功告成
6秒是我们在keepalived 中设置的,你也可以根据实际需要进行改动
八、收工
一个高可用、服务不间断的网络环境就搞定了哦
本人原创,未经许可,可以转载,学习知识嘛:)
keepalived安装配置实战心得(实现高可用保证网络服务不间断)的更多相关文章
- [ Openstack ] Openstack-Mitaka 高可用之 网络服务(Neutron)
目录 Openstack-Mitaka 高可用之 概述 Openstack-Mitaka 高可用之 环境初始化 Openstack-Mitaka 高可用之 Mariadb-Galera集群 ...
- keepalived安装实现nginx主备高可用
. keepalived安装环境 su - root yum -y install kernel-devel* yum -y install openssl-* yum -y install popt ...
- [ Openstack ] Openstack-Mitaka 高可用之 计算服务(Nova)
目录 Openstack-Mitaka 高可用之 概述 Openstack-Mitaka 高可用之 环境初始化 Openstack-Mitaka 高可用之 Mariadb-Galera集群 ...
- [ Openstack ] OpenStack-Mitaka 高可用之 镜像服务(glance)
目录 Openstack-Mitaka 高可用之 概述 Openstack-Mitaka 高可用之 环境初始化 Openstack-Mitaka 高可用之 Mariadb-Galera集群 ...
- Redis安装、主从配置及两种高可用集群搭建
Redis安装.主从配置及两种高可用集群搭建 一. 准备 Kali Linux虚拟机 三台:192.168.154.129.192.168.154.130.192.168.154 ...
- Keepalived安装配置
一. 介绍 keepalived:是一个类似于 layer3, 4 & 7 交换机制的软件,也就是我们平时说的第 3 层.第 4 层和第 7层交换. Keepalived 的作用是检测 we ...
- lvs keepalived 安装配置详解【转】
lvs keepalived 安装配置详解 张映 发表于 2012-06-20 分类目录: 服务器相关 前段时间看了一篇文章,lvs做负载均衡根F5差不多,说实话不怎么相信,因为F5没玩过,也无法比较 ...
- Keepalived+LVS+Nginx负载均衡之高可用
Keepalived+LVS+Nginx负载均衡之高可用 上一篇写了nginx负载均衡,此篇实现高可用(HA).系统整体设计是采用Nginx做负载均衡,若出现Nginx单机故障,则导致整个系统无法正常 ...
- Keepalived+Nginx+tomcat实现系统的高可用
Keepalived+Nginx+tomcat实现系统的高可用 1:安装vmware虚拟机 2:安装linux系统,我自己下载的centos6.5 3:安装JDK,tomcat 解压tomcat到/u ...
随机推荐
- 2018.09.23 atcoder Boxes and Candies(贪心)
传送门 一道挺有意思的贪心. 从1到n依次满足条件. 注意要特判第一个数已经大于x的情况. 但是如何贪心吃呢? 如果靠左的数没有越界,我们吃靠右的数. 原因是下一次靠右的数就会成为靠左的数,相当于多贡 ...
- 2018.09.23 bzoj1076: [SCOI2008]奖励关(期望+状压dp)
传送门 一道神奇的期望状压dp. 用f[i][j]f[i][j]f[i][j]表示目前在第i轮已选取物品状态为j,从现在到第k轮能得到的最大贡献. 如果我们从前向后推有可能会遇到不合法的情况. 所以我 ...
- 2018.07.04 POJ 1654 Area(简单计算几何)
Area Time Limit: 1000MS Memory Limit: 10000K Description You are going to compute the area of a spec ...
- 2018.07.08 hdu5316 Magician(线段树)
Magician Problem Description Fantasy magicians usually gain their ability through one of three usual ...
- 日历时间选择控件---3(支持ie、火狐)
效果展示: 源代码: <script language=javascript ><!--/* 调用方法:不能用onfocus,要用onclick <input onclic ...
- 20155218 2016-2017-2 《Java程序设计》第10周学习总结
20155218 2016-2017-2 <Java程序设计>第10周学习总结 教材学习内容总结 一个IP地址可以对应多个域名,一个域名只能对应一个IP地址. 在网络通讯中,第一次主动发起 ...
- spring + rs + RocketMQ 【精】
cxf-rs-rocketmq 项目地址:见git │ pom.xml │ └─src ├─main │ ├─java │ │ └─cn │ │ └─zno │ │ ├─pojo │ │ │ Rece ...
- git图解:代码区域总结
本文背景,在实际项目中使用git已有一年多,发现不少同事虽然会使用常用git指令,但并不理解每个指令对应的作用原理.今天静下心总结下git 的基本理解:代码的存在区域:本文以实际项目出发,理清使用gi ...
- 2015 - 4- 21 iOS开发越狱环境的搭建1
2015 - 4- 20 1. 越狱环境的搭建 http://www.iduuke.com/2030.html http://www.cnblogs.com/xiongwj0910/archi ...
- xib创建cell的两种方法
方法一:第一步:[self.collectionView registerNib:[UINib nibWithNibName:@"QGLShareBtnCell" bundle:n ...