<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>IPCPU——网络之路 &#187; 负载均衡</title>
	<atom:link href="http://www.ipcpu.com/tag/%e8%b4%9f%e8%bd%bd%e5%9d%87%e8%a1%a1/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.ipcpu.com</link>
	<description></description>
	<lastBuildDate>Fri, 10 Feb 2012 15:05:04 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.1.2</generator>
		<item>
		<title>Linux学习笔记之LVS的DR方式</title>
		<link>http://www.ipcpu.com/2010/07/lvs-dr-basic/</link>
		<comments>http://www.ipcpu.com/2010/07/lvs-dr-basic/#comments</comments>
		<pubDate>Sat, 17 Jul 2010 11:00:44 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[DR]]></category>
		<category><![CDATA[LVS]]></category>
		<category><![CDATA[调度]]></category>
		<category><![CDATA[负载均衡]]></category>

		<guid isPermaLink="false">http://www.ipcpu.com/?p=671</guid>
		<description><![CDATA[DR最常用方式，拓扑如下： client   &#124;   &#124; Internet   &#124;   &#124; Router(GW)：192.168.0.1   &#124; LB：192.168.0.3   &#124; RS1:192.168.0.4 RS2:192.168.0.5 ============================ 调度器配置 vi  /tmp/lvs.sh #!/bin/bash vip=192.168.0.200 rs1=192.168.0.4 rs2=192.168.0.5 gw=192.168.0.1 #set virttual ip address /sbin/ifconfig eth0:0 $vip broadcast $vip netmask 255.255.255.255 up /sbin/route add -host $vip dev eth1:0 #clear ipvs tables /sbin/ipvsadm -C #set LVS  Server /sbin/ipvsadm [...]]]></description>
			<content:encoded><![CDATA[<p>DR最常用方式，拓扑如下：</p>
<p>client<br />
  |<br />
  |<br />
Internet<br />
  |<br />
  |<br />
Router(GW)：192.168.0.1<br />
  |<br />
LB：192.168.0.3<br />
  |<br />
RS1:192.168.0.4<br />
RS2:192.168.0.5<br />
============================</p>
<p>调度器配置</p>
<p>vi  /tmp/lvs.sh<br />
#!/bin/bash<br />
vip=192.168.0.200<br />
rs1=192.168.0.4<br />
rs2=192.168.0.5<br />
gw=192.168.0.1</p>
<p>#set virttual ip address<br />
/sbin/ifconfig eth0:0 $vip broadcast $vip netmask 255.255.255.255 up<br />
/sbin/route add -host $vip dev eth1:0<span id="more-671"></span></p>
<p>#clear ipvs tables<br />
/sbin/ipvsadm -C</p>
<p>#set LVS  Server<br />
/sbin/ipvsadm -A -t $vip:80 -s rr<br />
/sbin/ipvsadm -a -t $vip:80 -r $rs1:80 -g<br />
/sbin/ipvsadm -a -t $vip:80 -r $rs2:80 -g</p>
<p>#run lvs<br />
/sbin/ipvsadm<br />
===============<br />
RS配置<br />
把下面四句添加在/etc/sysctl.conf 文件最后：</p>
<p>net.ipv4.conf.lo.arp_ignore = 1<br />
net.ipv4.conf.lo.arp_announce = 2<br />
net.ipv4.conf.all.arp_ignore = 1<br />
net.ipv4.conf.all.arp_announce = 2</p>
<p>sysctl -p 刷新</p>
<p>#ifconfig lo:0 192.168.1.230 netmask 255.255.255.255 broadcast</p>
<p>192.168.1.230 up</p>
<p># route add -host 192.168.1.230 dev lo:0</p>
<p>把以上二句写 /etc/rc.local 最后，避免重启再输入。</p>
<p>参考资料：</p>
<p><a href="http://g.51cto.com/88/80231">http://g.51cto.com/88/80231</a><br />
<a href="http://xuchengji.blog.51cto.com/160472/326059">http://xuchengji.blog.51cto.com/160472/326059</a><br />
<a href="http://linux.net527.cn/Linuxfuwuqijiqun/Linuxfuwuqijiqungainian/2007.h">http://linux.net527.cn/Linuxfuwuqijiqun/Linuxfuwuqijiqungainian/2007.h</a></p>
<p>tml<br />
<a href="http://bbs.linuxtone.org/thread-1077-1-1.html">http://bbs.linuxtone.org/thread-1077-1-1.html</a><br />
使用脚本操作LVS注意事项</p>
<p>1.系统重启后，原有数据是否保留<br />
2.重启网卡后，原有数据是否保留<br />
3.RealServer是Windwos怎么办</p>
]]></content:encoded>
			<wfw:commentRss>http://www.ipcpu.com/2010/07/lvs-dr-basic/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Linux学习笔记之LVS二NAT方式</title>
		<link>http://www.ipcpu.com/2010/07/lvs-two-nat/</link>
		<comments>http://www.ipcpu.com/2010/07/lvs-two-nat/#comments</comments>
		<pubDate>Sat, 10 Jul 2010 12:20:13 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[LVS]]></category>
		<category><![CDATA[NAT]]></category>
		<category><![CDATA[学习笔记]]></category>
		<category><![CDATA[调度]]></category>
		<category><![CDATA[负载均衡]]></category>

		<guid isPermaLink="false">http://www.ipcpu.com/?p=648</guid>
		<description><![CDATA[LVS是Linux Virtual Server的简写，意即Linux虚拟服务器，是一个虚拟的服务 器集群系统。本项目在1998年5月由章文嵩博士成立，是中国国内最早出现的自 由软件项目之一。 章文嵩现在是淘宝基础核心软件研发负责人。 =========================== VS/NAT工作方式 这是最好理解的方式 从外部请求的数据包结构如下： SOURCE 202.100.1.2:3456 DEST 202.103.106.5:80 调度器将目的地址和端口进行改写： SOURCE 202.100.1.2:3456 DEST 172.16.0.3:8000 真是服务器返回数据经过调度器 SOURCE 172.16.0.3:8000 DEST 202.100.1.2:3456 调度器在此更改源地址和端口，再发出去 SOURCE 202.103.106.5:80 DEST 202.100.1.2:3456 =========================== 问题1：能否将80口指向RealServer的其他端口8080等？ 可以，官网有例子，测试也没问题。 问题2：RealServer的网管必须指向调度器吗？ 是的。如果指向其他，数据包能出去，但源地址和请求主机中的源地址对应不起 来，会被丢弃，无法通信。所以必须通过调度器进行改写源地址。 问题3：RealServer要上网的话，调度器要做NAT？ 必然，VS/NAT方式中，调度器充当的就是路由器的角色。 问题4：VS/NAT方式性能怎样? 由于进行地址改写，大量消耗资源，性能不好，一般不用。 问题5：NAT方式能不能把 流量抛到 其他网络上 （WAN），就像nginx的反向代理 ？ 既然我们说，调度器就是路由器，那只能去调度内网接口的数据，需要被调度的资源位于内网口以内。]]></description>
			<content:encoded><![CDATA[<p>LVS是Linux Virtual Server的简写，意即Linux虚拟服务器，是一个虚拟的服务</p>
<p>器集群系统。本项目在1998年5月由章文嵩博士成立，是中国国内最早出现的自</p>
<p>由软件项目之一。<br />
章文嵩现在是淘宝基础核心软件研发负责人。</p>
<p>===========================<br />
VS/NAT工作方式</p>
<p>这是最好理解的方式</p>
<p><a href="http://www.ipcpu.com/wp-content/uploads/2010/07/RunningExample.gif"><img class="aligncenter size-full wp-image-649" title="RunningExample" src="http://www.ipcpu.com/wp-content/uploads/2010/07/RunningExample.gif" alt="" width="389" height="332" /></a></p>
<p>从外部请求的数据包结构如下：</p>
<p>SOURCE 202.100.1.2:3456 <span style="color: #339966;">DEST 202.103.106.5:80</span></p>
<p>调度器将目的地址和端口进行改写：</p>
<p>SOURCE 202.100.1.2:3456 <span style="color: #339966;">DEST 172.16.0.3:8000</span></p>
<p>真是服务器返回数据经过调度器</p>
<p><span style="color: #339966;">SOURCE 172.16.0.3:8000</span> DEST 202.100.1.2:3456</p>
<p>调度器在此更改源地址和端口，再发出去</p>
<p><span style="color: #339966;">SOURCE 202.103.106.5:80</span> DEST 202.100.1.2:3456</p>
<p>===========================</p>
<p>问题1：能否将80口指向RealServer的其他端口8080等？<br />
可以，官网有例子，测试也没问题。</p>
<p>问题2：RealServer的网管必须指向调度器吗？<br />
是的。如果指向其他，数据包能出去，但源地址和请求主机中的源地址对应不起</p>
<p>来，会被丢弃，无法通信。所以必须通过调度器进行改写源地址。</p>
<p>问题3：RealServer要上网的话，调度器要做NAT？<br />
必然，VS/NAT方式中，调度器充当的就是路由器的角色。</p>
<p>问题4：VS/NAT方式性能怎样?<br />
由于进行地址改写，大量消耗资源，性能不好，一般不用。</p>
<p>问题5：NAT方式能不能把 流量抛到 其他网络上 （WAN），就像nginx的反向代理 ？<br />
既然我们说，调度器就是路由器，那只能去调度内网接口的数据，需要被调度的资源位于内网口以内。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.ipcpu.com/2010/07/lvs-two-nat/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Linux学习笔记之LVS一</title>
		<link>http://www.ipcpu.com/2010/06/lvs-one/</link>
		<comments>http://www.ipcpu.com/2010/06/lvs-one/#comments</comments>
		<pubDate>Wed, 09 Jun 2010 17:20:27 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[LVS]]></category>
		<category><![CDATA[流量]]></category>
		<category><![CDATA[负载]]></category>
		<category><![CDATA[负载均衡]]></category>

		<guid isPermaLink="false">http://www.ipcpu.com/?p=644</guid>
		<description><![CDATA[LVS是Linux Virtual Server的简写，意即Linux虚拟服务器，是一个虚拟的服务器集群系统。本项目在1998年5月由章文嵩博士成立，是中国国内最早出现的自由软件项目之一。 章文嵩现在是淘宝基础核心软件研发负责人。 =========================== ipvsadm常用命令 ipvsadm &#8211; Linux Virtual Server administration -A &#8211;add-service 在内核的虚拟服务器表中添加一条新的虚拟服务器记录。也就是增加一台新的虚拟服务器。 -E &#8211;edit-service 编辑内核虚拟服务器表中的一条虚拟服务器记录。 -D &#8211;delete-service 删除内核虚拟服务器表中的一条虚拟服务器记录。 -C &#8211;clear 清除内核虚拟服务器表中的所有记录。 -R &#8211;restore 恢复虚拟服务器规则 -S &#8211;save 保存虚拟服务器规则，输出为-R 选项可读的格式 -a &#8211;add-server 在一个虚拟服务器中增加一台新的真实服务器 -e &#8211;edit-server 编辑一条虚拟服务器记录中的某条真实服务器记录 -d &#8211;delete-server 删除一条虚拟服务器记录中的某条真实服务器记录 -L&#124;-l &#8211;list 显示内核虚拟服务器表 -Z &#8211;zero 虚拟服务表计数器清零（清空当前的连接数量等） &#8211;set tcp tcpfin udp 设置连接超时值 &#8211;start-daemon 启动同步守护进程。他后面可以是master 或backup，用来说明LVS Router [...]]]></description>
			<content:encoded><![CDATA[<p>LVS是Linux Virtual Server的简写，意即Linux虚拟服务器，是一个虚拟的服务器集群系统。本项目在1998年5月由章文嵩博士成立，是中国国内最早出现的自由软件项目之一。<br />
章文嵩现在是淘宝基础核心软件研发负责人。</p>
<p>===========================<br />
ipvsadm常用命令</p>
<p>ipvsadm &#8211; Linux Virtual Server administration</p>
<p>-A &#8211;add-service 在内核的虚拟服务器表中添加一条新的虚拟服务器记录。也就是增加一台新的虚拟服务器。<br />
-E &#8211;edit-service 编辑内核虚拟服务器表中的一条虚拟服务器记录。<br />
-D &#8211;delete-service 删除内核虚拟服务器表中的一条虚拟服务器记录。<br />
-C &#8211;clear 清除内核虚拟服务器表中的所有记录。<br />
-R &#8211;restore 恢复虚拟服务器规则<br />
-S &#8211;save 保存虚拟服务器规则，输出为-R 选项可读的格式<br />
-a &#8211;add-server 在一个虚拟服务器中增加一台新的真实服务器<br />
-e &#8211;edit-server 编辑一条虚拟服务器记录中的某条真实服务器记录<br />
-d &#8211;delete-server 删除一条虚拟服务器记录中的某条真实服务器记录<span id="more-644"></span></p>
<p>-L|-l &#8211;list 显示内核虚拟服务器表<br />
-Z &#8211;zero 虚拟服务表计数器清零（清空当前的连接数量等）<br />
&#8211;set tcp tcpfin udp 设置连接超时值<br />
&#8211;start-daemon 启动同步守护进程。他后面可以是master 或backup，用来说明LVS Router 是master 或是backup。<br />
在这个功能上也可以采用keepalived 的VRRP 功能。<br />
&#8211;stop-daemon 停止同步守护进程<br />
-h &#8211;help 显示帮助信息</p>
<p>-t &#8211;tcp-service service-address 说明虚拟服务器提供的是tcp 的服务<br />
 [vip:port] or [real-server-ip:port]<br />
-u &#8211;udp-service service-address 说明虚拟服务器提供的是udp 的服务<br />
 [vip:port] or [real-server-ip:port]</p>
<p>-f &#8211;fwmark-service fwmark 说明是经过iptables 标记过的服务类型。<br />
-s &#8211;scheduler scheduler 使用的调度算法</p>
<p>-p &#8211;persistent [timeout] 持久稳固的服务。这个选项的意思是来自同一个客</p>
<p>户的多次请求，将被同一台真实的服务器处理。timeout 的默认值为300 秒。<br />
-M &#8211;netmask netmask persistent granularity mask</p>
<p>-r &#8211;real-server server-address 真实的服务器[Real-Server:port]<br />
-g &#8211;gatewaying 指定LVS 的工作模式为直接路由模式（也是LVS 默认的模式）<br />
-i &#8211;ipip 指定LVS 的工作模式为隧道模式<br />
-m &#8211;masquerading 指定LVS 的工作模式为NAT 模式<br />
-w &#8211;weight weight 真实服务器的权值<br />
-c &#8211;connection 显示LVS 目前的连接 如：ipvsadm -L -c<br />
&#8211;timeout 显示tcp tcpfin udp 的timeout 值 如：ipvsadm -L &#8211;timeout<br />
&#8211;daemon 显示同步守护进程状态<br />
&#8211;stats 显示统计信息<br />
&#8211;rate 显示速率信息<br />
&#8211;sort 对虚拟服务器和真实服务器排序输出<br />
&#8211;numeric -n 输出IP 地址和端口的数字形式<br />
==================================<br />
常见用法举例：</p>
<p>       ipvsadm -A -t 207.175.44.110:80 -s rr<br />
      #新增一个服务<br />
       ipvsadm -a -t 207.175.44.110:80 -r 192.168.10.1:80 -m -w 1<br />
      #新增一台RealServer<br />
       ipvsadm -a -t 207.175.44.110:80 -r 192.168.10.2:80 -m -w 2<br />
      <br />
==================================<br />
参考资料：<br />
1.http://bbs.linuxtone.org/thread-2056-1-1.html<br />
2.http://www.linuxvirtualserver.org/</p>
]]></content:encoded>
			<wfw:commentRss>http://www.ipcpu.com/2010/06/lvs-one/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Ngnix反向代理和负载均衡体验</title>
		<link>http://www.ipcpu.com/2009/11/nginx-proxy/</link>
		<comments>http://www.ipcpu.com/2009/11/nginx-proxy/#comments</comments>
		<pubDate>Sat, 07 Nov 2009 06:47:18 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[WEB]]></category>
		<category><![CDATA[网络技术]]></category>
		<category><![CDATA[Nginx]]></category>
		<category><![CDATA[反向代理]]></category>
		<category><![CDATA[负载均衡]]></category>

		<guid isPermaLink="false">http://www.ipcpu.com/?p=221</guid>
		<description><![CDATA[Nginx不用介绍了吧，以前写过一篇文章http://netseagull.blog.51cto.com/476768/124019这方面资料现在应该有很多了。 今天来体验下Nginx的反向代理和负载均衡。 一、Nginx安装 我们用Windows版的把，官网有下载地址的，以前一般都用kevinworthington做的那个。现在网上大部分资料还在讲kevinworthington那个。官方网站下载地址。 下回来是个Zip文件，找个地方解压就行了（支持中文路径），双击那个nginx.exe就行了。至于使用方法，网上资料不多，不过官网有。 Nginx.exe的使用方法，Nginx Windows版使用方法： cd nginx【进入目录】 start nginx【启动】 控制方法 nginx -s [ stop &#124; quit &#124; reopen &#124; reload ] 例如：nginx -s stop 好了不多说了，下面看反向代理 二、反向代理的配置 配置文件在conf文件夹，这几个都是，nginx.conf是最主要的。 server {         listen       [::]80;    #监控IPv6         server_name  www.ncist.net.cn;   #这是域名             location / {             #root   html;             #index  index.html index.htm;             proxy_pass http://10.1.0.99;      #访问该域名反指到这个地址         } [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignnone size-full wp-image-225" title="LNXI_CLUSTER_r1_c1" src="http://www.ipcpu.com/wp-content/uploads/2009/11/LNXI_CLUSTER_r1_c1.jpg" alt="LNXI_CLUSTER_r1_c1" width="480" height="92" /></p>
<p>Nginx不用介绍了吧，以前写过一篇文章<a href="http://netseagull.blog.51cto.com/476768/124019">http://netseagull.blog.51cto.com/476768/124019</a>这方面资料现在应该有很多了。</p>
<p>今天来体验下Nginx的反向代理和负载均衡。</p>
<p><strong>一、Nginx安装</strong></p>
<p>我们用Windows版的把，官网有下载地址的，以前一般都用kevinworthington做的那个。现在网上大部分资料还在讲kevinworthington那个。官方网站下载地址。</p>
<p>下回来是个Zip文件，找个地方解压就行了（支持中文路径），双击那个nginx.exe就行了。至于使用方法，网上资料不多，不过官网有。<span id="more-221"></span></p>
<p><strong>Nginx.exe的使用方法</strong>，Nginx Windows版使用方法：<br />
cd nginx【进入目录】<br />
start nginx【启动】</p>
<p><strong>控制方法</strong></p>
<p>nginx -s [ stop | quit | reopen | reload ]</p>
<p>例如：nginx -s stop</p>
<p>好了不多说了，下面看反向代理</p>
<p><strong>二、反向代理的配置</strong></p>
<p>配置文件在conf文件夹，这几个都是，nginx.conf是最主要的。</p>
<p>server {<br />
        listen       [::]80;    #监控IPv6<br />
        server_name  <a href="http://www.ncist.net.cn">www.ncist.net.cn</a>;   #这是域名</p>
<p>            location / {<br />
            #root   html;<br />
            #index  index.html index.htm;<br />
            proxy_pass <a href="http://10.1.0.99">http://10.1.0.99</a>;      #访问该域名反指到这个地址<br />
        }</p>
<p>这就是最简单的使用了。</p>
<p>当然也可以使用基于<strong>文件名表达式</strong>的：</p>
<p>location ~ \.php$ {<br />
           proxy_pass   <a href="http://www.google.com">http://www.google.com</a>;<br />
        }<br />
#反问PHP文件，直接指到谷歌去</p>
<p><strong>三、负载均衡的方法：</strong></p>
<p>upstream www6_ncist_net_cn {       #构建一个集群<br />
    server <a href="http://www.sogou.com">www.sogou.com</a> weight=1; <br />
    server <a href="http://www.baidu.com">www.baidu.com</a> weight=2;       #集群中服务器的IP 端口 权重<br />
    server 192.168.0.1:8080 weight =4<br />
    }<br />
    server {<br />
    listen          [::]80;<br />
    server_name     www6.ncist.net.cn;     //虚拟主机域名<br />
     <br />
    location / {<br />
      proxy_pass      <a href="http://www6_ncist_net_cn">http://www6_ncist_net_cn</a>;<br />
    }                                  #访问该域名指到集群去<br />
    }</p>
<p>over~·</p>
]]></content:encoded>
			<wfw:commentRss>http://www.ipcpu.com/2009/11/nginx-proxy/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
	</channel>
</rss>

