詳細な構成のバランスをとるのCentOS 7ロードDR(ダイレクトルーティング)モード

:DR(直接ルーティング)は、最も使用される一の態様は、導入上のパターンが、基準ボーエンできる負荷分散モードの三の一つであるLVS詳細な負荷がクラスタのバランスをとります

次のようにDR動作モードの図です。

詳細な構成のバランスをとるのCentOS 7ロードDR(ダイレクトルーティング)モード

このモデルの原理は、上記のリンクのブログ記事にダウン書かれています。今DRモードクラスタのバランスをとるダイレクト・ロードを設定します。

環境は以下のとおりです。

詳細な構成のバランスをとるのCentOS 7ロードDR(ダイレクトルーティング)モード

この環境上では、問題に以下の点に対処する必要があります。

1、すべてのWebノードとスケジューラは、VIPに設定されている:クライアントアクセスVIP(クラスタの仮想IPアドレス)、

ディスパッチャは、Webノードに要求を転送した場合、その後、クライアントは、受信したクライアントノードに対応してウェブに直接移動

データパケットの後、送信元アドレスは、パケットが200.0.0.254を受けていない発見され、それがWebサーバの破棄に戻ります

パケットは、この問題を解決するためには、すべてのノード上の仮想インターフェイスと200.0.0.254のスケジューラウェブを構成する必要があります

このアドレス、およびルートを追加することによって、VIPアクセスデータは、通信障害を避けるために、局部的に制限します。

:ノードのWeb ARP応答に関する問題解決するために2、すべてのノード上の構成200.0.0.254ウェブとスケジューラを

このアドレスは、クライアントアクセス200.0.0.254このアドレス、ウェブのすべての後

ノードがアドレスを持っている、それはARP応答に行きますので、この方法では、クライアントは少しの原因となることがあります

スケジューラは、ウェブノードへの直接アクセスがあったが、この方法では、ディスパッチャは到達できない、自然に存在するのは何の意味もない、となります

効果をロード・バランシング、そのARP応答のウェブノードを閉じる必要があり、このアドレス200.0.0.254放送

場合は、単にウェブノードがブロードキャストに応答しない、ディスパッチャが応答することができます。

:ICMPリダイレクト・カーネルのスケジューラの最適化問題を解決するために3、 Linuxカーネルは、ICMPの最適化を持っています

これは、Linux、ディスパッチャへのクライアントの最初の訪問は、ディスパッチャが、この時点で、特定のウェブ・ノードに要求を転送するときに、

ICMP独自の最適化がありますし、Webクライアント・ノードが直接通信することができ、その後、データを送信します

パッケージ、ウェブノードへの直接のすべてのアクセス200.0.0.254のパケットができた後、クライアントを伝えるので、

すべてのアクセス要求は、ウェブのノードに直接ではなく、スケジューラによって、確かではないので、送信された後、

負荷分散効果を得ることができないために。ICMPリダイレクト応答をLinuxカーネルのパラメータをシャットダウンする必要があります。

次のようにコンフィギュレーション・プロセスは、次のとおりです。

まず、ロードバランサの設定:

1、仮想IPアドレス(VIP)を設定

[root@LVS network-scripts]# cp ifcfg-ens33 ifcfg-ens33:0               #在虚接口配置VIP
[root@LVS network-scripts]# vim ifcfg-ens33:0           #改动以下配置项
           .............
IPADDR=200.0.0.254
NETMASK=255.255.255.0           #必须写子网掩码信息
NAME=ens33:0              #注意改网卡名称
DEVICE=ens33:0
ONBOOT=yes
[root@LVS network-scripts]# systemctl restart network            #重启网卡使更改生效
[root@LVS network-scripts]# ifconfig        #查询相关IP是否配置正确
ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 200.0.0.1  netmask 255.255.255.0  broadcast 200.0.0.255
        inet6 fe80::2e1e:d068:9c41:c688  prefixlen 64  scopeid 0x20<link>
                           ...........................

ens33:0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 200.0.0.254  netmask 255.255.255.0  broadcast 200.0.0.255
        ether 00:0c:29:77:2c:03  txqueuelen 1000  (Ethernet)

パラメータを、対応する2調整/ PROC。

[root@LVS ~]# vim /etc/sysctl.conf             #写入下面三行
                 ................
net.ipv4.conf.all.send_redirects = 0
net.ipv4.conf.default.send_redirects = 0
net.ipv4.conf.ens33.send_redirects = 0
[root@LVS ~]# sysctl -p              #刷新一下配置
net.ipv4.conf.all.send_redirects = 0
net.ipv4.conf.default.send_redirects = 0
net.ipv4.conf.ens33.send_redirects = 0

3、負荷の割り当てポリシーを設定します。

[root@LVS ~]# modprobe ip_vs         #加载ip_vs模块
[root@LVS ~]# yum -y install ipvsadm           #安装ipvsadm工具
[root@LVS ~]# ipvsadm -C              #清除原有策略
[root@LVS ~]# ipvsadm -A -t 200.0.0.254:80 -s rr        #配置群集VIP及添加相关节点
[root@LVS ~]# ipvsadm -a -t 200.0.0.254:80 -r 200.0.0.2:80 -g -w 1
[root@LVS ~]# ipvsadm -a -t 200.0.0.254:80 -r 200.0.0.3:80 -g -w 1
[root@LVS ~]# ipvsadm-save                        #保存策略
[root@LVS ~]# ipvsadm-save > /etc/sysconfig/ipvsadm           #导出策略备份
[root@LVS ~]# ipvsadm -ln             #确认群集当前策略
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
  -> RemoteAddress:Port           Forward Weight ActiveConn InActConn
TCP  200.0.0.254:80 rr
  -> 200.0.0.2:80                 Route   1      0          0         
  -> 200.0.0.3:80                 Route   1      0          0         

第二に、コンフィギュレーション・ウェブ・サーバ・ノード:

WebサーバのソースノードアドレスVIPアドレスは、データパケットに応じてのみウェブを送信し、クライアントがアクセス要求(リスナーとスケジューラによって配布)をリッスンする必要はありません。したがって、仮想インターフェイスのLOを使用した:0 VIPパケットをアドレスをホストし、ルートレコード、局部的に制限されたVIPのアクセスを追加します。

1、仮想IPアドレス(VIP)を設定します。

[root@web1 ~]# cd /etc/sysconfig/network-scripts/
[root@web1 network-scripts]# cp ifcfg-lo ifcfg-lo:0
[root@web1 network-scripts]# vim ifcfg-lo:0      #编辑该文件,只保留以下四行,并配置VIP
DEVICE=lo:0
IPADDR=200.0.0.254
NETMASK=255.255.255.255               #注意:子网掩码必须是全为1。也就是4个255。
ONBOOT=yes
[root@LVS network-scripts]# systemctl restart network            #重启网卡使更改生效
[root@LVS network-scripts]# ifconfig        #查询VIP是否配置正确 
                ............................
lo:0: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 200.0.0.254  netmask 255.255.255.255
        loop  txqueuelen 1000  (Local Loopback)
[root@web1 ~]# route add -host 200.0.0.254 dev lo:0              #添加VIP本地访问路由记录
[root@web1 ~]# vim /etc/rc.local               #设置开机自动添加这条路由记录              
                ................................
/sbin/route add -host 200.0.0.254 dev lo:0

図2に示すように、調整/ PROC応答パラメータ:

[root@web1 ~]#                  #调整/proc响应参数,写入下面六行
                    ...................
net.ipv4.conf.all.arp_ignore = 1
net.ipv4.conf.all.arp_announce = 2
net.ipv4.conf.default.arp_ignore = 1
net.ipv4.conf.default.arp_announce = 2
net.ipv4.conf.lo.arp_ignore = 1
net.ipv4.conf.lo.arp_announce = 2
[root@web1 ~]# sysctl -p                #刷新一下
net.ipv4.conf.all.arp_ignore = 1
net.ipv4.conf.all.arp_announce = 2
net.ipv4.conf.default.arp_ignore = 1
net.ipv4.conf.default.arp_announce = 2
net.ipv4.conf.lo.arp_ignore = 1
net.ipv4.conf.lo.arp_announce = 2

3、インストールおよびサービスのhttpdを起動する(Apacheやnginxのは、需要の選択に応じて構築することができます):

[root@web1 ~]# yum -y install httpd             #安装http服务
[root@web1 ~]# echo 1111111111111 > /var/www/html/index.html          
#准备测试网页,等看到负载均衡的效果后,再挂载共享存储设备。

上記の3つの手順を繰り返し、追加のウェブサーバーノードを設定(:2222222222222222私はここになります別のWebページのファイルノードに変更します)。

三、クライアントアクセスVIPは、LVSクラスタをテストするには:

詳細な構成のバランスをとるのCentOS 7ロードDR(ダイレクトルーティング)モード

詳細な構成のバランスをとるのCentOS 7ロードDR(ダイレクトルーティング)モード

同じページにアクセスする場合は、設定上の排他エラーの場合には、複数のWebページを開く、または更新するには少し長く待って、接続を維持する時間であるかもしれないので、とても時間がかかりますことができます。

第四に、NFS共有ストレージを設定します。

:クライアントの設定手順に同じページファイルを提供することができ、すべてのWebホストは、すでにこの記事の最後に書かれているように、クラスタの効果をテストした後、あなたは、共有ストレージを導入する必要がNAT(アドレス変換)モードに基づいてCentOSに7詳細に負荷分散構成

おすすめ

転載: blog.51cto.com/14154700/2415944