首页 > 代码库 > linux 下安装keepalived

linux 下安装keepalived

这个本来很简单,但是安装过程中出现很多错误,在这做一下备忘录

我的环境的redhat 5,keepalived刚开始下载的是1.2.5

1.2.5版本安装

 解压 

./configure (加不加内核路径都一样)

make && make install

发现报错,信息如下

In file included from libipvs.c:25:

libipvs.h:99: error: expected ‘)’ before ‘union’

libipvs.c:882: error: expected ‘)’ before ‘fwmark’

感觉是语法错误,但是确实不好找,

最后发现是编译问题,我的linux内核是2.6.18,而编译那个语法需要2.6.3以上 ,折磨了一下午,没办法,只能重新下载版本1.2.2 这个版本网上用的好像很多,继续安装

./configure -with-kernel-dir  这步发现必须要加内核路径,不然会报错

make && make install 继续安装,发现又报错了

usr/include/time.h:105: error: conflicting types for ‘timer_t’

/usr/src/kernels/2.6.18-128.el5-i686/include/linux/types.h:31: error: previous declaration of ‘timer_t’ was here

这个错误,网上很多解决方案,也是linux编译遗留问题,解决方法如下

# vim ./keepalived/libipvs-2.6/ip_vs.h

将#include <linux/types.h>移动到#include <sys/types.h>后面去。


这样终于安装成功了。

然后cp keepalived.conf /etc/keepalived/ 移动配置文件到/etc/keepalived 下,因为启动默认对到/etc下读取文件

也可以把启动项移动到 cp keepalived  /usr/sbin下 配个环境变量

linux 下安装keepalived