| クラスタノードへの転送方法でNATを使用した場合の構成例 |

クラスタノードへの転送方法でNATを使用した場合の構成例
はじめに
Turbolinux Cluster Server(以降TLCS)から、クラスタノードへIPパケットを転送する方法として、NAT(ネットワークアドレス変換)が使用可能になりました。ここでは、このNATを使用した場合の構成例について説明します。
構成例
まずは、次の構成図を確認してください。

この構成図では、192.168.4.0/255.255.255.0(ドメイン名:turbolinux.gr.jp)と172.16.5.0/255.255.255.0(ドメイン名:turbo.llan)のネットワークが登場しています。この例では、192.168.4.0/255.255.255.0のネットワークがインターネットやイントラネットに接続されたネットワークで、172.16.5.0/255.255.255.0のネットワークがクラスタ用のネットワークを想定しています。このクラスタ構成では、ホスト名node3.turbo.llanとnode4.turbo.llanでWebサーバを稼動させ、これをクラスタリングします。
TLCSが稼動するノードの設定
TLCSが稼動するノードは、NICが2枚実装されており、それぞれのネットワークに接続されています。構成ファイル(/etc/clusterserver/clusterserver.conf)の内容は次の通りです。
TLCSが稼動する各ノードでは、OS及びTLCSのインストール後に、turboclusteradminを使用して(又は直接編集)、次の構成ファイル(/etc/clusterserver/clusterserver.conf)を作成し保存します。
# TurboLinux Cluster Server config file /etc/clusterserver/clusterserver.conf
# *** global parameters ***
NetworkMask 255.255.255.0
# *** NAT specific parameters ***
NAT
Subnet 172.16.0.0 255.255.255.0
Gateway 172.16.5.101
EndNAT
# *** user checks ***
# *** services ***
Services
Service http tcp:80 http
EndServices
# *** servers ***
Servers
Server node3 node3.turbo.llan nat
Server node4 node4.turbo.llan nat
EndServers
# *** server pools ***
ServerPool HTTPServers
AddServer node3 http/1
AddServer node4 http/1
CheckServerFrequency 20
CheckServerTimeout 10
CheckPortFrequency 20
CheckPortTimeout 10
EndServerPool
# *** router pools ***
AtmPool AdvancedTrafficManagers
AddAtm node20.turbolinux.gr.jp
SendArpDelay 20
MaxLostHeartbeats 3
HeartBeatDelay 2
NumConnections 100000
NumServers 100
NumServices 100
ConnectionTimeout 240
EndAtmPool
# *** virtual hosts ***
VirtualHost node21.turbolinux.gr.jp
AddAtmPool AdvancedTrafficManagers
AddServerPool HTTPServers
EndVirtualHost |
この設定ファイルを使用し、Turbolinux Cluster Server 6が稼動すると、次のようなネットワークの状態になります。
# ifconfig
eth0 Link encap:Ethernet HWaddr 00:00:F4:60:B2:89
inet addr:192.168.4.50 Bcast:192.168.4.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:5042 errors:0 dropped:0 overruns:0 frame:0
TX packets:8278 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:100
Interrupt:10 Base address:0xe800
eth0:cs0 Link encap:Ethernet HWaddr 00:00:F4:60:B2:89
inet addr:192.168.4.51 Bcast:192.168.4.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
Interrupt:10 Base address:0xe800
eth1 Link encap:Ethernet HWaddr 00:00:F4:60:BE:C4
inet addr:172.16.5.100 Bcast:172.16.5.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:12567 errors:0 dropped:0 overruns:0 frame:0
TX packets:13955 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:100
Interrupt:11 Base address:0xec00
eth1:natg Link encap:Ethernet HWaddr 00:00:F4:60:BE:C4
inet addr:172.16.5.101 Bcast:172.16.5.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
Interrupt:11 Base address:0xec00
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
UP LOOPBACK RUNNING MTU:3924 Metric:1
RX packets:17 errors:0 dropped:0 overruns:0 frame:0
TX packets:17 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0 |
このコマンドは、エイリアスの機能を使用し、ループバックインターフェイスにエイリアスを追加して仮想IPアドレスを設定します。ここで注意しなければならない点は、仮想IPアドレスに対するARPブロードキャストに反応しないように設定する必要があります。もし、反応する場合は、クラスタシステムが機能しません。Turbolinux
7 Serverの場合は、このコマンドで設定した仮想IPアドレスに対してのARPブロードキャストへの反応はしません。もし、クラスタノードが、UNIXやWindows系のOSの場合、同様の設定を行うことでクラスタノードとして構成できます。
クラスタノードの設定
転送方法で、ダイレクトフォワーディングやトンネリングを使用する場合と比べ、サービスが稼動するクラスタノードのネットワークの設定は非常に簡単です。各クラスタノードの標準ゲートウェイアドレスを、TLCSが用意するNATゲートウェイアドレス(上記構成ファイルのNATセクションのGatewayパラメータに指定されたIPアドレス)と同じIPアドレスに設定するだけです。
以上で、192.168.4.0/255.255.255.0のネットワークから、このクラスタシステムを使用することが可能になります。
しかし、この設定のままでは、クラスタ用のネットワークに存在するノード(この構成例の場合のホスト名 node3.turbo.llan と node4.turbo.llan)から他のネットワークに接続することができません。システムによっては、サービスを提供するクラスタノードから別のネットワークに接続する場合もあるでしょう。
方法は色々ありますが、ここでは簡単に設定する方法を説明します。
この構成例で、クラスタ用のネットワーク(172.16.5.0/255.255.255.0)に存在するノードから、192.168.4.0/255.255.255.0のネットワークにあるノードに接続する場合、Turbolinux
Cluster Serverが稼動しているノードで、ipchainsを使用してIPマスカレードの機能を実装します。尚、Turbolinux
Cluster Serverが稼動しているノードのOSは、Turbolinux
Server 日本語版 6.1で、インストールタイプが[オールインワン]でインストールされていることとします。
まず、Turbolinux Server 6.5(及びTurbolinux 7 Server)は、標準では、IPパケットをルーティングしない設定になっています。/etc/sysconfig/networkの「FORWARD_IPV4=no」の部分を「FORWARD_IPV4=yes」に変更し、次のようにネットワークを再起動します。
# /etc/rc.d/init.d/network restart |
続いて、次のコマンドを実行します(Turbolinux
Server 6.5の場合)。
まず、Turbolinux Server 6.5(及びTurbolinux 7 Server)は、標準では、IPパケットをルーティングしない設定になっています。/etc/sysconfig/networkの「FORWARD_IPV4=no」の部分を「FORWARD_IPV4=yes」に変更し、次のようにネットワークを再起動します。
# ipchains -A forward -j MASQ -s 172.16.5.0/24 -d 0.0.0.0/0 |
以上で、クラスタノードから192.168.4.0/255.255.255.0のネットワークにあるノードに接続することが可能になります。
最後に
以上で設定は完了です。クライアントノードのWeb
ブラウザから、仮想IPアドレス192.168.4.30(ホスト名:www.turbolinux.gr.jp)にアクセスし、ホスト名node3.turbo.llan,
node4.turbo.llanの各Webサーバのコンテンツを表示できることを確認します。
関連文書
対象製品
- Turbolinux Cluster Server 8
- Turbolinux Cluster Server 7
- Turbolinux Cluster Server 6
- Turbolinux 8 Server
- Turbolinux 7 Server
- Turbolinux Server 6.5
- Turbolinux Server 6.1

Last modified : Tue Dec 9 JST 2003 # 1