linux c 服务器 集群,Linux下群集服务之LB集群-lvs-nat模式

O:\RHCA\群集_Cluster\Linux下群集服务之LB群集-lvs-nat模式.docx

Linux下群集服务之lvs在企业网络中的应用案例

案例应用拓扑图:

31a430bf60968c2fb227ceb9508137b1.png

案例应用实现详细步骤如下:

1.Client-pc客户端配置

a8f8d66f4ce3675b0dda54603c9d7936.png

0b3e23cbffd4b2c457811eeefe475d7b.png

2. Director服务器配置

2.1  Director服务器ip地址配置

[root@junjie ~]# vim /etc/sysconfig/network-scripts/ifcfg-eth0

DEVICE=eth0

BOOTPROTO=none

ONBOOT=yes

NETMASK=255.255.255.0

IPADDR=10.106.6.254

GATEWAY=10.106.6.1

[root@junjie ~]# vim /etc/sysconfig/network-scripts/ifcfg-eth1

DEVICE=eth1

BOOTPROTO=none

ONBOOT=yes

NETMASK=255.255.255.0

IPADDR=192.168.1.1

[root@junjie ~]# service network restart

Shutting down interface eth0:                              [  OK  ]

Shutting down interface eth1:                              [  OK  ]

Shutting down loopback interface:                          [  OK  ]

Bringing up loopback interface:                            [  OK  ]

Bringing up interface eth0:                                [  OK  ]

Bringing up interface eth1:                                [  OK  ]

[root@junjie ~]# ifconfig eth0

eth0      Link encap:Ethernet  HWaddr 00:0C:29:66:E1:DA

inet addr:10.106.6.254  Bcast:10.106.6.255  Mask:255.255.255.0

[root@junjie ~]# ifconfig eth1

eth1      Link encap:Ethernet  HWaddr 00:0C:29:66:E1:E4

inet addr:192.168.1.1  Bcast:192.168.1.255  Mask:255.255.255.0

[root@junjie ~]# hostname director.junjie.com  #注销重新登录

2.2开启director数据包转发能力

[root@director ~]# vim /etc/sysctl.conf

7 net.ipv4.ip_forward = 1

[root@director ~]# sysctl -p

net.ipv4.ip_forward = 1

2.3配置本地yum服务器:

[root@director ~]# vim /etc/yum.repos.d/server.repo

[rhel-server]

name=Red Hat Enterprise Linux server

baseurl=file:///mnt/cdrom/Server/

enabled=1

gpgcheck=1

gpgkey=file:///mnt/cdrom/RPM-GPG-KEY-redhat-release

[rhel-cluster]

name=Red Hat Enterprise Linux cluster

baseurl=file:///mnt/cdrom/Cluster/

enabled=1

gpgcheck=1

gpgkey=file:///mnt/cdrom/RPM-GPG-KEY-redhat-release

[root@director ~]#mkdir /mnt/cdrom

[root@director ~]# mount /dev/cdrom /mnt/cdrom/

mount: block device /dev/cdrom is write-protected, mounting read-only

[root@director ~]#yum list all

2.4安装配置dircetor服务器:

[root@director ~]# yum install -y ipvsadm

[root@director ~]# ipvsadm -ln

IP Virtual Server version 1.2.1 (size=4096)

Prot LocalAddress:Port Scheduler Flags

-> RemoteAddress:Port           Forward Weight ActiveConn InActConn

[root@director ~]# ipvsadm -A -t 10.106.6.254:80 -s wrr

[root@director ~]# ipvsadm -a -t 10.106.6.254:80 -r 192.168.1.2 -m -w 1

[root@director ~]# ipvsadm -a -t 10.106.6.254:80 -r 192.168.1.3 -m -w 2

[root@director ~]# ipvsadm -ln

IP Virtual Server version 1.2.1 (size=4096)

Prot LocalAddress:Port Scheduler Flags

-> RemoteAddress:Port           Forward Weight ActiveConn InActConn

TCP  10.106.6.254:80 wrr

-> 192.168.1.3:80               Masq    2      0          0

-> 192.168.1.2:80               Masq    1      0          0

f04bc38e40b05bee32f060f6c1d68b32.png

[root@director ~]# service ipvsadm save

Saving IPVS table to /etc/sysconfig/ipvsadm:               [  OK  ]

[root@director ~]# service ipvsadm start

Clearing the current IPVS table:                           [  OK  ]

Applying IPVS configuration:                               [  OK  ]

3.配置real-server-1的web服务器:

3.1 ip地址配置

[root@junjie ~]# hostname r1.junjie.com

注销重新登录

[root@r1 ~]# vim /etc/sysconfig/network-scripts/ifcfg-eth0

DEVICE=eth0

BOOTPROTO=none

ONBOOT=yes

HWADDR=00:0c:29:1b:f1:ba

NETMASK=255.255.255.0

IPADDR=192.168.1.2

GATEWAY=192.168.1.1

[root@r1 ~]# service network restart

Shutting down interface eth0:                              [  OK  ]

Shutting down loopback interface:                          [  OK  ]

Bringing up loopback interface:                            [  OK  ]

Bringing up interface eth0:                                [  OK  ]

3.2配置本地yum服务器:

[root@r1 ~]# vim /etc/yum.repos.d/server.repo

[rhel-server]

name=Red Hat Enterprise Linux server

baseurl=file:///mnt/cdrom/Server/

enabled=1

gpgcheck=1

gpgkey=file:///mnt/cdrom/RPM-GPG-KEY-redhat-release

[root@r1 ~]#mkdir /mnt/cdrom

[root@r1 ~]# mount /dev/cdrom /mnt/cdrom/

mount: block device /dev/cdrom is write-protected, mounting read-only

[root@r1 ~]#yum list all

3.3  Real-server-1的Web服务器:

[root@r1 ~]# rpm -ivh /mnt/cdrom/Server/httpd-2.2.3-31.el5.i386.rpm

warning: /mnt/cdrom/Server/httpd-2.2.3-31.el5.i386.rpm: Header V3 DSA signature: NOKEY, key ID 37017186

Preparing...   #################################### [100%]

1:httpd      ########################################### [100%]

[root@r1 ~]#echo "web1" > /var/www/html/index.html

[root@r1 ~]# service httpd start

Starting httpd: httpd: apr_sockaddr_info_get() failed for r1.junjie.com

httpd: Could not reliably determine the server's fully qualified domain name, using 127.0.0.1 for ServerName

[  OK  ]

3.4客户端访问real-server-1的web服务:(使用vmnet1)

05d0a084b0ade3efb1d679d14d91df3b.png

4.配置real-server2的web服务器:

4.1 ip地址配置

[root@junjie ~]# hostname r2.junjie.com

注销重新登录

[root@r2 ~]# vim /etc/sysconfig/network-scripts/ifcfg-eth0

DEVICE=eth0

BOOTPROTO=none

ONBOOT=yes

HWADDR=00:0c:29:1b:f1:ba

NETMASK=255.255.255.0

IPADDR=192.168.1.3

GATEWAY=192.168.1.1

[root@r2 ~]# service network restart

Shutting down interface eth0:                              [  OK  ]

Shutting down loopback interface:                          [  OK  ]

Bringing up loopback interface:                            [  OK  ]

Bringing up interface eth0:                                [  OK  ]

4.2配置本地yum服务器:

[root@r2 ~]# vim /etc/yum.repos.d/server.repo

[rhel-server]

name=Red Hat Enterprise Linux server

baseurl=file:///mnt/cdrom/Server/

enabled=1

gpgcheck=1

gpgkey=file:///mnt/cdrom/RPM-GPG-KEY-redhat-release

[root@r2 ~]#mkdir /mnt/cdrom

[root@r2 ~]# mount /dev/cdrom /mnt/cdrom/

mount: block device /dev/cdrom is write-protected, mounting read-only

[root@r2 ~]#yum list all

4.3  Real-server-2的Web服务器:

[root@r2 ~]# rpm -ivh /mnt/cdrom/Server/httpd-2.2.3-31.el5.i386.rpm

warning: /mnt/cdrom/Server/httpd-2.2.3-31.el5.i386.rpm: Header V3 DSA signature: NOKEY, key ID 37017186

Preparing...   #################################### [100%]

1:httpd      ########################################### [100%]

[root@r2 ~]#echo "web2" > /var/www/html/index.html

[root@r2 ~]# service httpd start

Starting httpd: httpd: apr_sockaddr_info_get() failed for r2.junjie.vom

httpd: Could not reliably determine the server's fully qualified domain name, using 127.0.0.1 for ServerName

[  OK  ]

4.4客户端访问real-server-2的web服务:(使用vmnet1)

e301f65975c2a8a6a566dd7759c5fdcf.png

5.客户端测试:wrr

5.1客户端访问director的群集服务服务:(网卡使用桥接模式)http://10.106.6.254

070905967c5f213b014712ec0eabf585.png

5.2客户端不断刷新,发现出现2次web2,一次web1界面,说明按权重轮询

566944185da289e5f723b80f3c4acd58.png

5.3在director上查看信息如下:轮询调度比几乎为2:1

[root@director ~]# ipvsadm -ln

IP Virtual Server version 1.2.1 (size=4096)

Prot LocalAddress:Port Scheduler Flags

-> RemoteAddress:Port           Forward Weight ActiveConn InActConn

TCP  10.106.6.254:80 wrr

-> 192.168.1.2:80               Masq    1      0          12

-> 192.168.1.3:80               Masq    2      0          24

5.4客户端测试-2:rr

[root@director ~]# ipvsadm –C          #首先清空以前配置

[root@director ~]# ipvsadm -ln

IP Virtual Server version 1.2.1 (size=4096)

Prot LocalAddress:Port Scheduler Flags

-> RemoteAddress:Port           Forward Weight ActiveConn InActConn

[root@director ~]#  ipvsadm -A -t 10.106.6.254:80 -s rr

[root@director ~]# ipvsadm -a -t 10.106.6.254:80 -r 192.168.1.2 -m

[root@director ~]# ipvsadm -a -t 10.106.6.254:80 -r 192.168.1.3 –m

[root@director ~]# ipvsadm -ln

IP Virtual Server version 1.2.1 (size=4096)

Prot LocalAddress:Port Scheduler Flags

-> RemoteAddress:Port           Forward Weight ActiveConn InActConn

TCP  10.106.6.254:80 rr

-> 192.168.1.3:80               Masq    1      0          0

-> 192.168.1.2:80               Masq    1      0          0

[root@director ~]# service ipvsadm save

Saving IPVS table to /etc/sysconfig/ipvsadm:               [  OK  ]

[root@director ~]# service ipvsadm restart

Clearing the current IPVS table:                           [  OK  ]

Applying IPVS configuration:                               [  OK  ]

客户端访问director的群集服务服务:(网卡使用桥接模式)http://10.106.6.254

c22c9c4817d3ed48b5c6694ac3c3f816.png

客户端不断刷新,发现web2和web1交替出现,比率为1:1,说明依次轮询rr

e235db218aa4fd9d326dd202883d5e42.png

在director上查看信息如下:轮询调度比几乎为1:1;

说明lvs调度方法是用的是RR模式

[root@director ~]# ipvsadm -ln

IP Virtual Server version 1.2.1 (size=4096)

Prot LocalAddress:Port Scheduler Flags

-> RemoteAddress:Port           Forward Weight ActiveConn InActConn

TCP  10.106.6.254:80 rr

-> 192.168.1.2:80               Masq    1      0          15

-> 192.168.1.3:80               Masq    1      0          15

《完》

关于Linux下集群服务简介和lvs的详解请参看我的博客:

--xjzhujunjie

--2012/05/03

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值