Keepalived安装

来源:互联网 发布:巨人网络策划笔试题 编辑:程序博客网 时间:2024/04/30 13:42

简介

Keepalived 是一种高性能的服务器高可用或热备解决方案,Keepalived可以用来防止服务器单点故障(单点故障是指一旦某一点出现故障就会导致整个系统架构的不可用)的发生,通过配合Nginx可以实现web前端服务的高可用。

安装

安装Keeplived依赖

安装 openssl
yum install openssl*

安装popt
yum install popt*

安装ipvsadm
yum isntall ipvsadm

安装libnl-dev
yum install libnl-dev*


安装Keepalived

1.cd /usr/src
2. tar -zxvf keepalived-1.1.15.tar.gz
3. cd keepalived-1.1.15
4. ln -s  /usr/src/kernels/2.6.18-92.el5-i686/ /usr/src/linux
5. ./configure --prefix=/usr/local/keepalived
6. make
7. make install
8. vi /etc/keepalived/keepalived.conf


配置Keepalived

先是主服务器:

global_defs{notification_email    #通知email,根据实际情况配置{admin@example.com}notification_email_from admin@example.comsmtp_server 127.0.0.1stmp_connect_timeout 30router_id node1         #节点名标识,主要用于通知中}vrrp_instance VI_NODE {  state MASTER          #配置为主服务器  interface eth0        #通讯网卡  virtual_router_id 100 #路由标识  priority 200          #优先级,0-254  advert_int 5          #通知间隔,实际部署时可以设置小一点,减少延时    authentication {    auth_type PASS    auth_pass 123456    #验证密码,用于通讯主机间验证  }  virtual_ipaddress {    192.168.1.206       #虚拟ip,可以定义多个  }}

接下是从服务器设置:
global_defs {  notification_email {    admin@example.com  }  notification_email_from admin@example.com  smtp_server 127.0.0.1  stmp_connect_timeout 30  router_id node2}vrrp_instance VI_NODE {  state BACKUP           #与主服务器对应  interface eth0         #从服务器的通信网卡  virtual_router_id 100  #路由标识,和主服务器相同  priority 100           #优先级,小于主服务器即可  advert_int 5           #这里是接受通知间隔,与主服务器要设置相同    authentication {   auth_type PASS    auth_pass 123456     #验证密码,与主服务器相同  }    virtual_ipaddress {    192.168.1.206        #虚拟IP,也要和主服务器相同  }}

上面的设置是最基础的设置,实现的功能是如果主服务器的Keepalived停止服务(一般情况下服务器宕机),则将虚拟IP切换至从服务器,主服务器恢复后从新切换回主服务器。


操作Keepalived

Keepalived的启动
/usr/local/keeepalived/sbin/keepalived -f /usr/local/keepalived/etc/keepalived/keepalived.conf

Keepalived的停止
killall -9 keepalived

查看是否建立VIP(虚拟IP)
ip add

查看进程是否开启
ps –aux


问题解决

1、KeepaLived无法和ipvs结合
1.1、现象
Keepalived version       : 1.1.15
Compiler                 : gcc
Compiler flags           : -g -O2
Extra Lib                : -lpopt -lssl -lcrypto 
Use IPVS Framework       : No
IPVS sync daemon support : Yes
Use VRRP Framework       : Yes
Use LinkWatch            : No
Use Debug flags          : No
1.2、原因
keepalived默认编译时是在/usr/src/linux下找内核源代码。
我的内核源代码都在:/usr/src/kernels/2.6.18-53.el5-x86_64/这个目录下。
1.3、解决
ln -s  /usr/src/kernels/2.6.18-92.el5-i686/ /usr/src/linux
2、openssl找不到问题
见上文步骤安装openssl