LVSfullnat安装-创新互联
阿里巴巴开源LVS fullnat (内核要求2.6.32)
创新互联长期为上千多家客户提供的网站建设服务,团队从业经验10年,关注不同地域、不同群体,并针对不同对象提供差异化的产品和服务;打造开放共赢平台,与合作伙伴共同营造健康的互联网生态环境。为简阳企业提供专业的网站建设、成都网站设计,简阳网站改版等技术服务。拥有10余年丰富建站经验和众多成功案例,为您定制开发。1、下载 fullnat LVS源码
wget https://github.com/alibaba/LVS/tree/lvs_v2 #版本2,建议使用这个版本
wget https://github.com/alibaba/LVS/archive/master.zip
unzip aster.zip; #解压下载的源码,主要有以下文件目录,其中 kernel目录是内核源码,tools里有ipvsadm 、keepalived、quagga(可以使用Quagga将linux机器打造成一台功能完备的路由器)、rpm
AUTHORS CHANGES docs kernel README.md tools
2、内核编译&安装
cd /usr/local/src/LVS-lvs_v2/kernel
请先安装好 perl perl-devel popt popt-devel libnl libnl-devel libssl libssl-devel openssl openssl-devel popt-static yum -y install ncurses ncurses-devel
去 掉 udev,udev的编译要求比较严格,容易在启动时报udev: missing sysfs features; please update the kernel or disable the kernel's CONFIG_SYSFS_DEPRECATED option;出现这个错问题也不大
vi .config
CONFIG_SYSFS_DEPRECATED=n
CONFIG_SYSFS_DEPRECATED_V2=n
mkdir -p /usr/src/kernels/2.6.32
make O=/usr/src/kernels/2.6.32 menuconfig; #选择模块需要编译的,exit退出,选择 YES保存
make mrproper
make O=/usr/src/kernels/2.6.32
make O=/usr/src/kernels/2.6.32 modules_install install
make时遇错
/bin/sh: perl: command not found
make[2]: *** [scripts/mod/empty.o] Error 127
make[1]: *** [scripts/mod] Error 2
make: *** [scripts] Error 2
解决:yum -y perl perl-devel
make install遇错
WARNING: Couldn't open directory /lib/modules/2.6.32: No such file or directory
解决:ln -s /lib/modules/`uname -r` /lib/modules/2.6.32
问题:make install时报
sh /usr/local/src/LVS-lvs_v2/kernel/arch/x86/boot/install.sh 2.6.32 arch/x86/boot/bzImage \
System.map "/boot"
ERROR: modinfo: could not find module sd_mod
ERROR: modinfo: could not find module crc_t10dif
解答:这是因为现在运行的kernel有这些模块,而新编译的内核没有这些模块。如果不需要可直接忽视,如果需要编译到新的内核中,请修改 .config的相关参数为=m
使用新编译的内核vi /boot/grub/grub.conf 修改
default=0
reboot 重启系统,uname -r查看到的版本应该是2.6.32
3、安装keepalived
要求先安装好 openssl openssl-devel popt-static
cd /usr/local/src/master/tools/keepalived/
./configure --prefix=/usr/local/keepalived --with-kernel-dir=/usr/local/src/LVS-lvs_v2/kernel;
make;
最终结果:
Keepalived configuration
------------------------
Keepalived version : 1.2.2
Compiler : gcc
Compiler flags : -g -O2
Extra Lib : -lpopt -lssl -lcrypto -lnl
Use IPVS Framework : Yes
IPVS sync daemon support : Yes
IPVS use libnl : Yes
Use VRRP Framework : Yes
Use Debug flags : No
make install;
默认路径: /usr/local
配置文件: /usr/local/etc/keepalived/keepalived.conf
自动启动脚本模板: /usr/local/etc/rc.d/init.d/keepalived
复制安装目录下的 /usr/local/keepalived/etc/rc.d/init.d/keepalived 复制到 /etc/init.d/
把/etc/init.d/keepalived 文件中
. /etc/sysconfig/keepalived 改为
. /usr/local/keepalived/etc/sysconfig/keepalived
keepalived启动时报 Starting keepalived: /bin/bash: keepalived: command not found
解决方法: ln -s prefix/sbin/keepalived /usr/sbin/
4、安装ipvsadm
依赖 libnl libnl-devel libssl-devel libssl
cd /usr/local/src/LVS-lvs_v2/tools/ipvsadm/
make;
make install;
make遇错
gcc -Wall -Wunused -Wstrict-prototypes -g -o ipvsadm ipvsadm.o config_stream.o dynamic_array.o ../keepalived/keepalived/libipvs-2.6/libipvs.a -lpopt -lnl
/usr/bin/ld: cannot find -lnl
collect2: ld returned 1 exit status
make: *** [ipvsadm] Error 1
解决:yum -y install libnl libnl-devel libssl-devel libssl
5、安装quagga
cd /usr/local/src/LVS-lvs_v2/tools/quagga
./configure --prefix=/usr/local/quagga
make;
make install;
接下来的配置请参照 LVS操作手册
查看IPVS详情
查看 /proc/net目录下的
ip_vs ip_vs_app ip_vs_conn ip_vs_conn_sync ip_vs_ext_stats ip_vs_stats
另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。
本文题目:LVSfullnat安装-创新互联
文章起源:http://hbruida.cn/article/ceogsc.html