部署Keepalived高可用软件,实现如下:

- 使用Keepalived实现web服务器的高可用

- Web服务器IP地址分别为192.168.4.100和192.168.4.200

- Web服务器的浮动VIP地址为192.168.4.80

- 客户端通过访问VIP地址访问Web页面

环境: 使用3台虚拟机,2台作为Web服务器,并部署Keepalived、1台作为客户端,拓扑结构如图所示

拓扑图:

步骤:

一, 配置网络环境

1. 设置Web1服务器网络参数、配置Web服务

[root@web1 ~]# nmcli connection modify eth0 ipv4.method manual ipv4.addresses 192.168.4.100/24 connection.autoconnect yes

[root@web1 ~]# nmcli connection up eth0

[root@web1 ~]# yum -y install httpd

[root@web1 ~]# echo "192.168.4.100" > /var/www/html/index.html

[root@web1 ~]# systemctl restart httpd

2. 设置Web2服务器网络参数、配置Web服务

[root@web2 ~]# nmcli connection modify eth0 ipv4.method manual ipv4.addresses 192.168.4.200/24 connection.autoconnect yes

[root@web2 ~]# nmcli connection up eth0

[root@web2 ~]# yum -y install httpd

[root@web2 ~]# echo "192.168.4.200" > /var/www/html/index.html

[root@web2 ~]# systemctl restart httpd

3. 配置client主机的网络参数

[root@client~]# nmcli connection modify eth0 ipv4.method manual ipv4.addresses 192.168.4.5/24 connection.autoconnect yes

[root@client~]# nmcli connection up eth0

二, 安装Keepalived软件

[root@web1 ~]# yum install -y keepalived

[root@web2 ~]# yum install -y keepalived

三, 部署Keepalived服务

1. 修改web1服务器Keepalived配置文件

[root@web1 ~]# vim /etc/keepalived/keepalived.conf

global_defs {

notification_email {

admin@tarena.com.cn #设置报警收件人邮箱

}

notification_email_from ka@localhost     #设置发件人

smtp_server 127.0.0.1    #定义邮件服务器

smtp_connect_timeout 30

router_id web1     #设置路由ID号

}

vrrp_instance VI_1 {

state MASTER #主服务器为MASTER(备服务器需要修改为BACKUP)

interface eth0 #定义网络接口

virtual_router_id 51 #主备服务器VRID号必须一致

priority 100 #服务器优先级,优先级高优先获取VIP

advert_int 1

authentication {

auth_type pass

auth_pass 1111    #主备服务器密码必须一致

}

virtual_ipaddress {            #谁是主服务器谁获得该VIP

192.168.4.80

}

}

2. 修改web2服务器Keepalived配置文件

[root@web2 ~]# vim /etc/keepalived/keepalived.conf

global_defs {

notification_email {

admin@tarena.com.cn #设置报警收件人邮箱

}

notification_email_from ka@localhost     #设置发件人

smtp_server 127.0.0.1    #定义邮件服务器

smtp_connect_timeout 30

router_id web2     #设置路由ID号

}

vrrp_instance VI_1 {

state BACKUP      #备用服务器

interface eth0          #定义网络接口

virtual_router_id 51        #主备服务器VRID号必须一致

priority 50             #服务器优先级值小于主服务器

advert_int 1

authentication {

auth_type pass

auth_pass 1111    #主备服务器密码必须一致

}

virtual_ipaddress {            #谁是主服务器谁获得该VIP

192.168.4.80

}

}

3. 启动服务

[root@web1 ~]# systemctl start keepalived

[root@web2 ~]# systemctl start keepalived

4. 配置防火墙和SELinux (注意,启动keepalived会自动添加一个drop的防火墙规则,需要清空iptables)

[root@web1 ~]# iptables -F

[root@web1 ~]# setenforce 0

[root@web2 ~]# iptables -F

[root@web2 ~]# setenforce 0

四, 测试

1. 登录web1和web2查看VIP信息

[root@web1 ~]# ip addr show eth0

[root@web2 ~]# ip addr show eth0

2.  客户端访问

客户端使用curl命令连接http://192.168.4.80,查看Web页面.

关闭Web1服务器的网卡,客户端再次访问http://192.168.4.80,验证是否可以正常访问服务?

结束.

Keepalived高可用服务器案例的更多相关文章

  1. Cluster基础(三):配置HAProxy负载平衡集群、Keepalived高可用服务器、Keepalived+LVS服务器

    一.配置HAProxy负载平衡集群 目标: 准备三台Linux服务器,两台做Web服务器,一台安装HAProxy,实现如下功能: 客户端访问HAProxy,HAProxy分发请求到后端Real Ser ...

  2. nginx+keepalived高可用服务器宕机解决方案

    http://blog.51cto.com/gdutcxh/2109841 https://blog.csdn.net/winsonyuan/article/details/52784988

  3. keepalived高可用集群。

    keepalived故障切换转移原理1vrrp协议:(vritual router redundancy protocol)虚拟路由冗余协议,2故障转移.keepalived三大功能1实现物理高可用, ...

  4. Linux实战教学笔记31:Keepalived高可用集群应用实践

    1.1 Keepalived高可用软件 1.1.1 Keepalived介绍 Keepalived软件起初是专门为LVS负载均衡软件设计的,用来管理并监控LVS集群系统中各个服务节点的状态,后来又加入 ...

  5. nginx Keepalived高可用集群

    一.Keepalived高可用 1.简介 Keepalived软件起初是专为LvS负载均衡软件设计的,用来管理并监控LVS集群系统中各个服务节点的状态,后来又加入了可以实现高可用的VRRP功能.因此, ...

  6. 企业级Nginx负载均衡与keepalived高可用实战(二)keepalived篇

    1.Keepalived高可用软件 1.1.Keepalived介绍 Keepalived软件起初是专门为LVS负载均衡软件设计的,用来管理并监控LVS集群系统中各个服务节点的状态,后来又加入了可以实 ...

  7. Nginx+Keepalived高可用集群应用实践

    Nginx+Keepalived高可用集群应用实践 1.Keepalived高可用软件 1.1 Keepalived服务的三个重要功能 1.1.1管理LVS负载均衡软件 早期的LVS软件,需要通过命令 ...

  8. Linux系统——Keepalived高可用集群

    #### keepalived服务的三个重要功能1. 管理LVS负载均衡软件Keepalived可以通过读取自身的配置文件,实现通过更底层的接口直接管理LVS的配置以及控制服务的启动,停止功能,这使得 ...

  9. 第十九章 keepalived高可用

    一.keepalived高可用 1.什么是高可用 一般是指2台机器启动着完全相同的业务系统,当有一台机器down机了,另外一台服务器就能快速的接管,对于访问的用户是无感知的. 2.高可用使用的工具 1 ...

随机推荐

  1. [IOI2008/BZOJ1791 岛屿](处理基环树的小技巧&基于bfs树形DP)

    IOI2008/BZOJ1791 岛屿 题目大意是在一个基环树森林里求每一棵基环树的直径①的和. 其实就是树的直径的基环树升级版.我们先把环找出来,然后从环上的每一个节点x出发,并且不经过环上其他节点 ...

  2. Selenium 上手:Selenium扫盲区

    Selenium 自述Selenium 是由Jason Huggins软件工程师编写的一个开源的浏览器自动化测试框架.主要用于测试自动化Web UI应用程序. Selenium 工作原理通过编程语言( ...

  3. mysql 5.7 Could not load driverClass com.mysql.cj.jdbc.Driver

    参考: http://www.manongjc.com/article/24424.html https://blog.csdn.net/kingscoming/article/details/788 ...

  4. 查看磁盘IO负载 - 看哪些进程在读写磁盘

    原文:http://www.cnblogs.com/cloudstorage/archive/2012/11/11/2764623.html 今天晚上发现服务器io有点高,顺带看看哪些进程在读写磁盘. ...

  5. 中国MOOC_零基础学Java语言_第1周 计算_第1周编程题_1温度转换

    第1周编程题 依照学术诚信条款,我保证此作业是本人独立完成的. 温馨提示: 1.本次作业属于Online Judge题目,提交后由系统即时判分. 2.学生可以在作业截止时间之前不限次数提交答案,系统将 ...

  6. 一种局部二值化算法:Sauvola算法

    之前接触过全局二值化(OTSU算法),还有OPENCV提供的自适应二值化,最近又了解到一种新的局部二值化算法,Sauvola算法. 转载自:http://www.dididongdong.com/ar ...

  7. nginx详解反向代理,负载均衡,LNMP架构上线动态网站

    1.nginx介绍 nginx.org Nginx是俄罗斯人编写的十分轻量级的HTTP服务器,Nginx,它的发音为“engine X”,是一个高性能的HTTP和反向代理服务器,同时也是一个IMAP/ ...

  8. visual studio 在windows远程调试 linux 程序 cout 输出乱码

    转载:https://www.cnblogs.com/findumars/p/6627255.html 反正是解决了. 以gcc为例,它有三个命令选项:-finput-charset=gb18030- ...

  9. Matlab与C++混合编程 2--在C++中使用Matlab固有命令

    直接在Visual Studio中运行Matlab固有命令 #include <iostream> #include"engine.h" // 添加matlab引擎库的 ...

  10. Chapter03 第三节 浮点数

    3.3 浮点数 3.3.1 浮点数的表示 常规表示:12.34.0.01.8.0 E表示: 2.5e+8(2.5 10^8).7E6(7.0 10^6) (e大小写随意) (e+x或者E-x表示小数点 ...