15.4.6. ネットワークの設定
外部 IP アドレスが割り当てられた後は、その IP へのルートを作成する必要があります。
以下の手順は、他のノードから公開されたサービスにアクセスするために必要なネットワークを設定するための一般的なガイドラインです。ネットワーク環境は異なるため、お使いに環境に必要な特定の設定についてはネットワーク管理者にお問い合わせください。
以下の手順は、すべてのシステムが同じサブネットにあることを前提としています。
マスター上:
ネットワークを稼働させるためにネットワークを再起動します。
systemctl restart network
# systemctl restart network Restarting network (via systemctl): [ OK ]
Copy to Clipboard Copied! Toggle word wrap Toggle overflow ネットワークが稼働していない場合、以下のコマンドを実行すると Network is unreachable などのエラーメッセージが表示されます。
公開するサービスの外部 IP アドレスおよび
ifconfig
コマンド出力からのホスト IP に関連付けられたデバイス名を使って以下のコマンドを実行します。ip address add <external_ip> dev <device>
$ ip address add <external_ip> dev <device>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 以下に例を示します。
ip address add 192.168.120.10 dev eth0
$ ip address add 192.168.120.10 dev eth0
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 必要な場合は、以下のコマンドを実行してマスターが置かれているホストサーバーの IP アドレスを取得します。
ifconfig
$ ifconfig
Copy to Clipboard Copied! Toggle word wrap Toggle overflow UP,BROADCAST,RUNNING,MULTICAST
のように一覧表示されているデバイスを検索します。eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet 10.16.41.22 netmask 255.255.248.0 broadcast 10.16.47.255 ...
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet 10.16.41.22 netmask 255.255.248.0 broadcast 10.16.47.255 ...
Copy to Clipboard Copied! Toggle word wrap Toggle overflow マスターが存在するホストの IP アドレスと、マスターホストのゲートウェイ IP アドレスの間のルートを追加します。ネットワークルートのネットマスクを使用する場合には、使用するネットマスクおよび
netmask
オプションを使用します。route add -host <host_ip_address> netmask <netmask> gw <gateway_ip_address> dev <device>
$ route add -host <host_ip_address> netmask <netmask> gw <gateway_ip_address> dev <device>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 以下に例を示します。
route add -host 10.16.41.22 netmask 255.255.248.0 gw 10.16.41.254 dev eth0
$ route add -host 10.16.41.22 netmask 255.255.248.0 gw 10.16.41.254 dev eth0
Copy to Clipboard Copied! Toggle word wrap Toggle overflow netstat -nr
コマンドはゲートウェイ IP アドレスを提供します。netstat -nr
$ netstat -nr Kernel IP routing table Destination Gateway Genmask Flags MSS Window irtt Iface 0.0.0.0 10.16.41.254 0.0.0.0 UG 0 0 0 eth0
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 公開されるサービスの IP アドレスとマスターホストの IP アドレス間のルートを追加します。
route add -net <exposed_service_ip> gw <host_ip_address> eth0
$ route add -net <exposed_service_ip> gw <host_ip_address> eth0
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 以下に例を示します。
route add -net 192.174.120.0/24 gw 10.16.41.22 eth0
$ route add -net 192.174.120.0/24 gw 10.16.41.22 eth0
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
ノード上:
ネットワークを稼働させるためにネットワークを再起動します。
systemctl restart network
# systemctl restart network Restarting network (via systemctl): [ OK ]
Copy to Clipboard Copied! Toggle word wrap Toggle overflow ネットワークが稼働していない場合、以下のコマンドを実行すると Network is unreachable などのエラーメッセージが表示されます。
ノードが配置されているホストの IP アドレスと、ノードホストのゲートウェイ IP との間のルートを追加します。ネットワークルートのネットマスクを使用する場合には、使用するネットマスクおよび
netmask
オプションを使用します。route add -net 10.16.40.0 netmask 255.255.248.0 gw 10.16.47.254 eth0
$ route add -net 10.16.40.0 netmask 255.255.248.0 gw 10.16.47.254 eth0
Copy to Clipboard Copied! Toggle word wrap Toggle overflow ifconfig
コマンドはホスト IP を表示します。ifconfig
$ ifconfig eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet 10.16.41.71 netmask 255.255.248.0 broadcast 10.19.41.255
Copy to Clipboard Copied! Toggle word wrap Toggle overflow netstat -nr
コマンドはゲートウェイ IP を表示します。netstat -nr
$ netstat -nr Kernel IP routing table Destination Gateway Genmask Flags MSS Window irtt Iface 0.0.0.0 10.16.41.254 0.0.0.0 UG 0 0 0 eth0
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 公開されるサービスの IP アドレスとマスターノードが置かれているホストサーバーの IP アドレス間のルートを追加します。
route add -net <exposed_service_ip> netmask 255.255.255.0 gw <host_ip_address> dev eth0
$ route add -net <exposed_service_ip> netmask 255.255.255.0 gw <host_ip_address> dev eth0
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 以下に例を示します。
route add -net 192.174.120.0 netmask 255.255.255.0 gw 10.16.41.22 dev eth0
$ route add -net 192.174.120.0 netmask 255.255.255.0 gw 10.16.41.22 dev eth0
Copy to Clipboard Copied! Toggle word wrap Toggle overflow cURL などのツールを使用して、パブリック IP アドレスを使用してサービスに到達できることを確認します。
curl <public_ip>:<port>
$ curl <public_ip>:<port>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 以下に例を示します。
curl 192.168.120.10:3306
$ curl 192.168.120.10:3306
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Got packets out of order
のメッセージと共に文字ストリングを取得する場合は、サービスがノードからアクセス可能であることになります。
クラスター内にないシステム上:
ネットワークを稼働させるためにネットワークを再起動します。
systemctl restart network
$ systemctl restart network Restarting network (via systemctl): [ OK ]
Copy to Clipboard Copied! Toggle word wrap Toggle overflow ネットワークが稼働していない場合、以下のコマンドを実行すると Network is unreachable などのエラーメッセージが表示されます。
リモートホストの IP アドレスと、リモートホストのゲートウェイ IP の間のルートを追加します。ネットワークルートのネットマスクを使用する場合には、使用するネットマスクおよび
netmask
オプションを使用します。route add -net 10.16.64.0 netmask 255.255.248.0 gw 10.16.71.254 eno1
$ route add -net 10.16.64.0 netmask 255.255.248.0 gw 10.16.71.254 eno1
Copy to Clipboard Copied! Toggle word wrap Toggle overflow マスター上の公開されたサービスの IP アドレスとマスターホストの IP アドレス間のルートを追加します。
route add -net <exposed_service_ip> netmask 255.255.255.0 gw <host_ip_address>
$ route add -net <exposed_service_ip> netmask 255.255.255.0 gw <host_ip_address>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 以下に例を示します。
route add -net 192.174.120.0 netmask 255.255.255.0 gw 10.16.41.22
$ route add -net 192.174.120.0 netmask 255.255.255.0 gw 10.16.41.22
Copy to Clipboard Copied! Toggle word wrap Toggle overflow cURL などのツールを使用して、パブリック IP アドレスを使用してサービスに到達できることを確認します。
curl <public_ip>:<port>
$ curl <public_ip>:<port>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 以下に例を示します。
curl 192.168.120.10:3306
$ curl 192.168.120.10:3306
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Got packets out of order
のメッセージと共に文字ストリングを取得する場合、サービスがクラスター外からアクセス可能であることになります。