19.4.4 HA用にNNMiを設定する(Linuxの場合)
ここでは,Linux環境でHA用にNNMiを設定する手順を説明します。
NNMiのHA設定では,新規にNNMi用のリソースグループを作成します。このため,対象のリソースグループがない状態から設定作業を行ってください。
NNMiのHA設定を行うスクリプト(nnmhaconfigure.ovpl)は,内部的にクラスタソフトに対してリソースグループや各リソースを作成する処理を行います。設定作業が完了すると,次のリソースグループが設定されます。
リソース名 |
リソースタイプ |
説明 |
---|---|---|
<resource_group>-ip |
IP |
仮想IP アドレスを制御する |
<resource_group>-dg |
DiskGroup |
ディスクグループを制御する |
<resource_group>-volume |
Volume |
ボリュームを制御する |
<resource_group>-mount |
Mount |
共有ファイルシステムを制御する |
<resource_group>-app |
Application |
NNMiの起動/停止/監視を制御する |
VCSまたはSCSの場合,nnmhaconfigure.ovplがhagrpやharesなどのコマンドを内部的に実行して上記のリソースの設定処理を行います。
<resource_group>の部分はHAリソースグループ名に置き換わります。
リソースの依存関係は,Volumeの前提にDiskGroupとIP,Mountの前提にVolume,およびApplicationの前提にMountとIPがそれぞれ設定されます。
-
VCSまたはSCSがネットワークインタフェースを監視するリソース(VCSまたはSCSのNIC)は設定されません。必要に応じて追加設定をしてください。
NNMiの起動処理に時間が掛かりタイムアウトが発生する場合は,「19.8 HA設定のトラブルシューティング」を参照して,<resource_group>-appのOnlineTimeout設定を調整してください。
各リソースの設定内容の例を次に示します。
- (例)VCSまたはSCSの設定ファイルmain.cfの定義例
<>で囲んだ部分は,nnmhaconfigure.ovplで指定した設定項目の値になります。
group <resource_group> ( SystemList = { <node1> = 1 , <node2> = 1} UserStrGlobal = "NNM_INTERFACE=<virtual_host>;HA_LOCALE=<LOCALE>;HA_MOUNT_POINT=<mountpoint>" ) Application <resource_group>-app ( StartProgram = "/opt/OV/misc/nnm/ha/nnmharg.ovpl NNM -start <resource_group>" StopProgram = "/opt/OV/misc/nnm/ha/nnmharg.ovpl NNM -stop <resource_group>" CleanProgram = "/opt/OV/misc/nnm/ha/nnmharg.ovpl NNM -clean <resource_group>" MonitorProgram = "/opt/OV/misc/nnm/ha/nnmharg.ovpl NNM -monitor <resource_group>" OnlineTimeout = 1800 ) DiskGroup <resource_group>-dg ( DiskGroup = <disk_group> ) IP <resource_group>-ip ( Device = <network_interface_of_virtual_host> Address = "10.208.228.159" NetMask = "255.255.255.0" ) Mount <resource_group>-mount ( MountPoint = "<mountpoint>" BlockDevice = "/dev/vx/dsk/<disk_group>/<volume_group>" FSType = <type_of_shared_file_systems> FsckOpt = "-y" ) Volume <resource_group>-volume ( Volume = <volume_group> DiskGroup = <disk_group> ) <resource_group>-app requires <resource_group>-ip <resource_group>-app requires <resource_group>-mount <resource_group>-mount requires <resource_group>-volume <resource_group>-volume requires <resource_group>-dg <resource_group>-volume requires <resource_group>-ip
設定項目 |
設定内容(制御スクリプト) |
---|---|
name (起動) |
/var/opt/OV/hacluster/<resource_group>/cm2_start.sh |
termcommand (停止) |
/var/opt/OV/hacluster/<resource_group>/cm2_stop.sh |
patolcommand (監視) |
/var/opt/OV/hacluster/<resource_group>/cm2_monitor.sh |
<resource_group>の部分はHAリソースグループ名に置き換わります。
- 重要
HAモニタおよびCLUSTERPROの場合は,nnmhaconfigure.ovplを使わずに設定作業を行います。設定方法については,リリースノートを参照してください。
(1) プライマリクラスタノードでのNNMiの設定
プライマリクラスタノードで次の手順を実行します。
(a) 前準備
「19.2 HA用NNMiを設定するための前提条件の検証」の作業が完了していることを確認する。
NNMiがインストールされていない場合は,インストールする。そして,NNMiが正しく動作することを確認する。
次のコマンドを使って,NNMi設定をバックアップする。
(例)
/opt/OV/bin/nnmbackup.ovpl -scope all -target <directory>
このコマンドの詳細については,「20. NNMiのバックアップおよびリストアツール」を参照してください。
NNMiのクラスタ環境構成において初期状態では,プライマリクラスタノードのデータと,セカンダリクラスタノードのデータが完全に一致している必要があります。このため,ここで取得したバックアップデータを,セカンダリクラスタノードの設定手順でリストアし,データを一致させます。
(b) データの共有ディスクへのコピー
共有ディスクのマウントポイントになるディレクトリを作成する。
NNMi HAリソースグループ用に,共有ディスクを用意する。
- 重要
用意した共有ディスクが,次の条件を満たすことを確認してください。
フォーマット済みである
十分な空き容量がある
ほかのリソースグループで使用されていない
共有ディスクをアクティブ化して,マウントする。
(例)
Linux VCSまたはSCSでディスク管理にVxVM/VxFSを使う構成の場合
vxdg import <disk_group> vxvol -g <disk_group> startall mount -t vxfs /dev/vx/dsk/<disk_group>/<volume> <HA_mount_point>
共有ディスクのマウントポイントディレクトリが,ユーザーはroot,グループはrootで,パーミッションには755が設定されていることを確認します。
(例)
ls -l
NNMiを停止する。
/opt/OV/bin/ovstop -c
/opt/OV/bin/nettrap stop
NNMiファイルを共有ディスクにコピーする。
/opt/OV/misc/nnm/ha/nnmhadisk.ovpl NNM -to <HA_mount_point>
- 重要
指定したマウントポイント直下に,ディレクトリ「NNM」が作成されます(<HA_mount_point>/NNM)。
格納先ディレクトリ名を変更することはできません。
共有ディスクをマウント解除し,非アクティブ化する。
(例)
VCSまたはSCSかつVxVM/VxFS使用構成の場合
umount <HA_mount_point>
vxvol -g <disk_group> stopall
vxdg deport <disk_group>
(c) NNMiのHA設定
NNMi HAリソースグループを新規に作成する。
/opt/OV/misc/nnm/ha/nnmhaconfigure.ovpl NNM
このコマンドの設定項目については,「19.9.2 NNMiに付属しているHA設定スクリプト」を参照してください。
共有ディスクタイプはnoneではなく,必ずdiskを指定してください。
- (設定例)
HA設定項目は,nnmhaconfigure.ovplに対話形式で入力する項目を表示順に並べています。「19.4.2 HA用にNNMiを設定する」の「表19‒3 NNMi HAプライマリクラスタノードの設定情報」の説明によって検討した内容を入力してください。
HA設定項目
設定例
HAリソースグループの名前
jp1ha1
仮想ホストの名前
lhost1
仮想ホストのネットワークインタフェース
lan0
共有ファイルシステムのタイプ
disk(必ずdiskを指定)
ディスクタイプ
vxfs
ディスクグループ(VCSまたはSCSだけ)
shdg3
ボリュームグループ
vg03
マウントするディレクトリ
/shdsk1
- 重要
設定コマンドを実行する前に,次の注意事項を確認してください。
HA構成のNNMiはnnmhaconfigure.ovpl実行時のロケールを使用して起動します。nnmhaconfigure.ovpl実行時に操作する画面に適切なロケール(LANG環境変数)が設定されていることを確認してください。
Linux VCSまたはLinux SCSの場合:ja_JP.utf8,ja_JP.UTF-8,C,en_US.utf8,en_US.UTF-8,またはzh_CN.utf8
HA構成の設定後にロケールを変更する場合は,「19.6 HA設定のメンテナンス」を参照してください。
すでにほかのリソースグループやリソースで使われている値をnnmhaconfigure.ovplに指定すると,リソースの作成が失敗するなどエラーが発生します。ほかで使われていないことを確認してから,nnmhaconfigure.ovplを実行してください。
すでに使われているリソースグループ名,IP アドレスやディスクを指定した場合,リソースを作成するために実行したクラスタソフトのコマンドがエラーとなります。エラー発生時点でnnmhaconfigure.ovplは異常終了し,それまでに作成されたリソースグループやリソースは残ったままとなります。エラーを対処してnnmhaconfigure.ovplを再実行する前に,クラスタソフトの操作で残っているリソースを削除してください。
nnmhaconfigure.ovpl実行時に,次のメッセージが出力される場合がありますが,内部処理でのメッセージであり問題ありません。
「ディスク グループが見つかりません。インポートを試みます。」
「Unable to perform the security token exchange with cmclconfd on node xxxxx
Cannot connect to configuration daemon (cmclconfd) on node xxxxx」
- (実行例)
設定例の値を指定した場合の画面表示例です。" ? "の後ろが入力する項目です。
VCSまたはSCS (Linux)の場合の実行例
# /opt/OV/misc/nnm/ha/nnmhaconfigure.ovpl NNM 質問: HA リソース グループの名前を入力してください: ? jp1ha1 プライマリ ノードの設定が検出されました。 質問: 有効な仮想ホストの名前を入力してください: ? lhost1 情報: ネットワーク インタフェース情報の使用: ネットワーク インタフェース: bond0 ネットワーク サブネット マスク: 255.255.255.0 選択可能な値: 1: disk 2: none 質問: 共有ファイル システムのタイプを入力してください (disk,none): ? 1 選択可能な値: 1: vxfs 2: ext2 3: ext3 質問: ディスク タイプの名前を入力してください: ? 1 質問: ディスク グループの名前を入力してください: ? shdg3 ディスク グループが見つかりません。インポートを試みます。 質問: ボリューム グループの名前を入力してください: ? shvol3 質問: ディスクをマウントするディレクトリを入力してください: ? /shdsk1 リソース グループを作成しています。 VCS NOTICE V-16-1-10136 Group added; populating SystemList and setting the Parallel attribute recommended before adding resources HA 値の /var/opt/OV/shared/nnm/conf/ov.conf を設定しています。 ブート スクリプトを削除しています。 注: 指定されている仮想ホスト名に一致するようにNNMi FQDNを更新しています。fqdn を lhost1 に設定しています。 ドメインを xxx.xxx に設定しています。 新しい SSL 証明書を生成しています。 lhost1.xxx.xxx.selfsigned のキーストアの証明書を生成しています。 [成功] 生成された証明書をトラストストアにエクスポートしています。 証明書がファイル<temporary.cert>に保存されました。 証明書がキーストアに追加されました。 #
プライマリクラスタノード上で,サービスの自動起動を無効にする。
次のコマンドを実行し,サービスの自動起動を無効化します。
systemctl disable netmgt.service
systemctl disable nettrap.service
systemctl stop netmgt.service
systemctl stop nettrap.service
VCSまたはSCSの場合,作成したリソースを有効化(Enabledを1に設定)する。
- 例
hares -modify <resource_group>-app Enabled 1
hares -modify <resource_group>-dg Enabled 1
hares -modify <resource_group>-ip Enabled 1
hares -modify <resource_group>-mount Enabled 1
hares -modify <resource_group>-volume Enabled 1
その後,VCSまたはSCSの設定を読み取り専用にして,VCSまたはSCSの設定ファイルmain.cf を出力させます。
haconf -dump -makero
VCSまたはSCSがネットワークインタフェースを監視するリソース(VCSまたはSCSのNIC,MultiNICA,MultiNICBなど)は設定されていませんので,必要に応じて追加設定をしてください。
- 重要
HTTPS通信を使用してNNMiサーバーにアクセスする場合,証明書を使用するように設定します。詳細については,「10.3.6 高可用性環境での証明書の使用」を参照してください。
(d) 起動の確認
NNMi HAリソースグループを起動する。
/opt/OV/misc/nnm/ha/nnmhastartrg.ovpl NNM <resource_group>
このコマンドは, HAリソースグループの起動を待ってから,プロンプトを返します。本コマンドでリソースグループの起動を確認してください。
NNMiを正常に起動できなかった場合は,「19.8 HA設定のトラブルシューティング」を参照してください。
これで,NNMiがHA下で動作するようになりました。
- 重要
HA構成のNNMiの通常のオペレーションでは,ovstartコマンドやovstopコマンドは使わないでください。これらのコマンドは,メンテナンスを目的として操作手順に明示されている場合だけ使用します。HA構成のNNMiの起動や停止は,クラスタソフトの操作によってHAリソースグループを起動または停止するようにしてください。
(2) セカンダリクラスタノードでのNNMiの設定
(a) 前準備
「19.2 HA用NNMiを設定するための前提条件の検証」の作業が完了していることを確認する。
NNMiがインストールされていない場合は,NNMiをインストールし,正しく動作することを確認する。
リストアをする。
「(1) プライマリクラスタノードでのNNMiの設定」の(a)の手順3.で取得したバックアップデータをセカンダリクラスタノードにリストアします。
/opt/OV/bin/nnmrestore.ovpl -force -partial -source <backup_data>
このコマンドの詳細については,「20. NNMiのバックアップおよびリストアツール」を参照してください。
(b) NNMiのHA設定
共有ディスクのマウントポイントを作成する。
このマウントポイントでは,「(1) プライマリクラスタノードでのNNMiの設定」の(b)の手順1.で作成したマウントポイントと同じ名前を使う必要があります。
-
NNMiを停止する。
/opt/OV/bin/ovstop -c
/opt/OV/bin/nettrap stop
NNMi HAリソースグループを設定する。
/opt/OV/misc/nnm/ha/nnmhaconfigure.ovpl NNM
コマンドの要求に応じて,HAリソースグループ名を指定します。
(実行例)
# /opt/OV/misc/nnm/ha/nnmhaconfigure.ovpl NNM 質問: HA リソース グループの名前を入力してください: ? jp1ha1 セカンダリ ノードの設定が検出されました。 Completed the cluster update ブート スクリプトを削除しています。 注: 指定されている仮想ホスト名に一致するようにNNMi FQDNを更新しています。fqdn を lhost1.xxx.xxx に設定しています。 ドメインを .xxx.xxx に設定しています。 新しい SSL 証明書を生成しています。 #
セカンダリクラスタノード上で,サービスの自動起動を無効にする。
次のコマンドを実行し,サービスの自動起動を無効化します。
systemctl disable netmgt.service
systemctl disable nettrap.service
systemctl stop netmgt.service
systemctl stop nettrap.service
VCSまたはSCSの場合,HAクラスタに設定変更を反映させる。
haconf -dump -makero
設定が正常に行われたことを確認する。
/opt/OV/misc/nnm/ha/nnmhaclusterinfo.ovpl -group <resource_group> -nodes
このコマンドの出力には,指定したHAリソースグループに設定されたすべてのノードがリストされます。
(任意)プライマリクラスタノードのリソースグループをオフラインにし,セカンダリクラスタノードのリソースグループをオンラインにすることで,設定をテストする。