パターンのLVS事業:DRモード

.LVSの基本的な考え方

1.定義

  • LVSはLinuxカーネルの中にカプセル化されたLinux仮想サーバー、つまりLinux仮想サーバー、の略です。LVS自体は、ロードバランサでリクエストを処理するためには受け付けておりませんが、要求は、バックエンドサーバー、実際のRealServerの上に置くに転送されているので理由は、仮想サーバーです。
  • LVSは、(トランスポート層のTCP / UDP)、7(アプリケーション層)負荷分散ツールが、一般的にその4つの負荷分散IPVSを使用するパブリック4であるコンテンツ配信負荷ツールktcpvsの7(カーネルのTCPながら、仮想サーバーは)多くの人は使用しないで、非常に完璧ではありません。
  • IPVSカーネルはフレームに統合、ツールはツールは、カーネルのIPVSを管理するためのルールを定義することができ、プログラムのipvsadmのユーザー・スペースで管理することができます。iptablesのと同じnetfilterの間の関係が好きです。

2、LVS-IPVSいくつかの関連IP

  • VIP:仮想IP:外部ネットワークカードがサーバーLVSのIPアドレスにパケットを受信します

  • DIP:ディレクターのIP:RealServerのLVSサーバ上のLAN IPアドレスにパケットを転送

  • RIP:RealServerの(略しRS)取締役は、IP、IPサーバが提供するサービスを転送するパケットを受信します。

  • CIP:クライアントのIP
    ここに画像を挿入説明
    3、LVSモード(DR)
    の基本的な考え方モード1.DR

  • DR(直接ルーティング)モード、ダイレクトルーティングモード

  • データパケットのスケジューラ処理は、宛先MACアドレスは、リンク層の負荷分散にデータフレームを書き換えています。

  • DRは、宛先MACアドレス要求パケットを書き換えることにより、実サーバに要求を送信し、実サーバが直接ユーザに戻って応答します。

  • 通信は、データパケットを転送するMACアドレスを使用するように、スケジューラは、実サーバと同一の物理ネットワークに接続されたネットワークカードの両方を必要とします。

2.DRモード動作

  • (1)データフレームの宛先MACアドレスを書き換えるディレクター、ディレクターを受信した後、クライアントに送信されるRSの後端のMACアドレスは、ロードバランシングアルゴリズムに応じて、実際にLANを介して送信されるRS(にデータパケットを転送しますが、唯一のRS MACアドレスは破棄しません)
  • (2)RSがパケットを受信した後、VIP、VIPおよびRS自体について見出さパケットの宛先IPアドレスは、独自のインタフェースに配置されているので、RSは、パケットを受信し、処理します。
  • 処理が完了した後3)、応答してクライアントに直接応答メッセージをRS。このとき、送信先IP CIPとしてIPパケットの送信元VIP、など。

ここに画像を挿入説明モードの基本的な性質と要件3.DR

  • DIPとRIPのRealServerのディレクターは、同じネットワークセグメント、通信に使用するMACアドレスでなければなりません。
  • RealServerのVIPアドレスは、ディレクターによって転送されたデータパケットを受信するための、および応答パケットの送信元IPとして、設定する必要があります。
  • VIP-> CIPクライアントへの送信元と送信先IPパケットにRealServerの応答
  • ディレクターは唯一の着信要求、要求完了応答のRealServerを処理します。

IV。DRアナログモード

実験環境:

ホストコンピューター サービス
172.25.254.1 スケジューラLVS
172.25.254.2 RealServerの
172.25.254.3 RealServerの

スケジューラは、DS設定されている
負荷分散スケジューリングポリシーを設定し、管理ツールLVS 1インストール

  #安装lvs管理工具
   [root@toto1 ~]# yum install ipvsadm -y 
   # 使用管理工具添加策略 
   [root@toto1 ~]# ipvsadm -A -t 172.25.254.100:80 -s rr # 添加轮询调度策略          
   [root@toto1 ~]# ipvsadm -a -t 172.25.254.100:80 -r 172.25.254.2:80 -g 
   [root@toto1 ~]# ipvsadm -a -t 172.25.254.100:80 -r 172.25.254.3:80 -g
    # 添加两个RIP # 查看设置好的策略
     [root@toto1 ~]# ipvsadm 
     IP Virtual Server version 1.2.1 (size=4096) 
     Prot LocalAddress:Port Scheduler Flags
       -> RemoteAddress:Port              Forward Weight ActiveConn InActConn 
       TCP 172.25.47.100:http rr 
       -> 172.25.254.2:http Route 1 0 0
        -> 172.25.254.3:http Route 1 0 0 

2 VIPカードのeth0に追加
IP addrは一時的にIPを追加する172.25.254.100/24のdevのeth0の#1のeth0 NICを追加

  [root@toto1 ~]# ip addr add 172.25.254.100/24 dev eth0 # 添加vip 
  [root@toto1 ~]# ip addr show eth0 # 查看网卡信息 
  2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc 
  pfifo_fast state UP qlen 1000 
        link/ether 52:54:00:9e:0d:c8 brd ff:ff:ff:ff:ff:ff
         inet 172.25.254.1/24 brd   172.25.47.255 scope global eth0 
         valid_lft forever preferred_lft forever
         inet 172.25.254.100/24 scope global secondary eth0 
         valid_lft forever preferred_lft forever 
         inet6 fe80::5054:ff:fe9e:dc8/64 scope link 
         valid_lft forever preferred_lft forever

RS構成は、(すべてのサーバが同じ設定)
ページにアクセスするのhttpd起動時の設定をインストール、1
注意:検証するためにどこ負荷分散効果、実際のバックエンドサーバ設定異なるアクセス内容、異なるバックエンドサーバから明確にマークされたコンテンツ。
図2に示すように、VIPは、各物理NIC(toto1、toto2、TOTO3)に添加しました

一時的にIPを追加する172.25.254.100/24のdevのeth0の#1のeth0 NICをIP addrに追加

3、DSに取り組むための設定arptable戦略は、むしろVIPのRSの要求よりも、すべてのユーザーに送信されます

   yum install arptables -y # 安装管理工具
    arptables -A INPUT -d 172.25.254.100 -j DROP # 设置不回应对自己VIP的请求
    arptables -A OUTPUT -s 172.25.254.100 -j mangle --mangle-ip-s 172.25.254.2 ##设置将发送出去的数据包的源ip修改成VIP

すべての実サーバのIPが彼らの実際の状況に応じて設定します。
クライアントのテスト:

  [root@foundation47 yum]# curl 172.25.254.100
   toto2 
  [root@foundation47 yum]# curl 172.25.254.100
  toto3
  [root@foundation47 yum]# curl 172.25.254.100 
  toto2 
  [root@foundation47 yum]# curl 172.25.254.100 
  toto3
  [root@foundation47 yum]# curl 172.25.254.100 
  toto2
  [root@foundation47 yum]# curl 172.25.254.100 
  toto3
  [root@foundation47 yum]# curl 172.25.254.100 
  toto2

#負荷分散スケジューラ

  [root@toto1 ~]# ipvsadm
   IP Virtual Server version 1.2.1 (size=4096) 
   Prot LocalAddress:Port Scheduler Flags
    -> RemoteAddress:Port Forward Weight ActiveConn InActConn
   TCP toto1:http rr
    -> 172.25.254.2:http Route 1 0 4 
    -> 172.25.254.3:http Route 1 0 3 

おすすめ

転載: blog.csdn.net/Y950904/article/details/92846232