安装LVS安装LVS和配置LVS的工作比较繁杂
安装LVS安装LVS和配置LVS的工作比较繁杂,读者在配置的过程中需要非常细心和耐心。在本节我们将对其进行详细地介绍。主要包括如下几个核心步骤:
1.获取支持LVS的内核源代码
如果读者需要使用LVS,需要下载2.4.23以后版本的内核源代码。下载地址为http://www.kerner.org。目前主流的Linux内核已经支持LVS,只需要直接使用,不需要进行内核的下载和更新工作。
2.用户配置工具ipvsadm
该软件的下载地址为:http://www.linuxvirtualserver.org/software/ipvs.html。
3.调整内核配置选项
读者在内核配置时应该对下列必选项(用*号表示)进行检查,如果某些选项的设置不正确,将有可能影响LVS的正常工作和使用。在查看这些选项之前,用户需要使用make menuconfig命令,进入Networking options选项进行查看:
- Networking options --->
- <*> Packet socket
- <*> Netlink device emulation
- [*] TCP/IP networking
- [*] IP: advanced router
- [*] Network packet filtering (replaces ipchains)
- IP: Netfilter Configuration --->
- <*> Connection tracking (required for masq/NAT)
- <*> IP tables support (required for filtering/masq/NAT)
- <*> Full NAT
- <*> MASQUERADE target support
- IP: Virtual Server Configuration --->
- <*> virtual server support (EXPERIMENTAL)
- <M> IPVS connection table size (the Nth power of 2)--- IPVS scheduler
- <M> round-robin scheduling
- <M> weighted round-robin scheduling
- <M> least-connection scheduling
- <M> weighted least-connection scheduling
- <M> locality-based least-connection scheduling
- <M> locality-based least-connection with replication scheduling
- <M> destination hashing scheduling
- <M> shortest expected delay scheduling
- <M> never queue scheduling
复制代码
配置和使用LVS在安装好LVS之后,就可以配置和使用LVS了,在本节我们将以一个具体的例子来对其进行讲解。图2为一个采用LVS系统的实际网络拓扑图。它基于NAT机制,具体的配置如下:
一台对外服务的超级服务器:它部署了LVS,也称为balancer或者director,主要功能为负载均衡和任务调度,其外部IP地址为:210.77.132.8,内部IP地址为:172.168.10.8。外部用户可以通过路由器(IP地址为:210.77.132.1)访问它;
两台内部的服务器:它们为实际的工作机器,通过前述的服务器对其进行调度。一台为RS1,其内部IP地址为:172.168.10.9;另一台为RS2,其内部IP地址为:172.168.10.10。
<ignore_js_op>
图 采用LVS系统的实际网络拓扑图
根据上述的网路配置和拓扑,对LVS的配置如下:
1.配置LVS的超级服务器(称为load balancer或者director)
运行如下命令:
- //配置重定向#echo "1" >/proc/sys/net/ipv4/ip_forward#echo "0" >/proc/sys/net/ipv4/conf/all/send_redirects
- #echo "0" >/proc/sys/net/ipv4/conf/default/send_redirects
- #echo "0" >/proc/sys/net/ipv4/conf/eth0/send_redirects
- #echo "0" >/proc/sys/net/ipv4/conf/eth1/send_redirects
- //清除ipvsadm表
- #/sbin/ipvsadm -C
- //使用ipvsadm安装LVS服务
- #add http to VIP with rr scheduling
- #/sbin/ipvsadm -A -t 210.77.132.8:80 -s rr
- //增加第一台内部服务器RS1
- #forward http to realserver 172.168.10.9 using LVS-NAT (-m), with weight=1
- /sbin/ipvsadm -a -t 210.77.132.8:80 -r 172.168.10.9:80 -m -w 1
- 增加第二台内部服务器RS2
- #forward http to realserver 172.168.10.10 using LVS-NAT (-m), with weight=1
- /sbin/ipvsadm -a -t 210.77.132.8:80 -r 172.168.10.10:80 -m -w 1
复制代码
2.配置LVS中的内部服务器
在172.168.10.9(RS1)和172.168.10.9(RS2)上分别将其网关设置为172.168.10.8,并分别启动apache服务。在客户端使用浏览器多次访问:http://210.77.132.8,然后再210.77.132.8上运行ipvsadm命令,应该有类似下面的输出:
- IP Virtual Server version 1.0.12 (size=4096)
- Prot LocalAddress:Port Scheduler Flags
- -> RemoteAddress:Port Forward Weight ActiveConn InActConn
- TCP 210.77.132.8:http rr
- -> 172.168.10.9:http Masq 1 0 33
- -> 172.168.10.10:http Masq 1 0 33
复制代码
从上面的结果可以看出,我们配置的LVS服务器已经成功运行。
本文转自51cto.com.
安装LVS安装LVS和配置LVS的工作比较繁杂的更多相关文章
- 高并发场景 LVS 安装及高可用实现
1.1 负载均衡介绍 1.1.1 负载均衡的妙用 负载均衡(Load Balance)集群提供了一种廉价.有效.透明的方法,来扩展网络设备和服务器的负载.带宽.增加吞吐量.加强网络数据处理能力.提高网 ...
- LVS三种模式配置及优点缺点比较
目录: LVS三种模式配置 LVS 三种工作模式的优缺点比较 LVS三种模式配置 LVS三种(LVS-DR,LVS-NAT,LVS-TUN)模式的简要配置 LVS是什么: http://www.lin ...
- LVS三种模式配置及优点缺点比较 转
LVS三种模式配置及优点缺点比较 作者:gzh0222,发布于2012-11-12,来源:CSDN 目录: LVS三种模式配置 LVS 三种工作模式的优缺点比较 LVS三种模式配置 LVS三种 ...
- Centos 6.8 配置Lvs
LVS是Linux Virtual Server的简写,意即Linux虚拟服务器,是一个虚拟的服务器集群系统.本项目在1998年5月由章文嵩博士成立,是中国国内最早出现的自由软件项目之一. 宗旨: 使 ...
- Ubuntu下配置LVS【h】
以后服务器只用CentOS和Ubuntu.下午用redhat装个lvs装了一下午都没搞好,TNND的.果断用Ubuntu,不到两个小时就搞定了. 原文参见: http://kamengwang.blo ...
- LVS安装配置
LVS安装部署 一.LVS安装(CENTOS) 1.LVS模块ip_vs已经内置在LINUX内核中,一般情况下ip_vs并没有启动,可以通过lsmod | grep ip_vs查看,能够看到信息表示模 ...
- linux下负载均衡(LVS安装与配置)【转】
一.LVS的三种包转发方式 LVS提供了三种包转发方式:NAT(网络地址映射).IP Tunneling(IP隧道).Direct Routing(直接路由) 不同的转发模式决定了不 ...
- CentOS LVS安装配置
一般2.6.10以上内核版本都已经自带了ipvsadm,故不需要安装. Ipvs 1.25编译 ipvsadm-1.25编译不过 去掉netlink库的依赖:去掉libipvs/Makefile的CF ...
- centos7安装配置LVS+keepalived高可用
Centos7-Lvs+Keepalived架构 LVS+Keepalived 介绍 1 . LVS LVS 是一个开源的软件,可以实现 LINUX 平台下的简单负载均衡. LVS 是 Linux ...
随机推荐
- c - 根据首字母判断星期几
#include <stdio.h> #include <ctype.h> /* 请输入星期几的第一个字母来判断一下是星期几,如果第一个字母一样,则继续判断第二个字母. */ ...
- 四、C#方法和参数
方法是一种组合一系列语句以执行一个特定操作或计算一个特殊结果的方式. 它能够为构成程序的语句提供更好的结构和组织. 在面向对象的语言中,方法总是和类关联在一起的,我们用类将相关的方法分为一组. 方 ...
- Hive学习之二 《Hive的安装之自定义mysql数据库》
由于MySQL便于管理,在学习过程中,我选择MySQL. 一,配置元数据库. 1.安装MySQL,采用yum方式. ①yum install mysql-server,安装mysql服务端,安装服 ...
- c/c++内存机制(一)(转)
转自:http://www.cnblogs.com/ComputerG/archive/2012/02/01/2334898.html 一:C语言中的内存机制 在C语言中,内存主要分为如下5个存储区: ...
- LXPanel自定义添加应用程序到快速启动栏
LXPanel是Linux下LXDE项目的一个桌面面板软件.我一开始接触的时候,对于自己自定义的程序到快速启动栏绕了很多弯路,这里记录下,防止以后自己忘了.还有一点就是很多时候,panel下的应用程序 ...
- C++ Primer 5th 第11章 关联容器
练习11.1:描述map 和 vector 的不同. map是关联容器,vector是顺序容器,关联容器与值无关,vector则与值密切相关 练习11.2:分别给出最适合使用 list.vector. ...
- 如何根据Jquery实现两级联动
<script language="javascript" type="text/javascript" > $(function (){ ...
- eclipse中如何导入jar包
如图,首先右键点击项目,选择最下面的properties, 然后进去之后点击java build path,右边会出来4个选项卡,选择libraries, 这时候最右边会有多个选项,第一个add ja ...
- Yii框架AR对象数据转化为数组
demo函数作用:将AR对象数据转化为数组 局限:仅用于findAll的多维数组,find一维数组可以先转化为多维数组的一个元素在使用 function actionIndex() { $data = ...
- [Python笔记]第八篇:模块
本篇主要内容:python常用模块用法介绍 什么是模块 模块,用一大段代码实现了某个功能的代码集合. 类似于函数式编程和面向过程编程,函数式编程则完成一个功能,其他代码用来调用即可,提供了代码的重用性 ...