服务器 频道

负载均衡实战之一:lvs 核心ipvs

    vs 核心ipvs

  Ipvs(IP Virtual Server)是整个负载均衡的基础,如果没有这个基础,故障隔离与失败切换就毫无意义了。在大部分linux发行版中,ipvs被默认安装,而以本书前面介绍的方法定制安装系统,则ipvs没有被默认安装。

  除大部分linux发行版支持ipvs外,FreeBSD也可以支持LVS,只不过实现起来要麻烦一些。

  (一)安装ipvs

  Ipvs具体实现是由ipvsadm这个程序来完成,因此判断一个系统是否具备ipvs功能,只需要察看ipvsadm 程序是否被安装。察看ipvsadm程序最简单的办法就是在任意路径执行命令ipvsadm。表1为安装ipvsadm及未安装ipvsadm的输出对比。

 

执行 ipvsadm 后的输出

未安装ipvsadm

-bash: ipvsadm: command not foun

安装ipvsadm

IP Virtual Server version 1.2.1 (size=4096)

Prot LocalAddress:Port Scheduler Flags

  -> RemoteAddress:Port        Forward Weight ActiveConn InActConn

  表1 ipvsadm输出对比(样例来源centos 5.2)

  ● Centos5.2安装ipvsadm( 假定当前目录为/root)

  1、 从官方网站下载ipvsadm,目前最新的版本为ipvsadm-1.25.tar.gz ,其发布时间是2008年11月5日。Wget http://www.linuxvirtualserver.org/software/kernel-2.6/ipvsadm-1.24.tar.gz 取得该版本[1]。

  2、 创建一个连接文件,其命令为:ln -sv /usr/src/kernels/2.6.18-92.el5PAE-i686 /usr/src/linux .注意一定要与当前的运行的内核相一致,因为/usr/src/kernels目录下可多个目录。如果不创建这个连接文件,在编译时会出错,从而不能继续进行安装。

  3、 解包。 tar zxvf ipvsadm-1.24

  4、 编译并安装。 cd ipvsadm-1.24; make;make install  可执行文件被安装到/sbin/ipvsadm.

  ● 检验ipvsadm是否被正确安装

  1、 执行ipvsadm,看是否有表6-1第2栏的输出。

  2、 检查当前加载的内核模块,看是否存在ip_vs模块。

  [root@hd-4 ipvsadm-1.24]# lsmod|grep ip_vs

  ip_vs                  77569  0

  注1、只有执行ipvsadm以后,才会在内核加载ip_vs模块。

  注2、不能以查进程的方式判断ipvs是否运行。

  注[1]:如果下载最新的ipvsadm-1.25.tar.gz这个版本,在创建连接文件/usr/src/linux后,执行编译时,可能需要修改/boot/grub/grub.conf启动内核名称。一旦当前运行内核与连接文件所代表的内核名不一致时,将出现找不到*.h这样的错误,从而导致安装不能正常进行。

3
相关文章