概要
Verticaではクラスタ内部でIPアドレスが登録されています。例えば、Verticaを別のサーバに移行する際は、一般的に移行元サーバと移行先サーバで異なるIPアドレスが使用されます。
これまではVerticaクラスタ内部のIPアドレスを安全に変更する方法はありませんでした(メーカサポートへ問い合わせる必要がありました)が、Vertica8.1.1より、Administration Toolsで、IPアドレスを変更するre_ipコマンドが使用可能になりました。
このコマンドにより、VerticaクラスタのIPアドレス変更を安全にかつ簡単に実施できるようになりました。
実行方法
VerticaクラスタのIPアドレスは、Administration Toolsのre_ipコマンドで変更することができます。
【構文】
$ admintools -t re_ip -f <マップファイル>
$ admintools -t re_ip -f <マップファイル>
VerticaクラスタのIPアドレスを変更する
マップファイルの作成
まずは既存のIPアドレスと変更後のIPアドレスが記載された、マップファイルをテキストファイルで作成します。マップファイルは以下の例のように、各ノードの既存のIPアドレスと変更後のIPアドレスを並べて記載していきます。
1 2 3 4 5 |
マップファイルの作成例) $ vi ip_mapfile 10.0.0.1 172.16.20.1 /★ノード1の新旧のIPアドレス/ 10.0.0.2 172.16.20.2 /★ノード2の新旧のIPアドレス/ 10.0.0.3 172.16.20.3 /★ノード3の新旧のIPアドレス/ |
Verticaクラスタに登録されているIPアドレスは、以下のコマンドにて確認することができます。
1 2 3 4 5 6 |
$ admintools -t list_allnodes Node | Host | State | Version | DB -------------------+----------+-------+-----------------+-------- v_testdb_node0001 | 10.0.0.1 | UP | vertica-9.1.1.5 | testdb v_testdb_node0002 | 10.0.0.2 | UP | vertica-9.1.1.5 | testdb v_testdb_node0003 | 10.0.0.3 | UP | vertica-9.1.1.5 | testdb |
データベースの停止
VerticaクラスタのIPアドレスを変更するには、事前にデータベースを停止する必要があります。データベースの停止方法に関しては、以下の記事をご参照ください。
Verticaデータベースと関連サービスの起動/停止方法(コマンド)
http://vertica-tech.ashisuto.co.jp/all-start-stop/
VerticaクラスタのIPアドレスを変更
re_ipコマンドにてマップファイル ip_mapfile を指定し、VerticaクラスタのIPアドレスを変更します。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 |
$ admintools -t re_ip -f ip_mapfile Parsing mapfile ... New settings for Host 10.0.0.1 are: address: 172.16.20.1 controlAddress:172.16.20.1 controlBroadcast:172.16.23.255 New settings for Host 10.0.0.3 are: address: 172.16.20.3 controlAddress:172.16.20.3 controlBroadcast:172.16.23.255 New settings for Host 10.0.0.2 are: address: 172.16.20.2 controlAddress:172.16.20.2 controlBroadcast:172.16.23.255 The following databases would be affected by this tool: testdb Checking DB status ... Enter "yes" to write new settings or "no" to exit > yes Backing up local admintools.conf ... Writing new settings to local admintools.conf ... Writing new settings to the catalogs of database testdb ... The change was applied to all nodes. Success. Change committed on a quorum of nodes. You can start database testdb again. Initiating admintools.conf distribution ... Success. Local admintools.conf sent to all hosts in the cluster. >>> Write new settings successfully. |
動作確認
IPアドレスが変更されていることを確認します。
1 2 3 4 5 6 |
$ admintools -t list_allnodes Node | Host | State | Version | DB -------------------+-------------+-------+-----------------+-------- v_testdb_node0001 | 172.16.20.1 | DOWN | vertica-9.1.1.5 | testdb v_testdb_node0002 | 172.16.20.2 | DOWN | vertica-9.1.1.5 | testdb v_testdb_node0003 | 172.16.20.3 | DOWN | vertica-9.1.1.5 | testdb |
想定通りのIPアドレスに変更できていれば、データベースを起動します。