Keepalived概述和安装(1)
一、Keepalived概述
本文主要了解开源高可用负载均衡集群利器keepalived,掌握keepalived的安装,运用keepalived配置高可用集群,并能够实现keepalived与负载均衡集群LVS的完美组合。
1、什么是keepalived?
keepalived是一个类似于三、四、五层交换机的软件,也是我们平时说的第三层、第四层、第五层交换。Keepalived的作用是检测web服务器的状态,如果有一台web服务器死机,或工作出现故障,keepalived将检测到,并将有故障的web服务器从系统中剔除,当web服务器工作正常后keepalived自动将web服务器加入到服务器集群中,这些工作全部自动完成,不需要人工干涉,需要人工做的知识修复故障的web服务器。
2、Keepalived的工作原理
三层、四层、五层工作在TCP/IP协议栈的IP层、TCP层、应用层。原理如下:
三层:keepalived使用三层方式工作是,keepalived会定期向服务器集群中的服务器发送一个IMCP的数据包,也就是ping程序,如果发现某台服务器的IP地址没有激活,keepalived便报告这台服务器失效,并将它从集群中删除,这种情况的典型例子是某台服务器被非法关机。三层的方式是以服务器的IP地址是否有效作为服务器工作正常与否的标准。
四层:主要是以TCP端口的状态来决定服务器工作正常与否。如web服务器的端口一般是80,如果keepalived检测到80端口没有启动,则keepalived将这台服务器从集群中剔除。
五层:应用层,比三层和四层要复杂一点,在网上占用的带宽也大一些,keepalived将根据用户的设定检查服务器程序运行是否正常,如果与用户设定的不相符,则keepalived将把服务器从服务器集群中剔除。
3、keepalived的作用
负载均衡-横向扩展
高可用-可持续的服务器质量
实现对失效服务器的隔离-通过健康监测,保证服务的可用性
实现:vrrp协议实现。(冗余网关路由协议)
4、keepalived体系结构

1、watchdog 负责监控checkers和vrrp进程的状况。
2、Checkers 负责真实服务器的健康监测,是keepalived最主要的功能,换一句话说,可以没有vrrp statck,但是健康检查healthcheckping一定要有。
3、Vrrp statck 负责负载均衡器之间失败切换failover。如果只用一个负载均衡器,则vrrp不是必须的。
4、Ipvs warpper是用来发送设定的规则封装到内核ipvs代码。
5、Netlink reflector 用来设定vrrp的vip地址等。
Keepalived功能十分强大,但是配置工作十分简单,keepalived各种功能的实现是通过设定配置文件keepalived.conf来完成的。
二、Keepalived的安装
1、安装keepalived
二进制编译安装三步骤:./confgiure && make && make install
问题汇总:
1.无gcc等编译工具
Yum install gcc gcc-c++
2.无openssl-devel支持
Yum install openssl-devel
3.无ipvs framework、ipvs syncdeamon support
查看kernels文件:
ls /usr/src/kernels
安装ipvsadm
Yum install kernel-devel ipvsadm
做软连接:
ln -s /usr/src/kernels/2.6.**** /usr/src/linux
4.无make工具
Yum install make
编译安装后,默认安装目录为/usr/local/etc/,下面三个目录
Keepalived、rc.d、sysconfig

3.启动设置
[root@master etc]# cp /usr/local/etc/rc.d/init.d/keepalived /etc/rc.d/init.d/
[root@master etc]# cp /usr/local/etc/sysconfig/keepalived /etc/sysconfig/
[root@master etc]# mkdir /etc/keepalived
[root@master etc]# cp /usr/local/etc/keepalived/keepalived.conf /etc/keepalived/
[root@master etc]# cp /usr/local/sbin/keepalived /usr/sbin/
[root@master etc]# service keepalived start
env: /etc/init.d/keepalived: 权限不够
[root@master etc]# chmod 755 /etc/init.d/keepalived
[root@master etc]# service keepalived start
正在启动 keepalived:[确定]
[root@master etc]# ps xua|grep keep
root 29312 0.0 0.0 6852 748 ? Ss 03:57 0:00 keepalived -D
root 29314 0.0 0.2 6908 2024 ? S 03:57 0:00 keepalived -D
root 29315 0.7 0.1 6908 1244 ? S 03:57 0:00 keepalived -D
至此,keepalived安装完成。下一节开始实战。
Keepalived概述和安装(1)的更多相关文章
- lvs + keepalived 介绍及安装
LVS介绍 lvs 核心ipvs Ipvs(IP Virtual Server)是整个负载均衡的基础,如果没有这个基础,故障隔离与失败切换就毫无意义了.Ipvs 具体实现是由ipvsadm ...
- OpenVAS漏洞扫描基础教程之OpenVAS概述及安装及配置OpenVAS服务
OpenVAS漏洞扫描基础教程之OpenVAS概述及安装及配置OpenVAS服务 1. OpenVAS基础知识 OpenVAS(Open Vulnerability Assessment Sys ...
- C++框架_之Qt的开始部分_概述_安装_创建项目_快捷键等一系列注意细节
C++框架_之Qt的开始部分_概述_安装_创建项目_快捷键等一系列注意细节 1.Qt概述 1.1 什么是Qt Qt是一个跨平台的C++图形用户界面应用程序框架.它为应用程序开发者提供建立艺术级图形界面 ...
- ElasticSearch入坑指南之概述及安装
---恢复内容开始--- ElasticSearch入坑指南之概述及安装 了解ElasticSearch ElasticSearch(简称ES)基于Lucene的分布式全文检索引擎.使用ES可以实现近 ...
- Flask 学习(一)概述及安装
Flask 概述及安装 Flask 简介 Flask是一个使用 Python 编写的轻量级 Web 应用框架.其 WSGI 工具箱采用 Werkzeug ,模板引擎则使用 Jinja2 . 官方网址 ...
- Nginx概述、安装及配置详解
nginx概述 nginx是一款自由的.开源的.高性能的HTTP服务器和反向代理服务器:同时也是一个IMAP.POP3.SMTP代理服务器:nginx可以作为一个HTTP服务器进行网站的发布处理,另外 ...
- 【转】Struts1.x系列教程(4):标签库概述与安装
转载地址:http://www.blogjava.net/nokiaguy/archive/2009/01/archive/2009/01/archive/2009/01/archive/2009/0 ...
- MongoDB笔记(一)MongoDB概述和安装
概述 关键词:关系数据库.非关系数据库 关系数据库: 关系数据库,是建立在关系数据库模型基础上的数据库,借助于集合代数等概念和方法来处理数据库中的数据.目前主流的关系数据库有oracle.SQL.ac ...
- Nginx概述和安装(1)
一.Nginx概述 Nginx ("engine x") 是一个高性能的 HTTP 和 反向代理 服务器,也是一个 IMAP/POP3/SMTP 代理服务器. Nginx 是由 I ...
随机推荐
- 关于redis的使用
距离上次写博客有两三个月了,这段时间去了新公司上班,忙了很多.接手了一个项目,刚好用到redis,先总结下遇到的问题(跟redis相关的问题): 1.列表问题 举例:展示商品列表,但是要先展示运营置顶 ...
- hbase分布式集群搭建
hbase和hadoop一样也分为单机版.伪分布式版和完全分布式集群版本,这篇文件介绍如何搭建完全分布式集群环境搭建. hbase依赖于hadoop环境,搭建habase之前首先需要搭建好hadoop ...
- 利用AndroidStudio开发java工程
1.新建一个project,或者如果你已经有project的话,那就直接新建一个module.注意选择Java library,然后下一步. 2.输入module的一些信息.点击finish.(在创建 ...
- iOS 工程默认只允许竖屏,在单独界面进行横竖转换,屏幕旋转
只含有 .关于横竖屏的代码 #import "InspectionReportViewController.h" #define SCREEN_WIDTH ([UIScreen m ...
- SQL Server 修改AlwaysOn共享网络位置
标签:MSSQL/故障转移 概述 很多人一开始搭建Alwayson的时候对于共享网络位置的选择不是很重视, 导致后面需要去修改这个路径.但是怎样修改这个路径呢?貌似没有给出具体的修改选项,但是还是有地 ...
- 【Zookeeper】源码分析之服务器(一)
一.前言 前面已经介绍了Zookeeper中Leader选举的具体流程,接着来学习Zookeeper中的各种服务器. 二.总体框架图 对于服务器,其框架图如下图所示 说明: ZooKeeperServ ...
- 用keras作CNN卷积网络书本分类(书本、非书本)
本文介绍如何使用keras作图片分类(2分类与多分类,其实就一个参数的区别...呵呵) 先来看看解决的问题:从一堆图片中分出是不是书本,也就是最终给图片标签上:“书本“.“非书本”,简单吧. 先来看看 ...
- java 设计模式-缺省适配器模式
本文转载地址:http://www.cnblogs.com/iyangyuan/archive/2013/03/11/2954808.html 在程序设计过程中,读者很可能遇到这样一种困境:设计了一个 ...
- Who's in the Middle
FJ is surveying his herd to find the most average cow. He wants to know how much milk this 'median' ...
- 使用 Kafka 和 ELK 搭建测试日志系统(1)
本文仅供自己学习,不合适转载. 这是两篇文章的第一部分. 1. 安装 ELK 1.1 安装 ElasticSearch 在海航云上创建一个 Ubutu 16.4 虚机,2核4GB内存. (1)执行以下 ...