一、  介绍

keepalived是一个类似于 layer3, 4 & 7 交换机制的软件,也就是我们平时说的第 3 层、第 4 层和第 7层交换。 Keepalived 的作用是检测 web 服务器的状态,如果有一台 web 服务器死机,或工作出现故障,Keepalived 将检测到,并将有故障的 web 服务器从系统中剔除,当 web 服务器工作正常后 Keepalived 自动将web 服务器加入到服务器群中,这些工作全部自动完成,不需要人工干涉,需要人工做的只是修复故障的web 服务器。

keepalived程序是vrrp协议在linux主机上以守护进程方式的实现,能够根据配置文件生成IPVS规则 ,并对各real server的健康做检测,以及Loadbalance主机和backup主机之间failover的实现,keepalived在Centos6.4+收录到了发行版光盘中

keepalived 理论工作原理

Layer3,4&5 工作在 IP/TCP 协议栈的 IP 层, TCP 层,及应用层,。

原理分别如下:
Layer3Keepalived 使用 Layer3 的方式工作式时, Keepalived 会定期向服务器群中的服务器发送一个 ICMP 的数据包(既我们平时用的 Ping 程序) , 如果发现某台服务的 IP 地址没有激活,
Keepalived 便报告这台服务器失效,并将它从服务器群中剔除,这种情况的典型例子是某台服务器被非法关机。
Layer3 的方式是以服务器的 IP 地址是否有效作为服务器工作正常与否的标准。
Layer4: 主要以 TCP 端口的状态来决定服务器工作正常与否。如 web server 的服务端口一般是
80,如果 Keepalived 检测到 80 端口没有启动,则 Keepalived 将把这台服务器从服务器群中删除。
Layer7:Layer5 就是工作在具体的应用层了,比 Layer3,Layer4 要复杂一点,在网络上占用的带宽也要大一些。
Keepalived 将根据用户的设定检查服务器程序的运行是否正常,如果与用户的设定不相符,则
Keepalived 将把服务器从服务器群中剔除。

比如说访问一个页面,它有没有这个页面,没有的话,它就会把它踢除啊

keepalived作用:

1.管理 VIP(虚拟IP)    VIP 会在 LVS 之间漂移

2.监控 LVS分发器

运行在主分发的 Keepalived 会以组播的形式向网络中宣告自己,即主分发器还活着,备用节点能收到。当备用节点,在一个时间单位中收不到组播,备用节点会认为主 LVS 挂了,开始接手主分发器工作,把 VIP 配给自己。

3.管理 RS

Keepalived 会每隔一个时间段去做一次类似于访问的操作如:

探针: elinks
http://192.168.3.64 -dump

 

keepalived
官网

http://www.keepalived.org/

LVSLinux
Virtual Server的简写,意即Linux虚拟服务器,是一个虚拟的服务器集群系统,此项目在1998年5月由章文嵩博士成立,是中国国内最早出现的自由软件项目之一。

中文官方网站:http://zh.linuxvirtualserver.org/           http://www.linux-vs.org/zh/

二、keepalived+lvs-DR模式配置高可用负载均衡

拓扑如下:

IP地址与主机分配如下 :

机器角色

机器IP

网关

机器作用

xuegod63

RIP:192.168.1.63/24

192.168.1.1

RS1-
WEB1

xuegod64

RIP:192.168.1.64/24

192.168.1.1

RS2-
WEB2

xuegod66

DIP:192.168.1.66/24

VIP:192.168.1.200/24

192.168.1.1

主-LVS

xuegod67

DIP:192.168.1.67/24

VIP:192.168.1.200/24

192.168.1.1

备-LVS

二、  在master和bakcup分别安装ipvsadm和keepalived软件包

注:安装完成ipvsadm后不需要任何配置,启动方式由keepalived来控制

keepalived包下载地址:http://www.keepalived.org/software/keepalived-1.2.16.tar.gz

ipvsadm包自带系统光盘中含有

1.在master上面安装

安装ipvsadm

[root@xuegod66
~]# cd /media/Packages/

[root@xuegod66
Packages]# rpm -ivh ipvsadm-1.26-2.el6.x86_64.rpm

warning:
ipvsadm-1.26-2.el6.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID fd431d51:
NOKEY

Preparing...               
########################################### [100%]

1:ipvsadm               
########################################### [100%]

[root@xuegod66
Packages]# ipvsadm

IP Virtual Server version 1.2.1 (size=4096)

Prot LocalAddress:Port
Scheduler Flags

-> RemoteAddress:Port          
Forward Weight ActiveConn InActConn

检查模版是否加入了内核

[root@xuegod66
Packages]# lsmod | grep ip_vs

ip_vs                
125220  0

libcrc32c              
1246  1 ip_vs

ipv6                 
317340  158 ip_vs,ip6t_REJECT,nf_conntrack_ipv6,nf_defrag_ipv6

安装keepalived

[root@xuegod66
tmp]# wget http://www.keepalived.org/software/keepalived-1.2.16.tar.gz

[root@xuegod66
tmp]# tar zxf keepalived-1.2.16.tar.gz

[root@xuegod66
tmp]# cd keepalived-1.2.16

[root@xuegod66
keepalived-1.2.16]# ./configure
--prefix=/usr/local/keepalived

Keepalived
configuration

------------------------

Keepalived
version       : 1.2.16

Compiler         
       : gcc

Compiler
flags           : -g -O2

Extra
Lib               
: -lssl -lcrypto -lcrypt

Use IPVS
Framework       : Yes

IPVS sync daemon
support : Yes

IPVS use
libnl           : No

fwmark socket
support    : Yes

Use VRRP
Framework       : Yes

Use VRRP
VMAC            : Yes

SNMP
support            
: No

SHA1
support            
: No

Use Debug
flags          : No

拓展:VRRP

虚拟路由冗余协议(Virtual Router
Redundancy Protocol,简称VRRP)是由IETF提出的解决局域网中配置静态网关出现单点失效现象的路由协议。使用组播方式通信。

VRRP是一种路由容错协议,也可以叫做备份路由协议。一个局域网络内的所有主机都设置缺省路由(默认网关),当网内主机发出的目的地址不在本网段时,报文将被通过缺省路由发往外部路由器,从而实现了主机与外部网络的通信。当缺省路由器down掉(即端口关闭)之后,内部主机将无法与外部通信,如果路由器设置了VRRP时,那么这时,虚拟路由将启用备份路由器,从而实现全网通信。所有局域网中的PC机,默认网关为10.1.1.13!

工作流程如图:

[root@xuegod66
keepalived-1.2.16]# make && make install

查看安装后生成的文件:

[root@xuegod66
keepalived-1.2.16]# ls /usr/local/keepalived/

bin  etc 
sbin  share

主配置文件:

[root@xuegod66
]# ls
/usr/local/keepalived/etc/keepalived/keepalived.conf

/usr/local/keepalived/etc/keepalived/keepalived.conf

建立启动脚本:

[root@xuegod66
~]# cp
/usr/local/keepalived/etc/rc.d/init.d/keepalived /etc/init.d

查看有没有执行权限,如果没有要给它一个执行权限

[root@xuegod66
~]# ll /etc/init.d/keepalived

-rwxr-xr-x 1 root root
1308 8月   9 15:34 /etc/init.d/keepalived

因为我们使用的是非默认路径(/usr/local)安装keepalived,所以需要修改启动文件几处地方,以保证keepalived能够正常启动,需要修改的文件如下:

[root@xuegod66
~]# vi /etc/init.d/keepalived

# Source configuration
file (we set KEEPALIVED_OPTIONS there)

#.
/etc/sysconfig/keepalived   #注释掉

RETVAL=0

prog="keepalived"

exec="/usr/local/keepalived/sbin/keepalived"   
   #添加

config="/usr/local/keepalived/etc/keepalived/keepalived.conf" 
#添加

start() {

echo
-n $"Starting $prog: "

daemon keepalived ${KEEPALIVED_OPTIONS}    àà原来这一行改为下面这样写法

daemon $exec -D -f $config

RETVAL=$?

echo

[
$RETVAL -eq 0 ] && touch /var/lock/subsys/$prog

}

[root@xuegod66
~]# service keepalived restart

切勿忘记将此服务设置为开机启动

[root@xuegod66
~]# chkconfig keepalived on

默认的配置文件中,指定了三个数个虚拟IP : 192.168.200.16  192.168.200.17  192.168.200.18

[root@xuegod66
~]# ip addr

……….

2: eth0:
<BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen
1000

link/ether 00:0c:29:62:21:a6 brd ff:ff:ff:ff:ff:ff

inet
192.168.1.66/24 brd 192.168.1.255 scope global eth0

inet
192.168.200.16/32 scope global eth0

inet
192.168.200.17/32 scope global eth0

inet
192.168.200.18/32 scope global eth0

inet6
fe80::20c:29ff:fe62:21a6/64 scope link

到此我们就安装成功了

实战1:使用keepalived配置LVS-DR
主-备高可用集群模式 
描述:

在这种模式下,虚拟IP在某时刻只能属于某一个节点,另一个节点作为备用节点存在。当主节点不可用时,备用节点接管虚拟IP,提供正常服务。

配置参数:

节点 xuegod66(主节点); 节点 xuegod67(备用节点)
;  虚拟 IP 192.168.1.200对外提供服务的 IP。 要求默认情况下由节点 xuegod66 提供服务,当节点 xuegod66 不可用时,由节点 xuegod67 提供服务(即虚拟 IP 漂移至节点
xuegod67)

配置xuegod66为keepalived主:

[root@xuegod66
keepalived]# vim etc/keepalived/keepalived.conf

! Configuration File
for keepalived

global_defs {

notification_email {

xuegod@localhost

}

notification_email_from xuegod@localhost

smtp_server localhost

smtp_connect_timeout 30

router_id
xuegod66

}

vrrp_instance apache {

state MASTER

interface eth0

virtual_router_id 51

priority 100

advert_int 1

authentication {

auth_type PASS

auth_pass 1111

}

virtual_ipaddress {

192.168.1.200

}

}

virtual_server
192.168.1.200 80 {

delay_loop 6

lb_algo rr

lb_kind DR

nat_mask 255.255.255.0

persistence_timeout 50

protocol TCP

real_server 192.168.1.63 80 {

weight 1

TCP_CHECK {

connect_timeout 3

nb_get_retry 3

delay_before_retry 3

connect_port 80

}

}

real_server 192.168.1.64 80 {

weight 1

TCP_CHECK {

connect_timeout 3

nb_get_retry
3

delay_before_retry 3

connect_port 80

}

}

}

#默认配置文件中还有两个 virtual_server 模版,把剩下的都删除了,就可以。 如:

#virtual_server
10.10.10.2 1358 {  。。。 }

#virtual_server
10.10.10.3 1358 {  。。。 }

 

配置文件说明

Global configuration : 全局配置

global_defs{

}

VRRP Configuration : 配置VRRP实例

vrrp_instance name{

}

LVS Configuration : IPVS的相关配置

virtual_server ip port {

real_server
ip port {

}

}

 

#全局定义部分

global_defs
{

notification_email {

dba.gao@gmail.com              #设置报警邮件地址,收件人邮箱,可以设置多个,每行一个。注意,如果要开启邮件报警,需要开启本机的sendmail服务。

ixdba@163.com

}

notification_email_from Keepalived@localhost           #发件人邮箱。

smtp_server 192.168.200.1      #设置smtp server地址。

smtp_connect_timeout 30         #设置连接smtp服务器超时时间。

router_id  LVS_MASTER    #运行Keepalived服务器的一个标识。建议写主机名

}

#vrrp实例定义部分

vrrp_instance
VI_1 {

state MASTER       
#指定Keepalived的角色,MASTER表示此主机是主用服务器,BACKUP表示是备用服务器。

interface eth0         #指定HA监测网络的接口。

virtual_router_id 51  #虚拟路由标识,这个标识是一个数字,并且同一个vrrp实例使用唯一的标识,即同一个vrrp_instance下,MASTER和BACKUP必须是一致的。

priority
100            #定义优先级,数字越大,优先级越高,在一个vrrp_instance下,MASTER的优先级必须大于BACKUP的优先级。

advert_int 1    #设定MASTER与BACKUP负载均衡器之间同步检查的时间间隔,单位是秒。

authentication {                    #设定验证类型和密码。

auth_type PASS               #设置验证类型,主要有PASS和AH两种。

auth_pass 1111   #设置验证密码,在一个vrrp_instance下,MASTER与BACKUP必须使用相同的密码才能正常通信。

}

virtual_ipaddress {         #设置虚拟IP地址,可以设置多个虚拟IP地址,每行一个。

192.168.12.135

}

}

#虚拟服务器定义部分

virtual_server
192.168.12.135 80 {      #设置虚拟服务器,需要指定虚拟ip地址和服务端口,ip与端口之间用空格隔开。

delay_loop 6                                #设置健康检查时间,单位是秒。

lb_algo rr                          
#设置负载调度算法,这里设置为rr,即轮询算法。

lb_kind
DR                      
#设置LVS实现负载均衡的机制,可以有NAT、TUN和DR三个模式可选。

persistence_timeout
50           秒内没有执行任何操作,那么接下来的操作会被分发到另外节点,但是如果一直在操作动态页面,则不受50秒的时间限制。0为不可用

protocol TCP                               #指定转发协议类型,有tcp和udp两种。

real_server
192.168.12.246 80 {   ,需要指定real server的真实IP地址和端口,ip与端口之间用空格隔开。

weight
3 #配置服务节点的权值,权值大小用数字表示,数字越大,权值越高,设置权值的大小可以为不同性能的服务器分配不同的负载,可以对性能高的服务器设置较高的权值,而对性能较低的服务器设置相对较低的权值,这样就合理的利用和分配了系统资源。

TCP_CHECK {                   #realserve的状态检测设置部分,单位是秒

connect_timeout 10     #10秒无响应超时

nb_get_retry 3            
#重试次数

delay_before_retry 3    #重试间隔

}

}

real_server 192.168.12.237 80 {

weight 1

TCP_CHECK {

connect_timeout 3

nb_get_retry
3

delay_before_retry 3

}

}

}

[root@xuegod66
keepalived]# service keepalived restart

测试是否可以加载VIP地址

[root@xuegod66
keepalived]# ipvsadm -L –n

IP Virtual
Server version 1.2.1(size=4096)

Prot
LocalAddress:Port Scheduler Flags

->
RemoteAddress:Port          
Forward Weight ActiveConn InActConn

TCP  192.168.1.200:80
rr persistent 50

#注:没有看到 realserver,是因为两台
realserver 没有开启 httpd 服务。

2.在bakcup上面安装

[root@xuegod67
Packages]# rpm -ivh ipvsadm-1.26-2.el6.x86_64.rpm

warning:
ipvsadm-1.26-2.el6.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID fd431d51:
NOKEY

Preparing...               
########################################### [100%]

1:ipvsadm               
########################################### [100%]

[root@xuegod67
Packages]# ipvsadm

IP Virtual Server version 1.2.1 (size=4096)

Prot LocalAddress:Port
Scheduler Flags

->
RemoteAddress:Port          
Forward Weight ActiveConn InActConn

检查模版是否加入了内核

[root@xuegod67
Packages]# lsmod|grep ip_vs

ip_vs                
125220  0

libcrc32c              
1246  1 ip_vs

ipv6                 
317340  158 ip_vs,ip6t_REJECT,nf_conntrack_ipv6,nf_defrag_ipv6

安装keepalived

[root@xuegod67
~]#  wget http://www.keepalived.org/software/keepalived-1.2.16.tar.gz

[root@xuegod67
~]# tar zxf keepalived-1.2.16.tar.gz

[root@xuegod67
~]# cd keepalived-1.2.16

[root@xuegod67
keepalived-1.2.16]# ./configure --prefix=/usr/local/keepalived

Keepalived
configuration

------------------------

Keepalived
version       : 1.2.16

Compiler                
: gcc

Compiler
flags           : -g -O2

Extra
Lib               
: -lssl -lcrypto -lcrypt

Use IPVS
Framework       : Yes

IPVS sync daemon
support : Yes

IPVS use
libnl           : No

fwmark socket
support    : Yes

Use VRRP
Framework       : Yes

Use VRRP
VMAC            : Yes

SNMP
support            
: No

SHA1
support            
: No

Use Debug
flags          : No

[root@xuegod67
keepalived-1.2.16]# make && make install

将xuegod66上的启动文件和配置文件复制到xuegod67的相应位置

[root@xuegod66
~]# scp /etc/init.d/keepalived xuegod67:/etc/init.d/

[root@xuegod66
~]# scp
/usr/local/keepalived/etc/keepalived/keepalived.conf
xuegod67:/usr/local/keepalived/etc/keepalived/

复制过来的启动文件就不需要再修改了,配置文件还要做一定的修改

[root@xuegod67
~]# vi
/usr/local/keepalived/etc/keepalived/keepalived.conf

global_defs {

notification_email {

root@localhost

}

notification_email_from root@localhost

smtp_server localhost

smtp_connect_timeout 30

router_id xuegod67         #运行 keepalived 的机器标示符

}

vrrp_instance apache {

state BACKUP        
#当前 LVS 状态为从分发器

interface eth0

virtual_router_id 51

priority 90                  
#前 LVS 优先级,备的要比主的小

advert_int 1

authentication {

auth_type PASS

auth_pass 1111

}

virtual_ipaddress {

192.168.1.200

}

}

……………………

[root@xuegod67 keepalived]# service
keepalived restart

测试:高可用

[root@xuegod66 keepalived]# /etc/init.d/keepalived stop #xueogd66上停止keepalived

[root@xuegod67 keepalived]# ip addr

……

2:
eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state
UP qlen 1000

link/ether 00:0c:29:ae:04:06 brd ff:ff:ff:ff:ff:ff

inet 192.168.1.67/24 brd 192.168.1.255 scope global eth0

inet 192.168.1.200/32 scope global eth0

inet6 fe80::20c:29ff:feae:406/64 scope link

valid_lft forever preferred_lft forever

[root@xuegod67 keepalived]# ipvsadm -L –n

IP
Virtual Server version 1.2.1(size=4096)

Prot
LocalAddress:Port Scheduler Flags

-> RemoteAddress:Port          
Forward Weight ActiveConn InActConn

TCP 
192.168.1.200:80 rr persistent 50

#看到192.168.1.63飘移过来了,就证明一切正常了

或查看日志:

[root@xuegod61
~]# tail -f /var/log/messages

三、配置WEB服务器

配置RS1

[root@xuegod63
~]# vim /etc/init.d/lvsrsdr

#!/bin/bash

#description:start
relserver

VIP=192.168.1.200

source
/etc/init.d/functions               
#加载环境变量(可以加载所有的环境变量)

case $1 in

start)

echo 'start LVS of Realserver DR'

/sbin/ifconfig lo:1 $VIP broadcast $VIP netmask 255.255.255.255 up

/sbin/route add -host $VIP dev lo:1

echo '1' > /proc/sys/net/ipv4/conf/lo/arp_ignore

echo '2' > /proc/sys/net/ipv4/conf/lo/arp_announce

echo '1' > /proc/sys/net/ipv4/conf/all/arp_ignore

echo '2' > /proc/sys/net/ipv4/conf/all/arp_announce

;;

stop)

/sbin/ifconfig lo:1 down

echo 'Close LVS of Realserver DR'

echo '0' > /proc/sys/net/ipv4/conf/lo/arp_ignore

echo '0' > /proc/sys/net/ipv4/conf/lo/arp_announce

echo '0' > /proc/sys/net/ipv4/conf/all/arp_ignore

echo '0' > /proc/sys/net/ipv4/conf/all/arp_announce

;;

*)

echo
"Usage:$0(start|stop)"

exit 1

esac

[root@xuegod63 ~]# /etc/init.d/lvsrsdr start

[root@xuegod63 ~]# echo "/etc/init.d/lvsrsdr start " >
/etc/rc.local

[root@xuegod63 ~]# ip addr

1: lo:
<LOOPBACK,UP,LOWER_UP> mtu 16436 qdisc noqueue state UNKNOWN

link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00

inet 127.0.0.1/8 scope host lo

inet 192.168.1.200/32 brd 192.168.1.200 scope global lo:1

inet6 ::1/128 scope host

valid_lft forever preferred_lft forever

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

[root@xuegod63 ~]# service httpd restart

[root@xuegod63 ~]# echo 192.168.1.63 > /var/www/html/index.html

[root@xuegod63 ~]# service httpd restart

配置RS2

[root@xuegod64 ~]# scp /etc/init.d/lvsrsdr 192.168.1.64:/etc/init.d          
#从Xuegod63上导入脚本

[root@xuegod64 ~]# /etc/init.d/lvsrsdr start

[root@xuegod64 ~]# echo "/etc/init.d/lvsrsdr start " >
/etc/rc.local

[root@xuegod64 ~]# ip addr

1: lo:
<LOOPBACK,UP,LOWER_UP> mtu 16436 qdisc noqueue state UNKNOWN

link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00

inet 127.0.0.1/8 scope host lo

inet 192.168.1.200/32 brd 192.168.1.200 scope global lo:1

inet6 ::1/128 scope host

[root@xuegod64 ~]# yum install -y httpd php

[root@xuegod64 ~]# echo 192.168.1.64 > /var/www/html/index.html

[root@xuegod64 ~]# service httpd restart

测试

我们先清空浏览器缓存

等待50S之后再看一下

测试:主备切换

首先在主上Xueogd66查看状态

[root@xuegod66 keepalived]# ipvsadm -L -n

IP
Virtual Server version 1.2.1 (size=4096)

Prot
LocalAddress:Port Scheduler Flags

->
RemoteAddress:Port          
Forward Weight ActiveConn InActConn

TCP 
192.168.1.200:80 rr persistent 50

-> 192.168.1.63:80             
Route   1     
0         
0

->
192.168.1.64:80             
Route   1     
0          14

在备上查看Xuegod67的状态

[root@xuegod64 keepalived]# ipvsadm -L -n

IP
Virtual Server version 1.2.1 (size=4096)

Prot
LocalAddress:Port Scheduler Flags

->
RemoteAddress:Port          
Forward Weight ActiveConn InActConn

[root@xuegod66 keepalived]# service
keepalived stop           //在xuegod66上停掉keepalived模拟故障,在查看xuegod67

[root@xuegod67 keepalived]# ipvsadm -L –n

IP
Virtual Server version 1.2.1 (size=4096)

Prot
LocalAddress:Port Scheduler Flags

->
RemoteAddress:Port          
Forward Weight ActiveConn InActConn

TCP 
192.168.1.200:80 rr persistent 50

-> 192.168.1.63:80             
Route   1     
0         
0

->
192.168.1.64:80             
Route   1     
0          0

[root@xuegod67 keepalived]# ip addr

……

2:
eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state
UP qlen 1000

link/ether 00:0c:29:ae:04:06 brd ff:ff:ff:ff:ff:ff

inet 192.168.1.67/24 brd 192.168.1.255 scope global eth0

inet 192.168.1.200/32 scope global eth0

inet6 fe80::20c:29ff:feae:406/64 scope link

valid_lft forever preferred_lft forever

从日志看:

[root@xuegod67 keepalived]# tailf /var/log/messages

当我们重启了主上的keepalived,自动从备分发器转到主分发器上。因为备的优先级低。

[root@xuegod66 keepalived]# service keepalived restart

测试RS容错

停掉Xueogd64的httpd之后xuegod63查看

[root@xuegod63 keepalived]# ipvsadm -L -n

IP
Virtual Server version 1.2.1 (size=4096)

Prot
LocalAddress:Port Scheduler Flags

->
RemoteAddress:Port          
Forward Weight ActiveConn InActConn

TCP 
192.168.1.200:80 rr persistent 50

-> 192.168.1.63:80             
Route   1     
0          0

打开主 LVS 的日志(/var/log/message),使其滚动从 LVS 中移除。答案都是提示的。

使用 ipvsadm
-ln 可以看到刚才关闭的那台机器的 IP不在列表中了。

当 keepalived 主从优先级一样时,当主恢复后,还是要回切资源的。第一次建立主从关系时,需要10s 左右的认证时间。

常见错误

1:编译报错

由提示可以看到,没有发现 gcc cc 编译工具,只需要安装即可。
解决方法:

#yum install gcc gcc-c++

2:编译完成还不支持

解决方法: 内核源码做软链接,查看是否有内核源码

#ls
/usr/src/kernels/        #yum install
kernel-devel ipvsadm

#ln -s
/usr/src/kernels/2.6.32-220.el6.x86_64/ /usr/src/linux         
//上面 ln 软链接时源地址根据系统版本的不同,目录名也不同

视频讲课:链接:https://pan.baidu.com/s/1o79mNEi 密码:请在评论处留下邮箱,统一发送

Keepalived安装配置的更多相关文章

  1. lvs keepalived 安装配置详解【转】

    lvs keepalived 安装配置详解 张映 发表于 2012-06-20 分类目录: 服务器相关 前段时间看了一篇文章,lvs做负载均衡根F5差不多,说实话不怎么相信,因为F5没玩过,也无法比较 ...

  2. keepalived安装配置实战心得(实现高可用保证网络服务不间断)

    keepalived安装配置实战心得(实现高可用保证网络服务不间断) 一.准备2台虚拟机     安装的系统是:centos-release-7-1.1503.el7.centos.2.8.x86_6 ...

  3. lvs keepalived 安装配置详解

    前段时间看了一篇文章,lvs做负载均衡根F5差不多,说实话不怎么相信,因为F5没玩过,也无法比较.F5相当的贵,真不是一般企业能负担的起的.负载均衡软件也用过不少,nginx,apache,hapro ...

  4. MYSQL + MHA +keepalive + VIP安装配置(三)--keepalived安装配置

    一.概述 keepalived介绍:Keepalived的作用是检测web服务器的状态,如果有一台web服务器死机,或工作出现故障,Keepalived将检测到,并将有故障的web 服务器从系统中剔除 ...

  5. keepalived安装配置(nginx)

    环境:centos 6.4 64bit 应用:nginx 目的:keepalived可以让两台服务器处于主备关系,如果主的挂了,备的取得VIP(或者互为主备等关系,文字游戏不纠结), 以实现服务器的高 ...

  6. keepalived 安装配置

    keepalived介绍 1. keepalived 是lvs 的扩展项目,因此它们之间具备良好的兼容性. 2. 通过对服务器池对象的健康检查,实现对失效机器/服务的故障隔离. 3. 负载均衡器之间的 ...

  7. linux下keepalived 安装配置

    keepalived是一个类似于layer3, 4 & 7交换机制的软件,也就是我们平时说的第3层.第4层和第7层交换.Keepalived的作用是检测web服务器的状态,如果有一台web服务 ...

  8. Keepalived安装配置入门

    准备两台虚拟机,IP如下: A:192.168.1.11 B:192.168.1.12 A为Master,B为BackUp 1.安装 yum install keepalived -y 2.配置 A服 ...

  9. keepalived安装与配置,组建高可用服务器

    一.准备环境 linux系统:CentOS7 keepalived版本:keepalived-1.3.5.tar.gz keepalived下载地址:http://www.keepalived.org ...

随机推荐

  1. python 过滤出某后缀名文件

    以从某文件夹过滤出py文件为例: 法1: import glob import os os.chdir(“./”) for file in glob.glob(“*.py”): print file ...

  2. MVC Actionlink 参数说明

    Html.ActionLink用于输出链接,以下是带参数的例子: @Html.ActionLink("编辑", "Edit", new {id= "1 ...

  3. Python自动化 【第十篇】:Python进阶-多进程/协程/事件驱动与Select\Poll\Epoll异步IO

    本节内容: 多进程 协程 事件驱动与Select\Poll\Epoll异步IO   1.  多进程 启动多个进程 进程中启进程 父进程与子进程 进程间通信 不同进程间内存是不共享的,要想实现两个进程间 ...

  4. XidianOJ 1177 Counting Stars

    题目描述 "But baby, I've been, I've been praying hard,     Said, no more counting dollars     We'll ...

  5. oracle 做算法 数据为空时,默认为0

    SELECT NVL('',0) FROM DUAL 获取当前日期: SELECT SYSDATE FROM DUAL 当前日期-某个日期差的天数 SELECT  TO_NUMBER(SYSDATE  ...

  6. 【转载】理解GL_TRIANGLE_STRIP等绘制三角形序列的三种方式

    GL_TRIANGLE_STRIP绘制三角形方式很多时候令人疑惑,在这里对其运作机理进行解释. 一般情况下有三种绘制一系列三角形的方式,分别是GL_TRIANGLES.GL_TRIANGLE_STRI ...

  7. 【转载】H264--1--编码原理以及I帧B帧P帧

    ---------------------- 前言 ----------------------- H264是新一代的编码标准,以高压缩高质量和支持多种网络的流媒体传输著称,在编码方面,我理解的他的理 ...

  8. Java系列笔记(6) - 并发(上)

    目录 1,基本概念 2,volatile 3,atom 4,ThreadLocal 5,CountDownLatch和CyclicBarrier 6,信号量 7,Condition 8,Exchang ...

  9. redis与memcached比较

    引用自:http://blog.csdn.net/e_wsq/article/details/23551799 最近需要用no-sql数据库来保存大量的数据,插入和查询都比较频繁,相对而言查询更加频繁 ...

  10. 对需要聚类的数据使用canopy做初步的计算

    K值聚类的时候,需要自己指定cluster的数目. 这个cluster数目一般是通过canopy算法进行预处理来确定的. canopy具体描述可以参考这里. 下面是 golang语言的一个实现(对经纬 ...