1つの管理OS上のゲストOS間でクラスタシステムを構築する場合の関連ソフトウェアのインストールと設定について説明します。
必要に応じて、以下の作業を行ってください。
管理OSの設定
仮想マシン機能のゲストOSをクラスタとして動作させる場合、ディスク装置、仮想ブリッジ、仮想SCSIデバイス、ユーザIDの作成、ゲストOSの初期設定が、管理OS上で必要です。
本設定はOSインストール後に行ってください。
詳しくは、“3.2.1.1 管理OSの設定”を参照してください。
NTPの設定(管理OS/ゲストOS)
クラスタシステムを構築する各ノードの時刻を同期させるための設定です。クラスタを構築する際には必ず行う必要があります。
本設定はPRIMECLUSTERをインストールする前に、管理OSとゲストOS上で行ってください。
参照
設定の詳細は“PRIMEQUEST (1000 シリーズ)RHEL5-Xen 仮想マシン機能ユーザーズマニュアル(SupportDesk サービスご契約者様向け)”、または、“Red Hat Enterprise Linux 6 Virtualization Guide”を参照してください。
ゲストOSの設定
クラスタシステムを構築するゲストOSで、業務LAN、管理LANのIPアドレスなどネットワークの設定が必要です。
本設定はOSインストール後に行ってください。
詳しくは、“3.2.1.2 ゲストOSの設定”を参照してください。
カーネルパラメタの確認/設定
PRIMECLUSTERに関連するソフトウェアを運用する際には、環境に応じてOSのカーネルパラメタを調整する必要があります。
本設定はPRIMECLUSTERインストール後の再起動を行う前に行ってください。
詳しくは、“3.2.1.3 カーネルパラメタの確認”を参照してください。
参照
構成については、“A.12.1 1つの管理OS上のゲストOS間でクラスタシステムを構築する場合”を参照してください。
仮想マシン機能のゲストOSをクラスタとして動作させる場合、管理OSの設定が必要です。
本設定は、管理OS、ゲストOSへのOSインストール後に以下の手順で実施してください。
ディスク関連の設定
ディスク関連の設定は完了しておく必要があります。
管理OSに、ゲストOSのシステムディスクを使用するために必要なソフトウェア製品(ETERNUSマルチパスドライバ)のインストールと設定を行います。インストールおよび設定の手順については、ETERNUSマルチパスドライバのソフトウェア説明書を参照してください。
注意
システムボリュームを配置したI/O装置が故障したときの即時クラスタ切替えについて
ext3ファイルシステムのデフォルトの設定では、システムボリュームを配置したI/O装置が故障しても、クラスタ切替えが発生せず、メモリ上に保持している情報を基にシステムの動作が継続してしまう場合があります。
システムボリュームを配置したI/O装置の故障時に、即時にPRIMECLUSTERによるクラスタ切替え運用を行いたい場合は、以下の設定を行ってください。
システムボリュームに含まれる各パーティションに対して、ext3のmountオプションに「errors=panic」を指定します。
例) /etc/fstab に設定する場合 ( /、/var、/home が 1つのシステムボリュームに存在するとき)
LABEL=/ / ext3 errors=panic 1 1 LABEL=/boot /boot ext3 errors=panic 1 2 LABEL=/var /var ext3 errors=panic 1 3 LABEL=/home /home ext3 errors=panic 1 4
ただし、I/Oエラーがext3ファイルシステムに伝わるまでに時間がかかり、即時切替えにならない場合があります。定期的にシステムボリュームに書込みを行うことで、I/Oエラーの検出頻度を上げることができます。
ゲストOS上で共用ディスクを使用するためには、仮想SCSIデバイスの設定を行う必要があります。
Xen環境での仮想SCSIデバイスの設定手順については、“PRIMEQUEST (1000 シリーズ)RHEL5-Xen 仮想マシン機能ユーザーズマニュアル(SupportDesk サービスご契約者様向け)”を参照してください。
KVM環境での仮想SCSIデバイスの設定手順については、以下のとおりです。
ゲストOSを停止します。
仮想マシンマネージャから停止したゲストOSを選択し、ツールバーの[Open]ボタンをクリックします。
表示されたウィンドウのツールバーのをクリックし、ハードウェアの詳細情報を表示します。
左のハードウェア一覧で仮想ディスク(VirtIO Disk)を選択します。
[仮想ディスク]画面で、以下の設定を行い、[適用]をクリックします。
- 共有可能のチェックボックスにチェックします。
- キャッシュモデルに 'none' を選択します。
管理OSで、rpm(8)コマンドを使用してlibvirtパッケージのバージョンを確認します。
# rpm -qi libvirt
libvirtパッケージのバージョンが libvirt-0.9.4-23.el6_2.4 以降の場合、管理OS上のゲスト設定ファイル(/etc/libvirt/qemu/ゲスト名.xml)に設定されている仮想ディスクの device属性を、diskから lun に変更します。
# virsh edit ゲスト名
変更前の例
:
<disk type='block' device='disk'>
<driver name='qemu' type='raw'/>
<source dev='/dev/disk/by-id/scsi-1FUJITSU_30000085002B'/>
<target dev='vdb' bus='virtio'/>
<shareable/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x06' function='0x0'/>
</disk>
:
変更後の例
:
<disk type='block' device='lun'>
<driver name='qemu' type='raw'/>
<source dev='/dev/disk/by-id/scsi-1FUJITSU_30000085002B'/>
<target dev='vdb' bus='virtio'/>
<shareable/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x06' function='0x0'/>
</disk>
ゲストOSを起動します。
注意
ゲストに追加するディスクは、by-id名で指定してください。
ゲストにVirtioブロックデバイスを追加する場合、ディスクを分割せずに追加してください。
ゲストOSのシステムディスクのミラーの設定を行う場合には、管理OSで作成したローカルクラスまたは共用クラスのミラーボリュームをゲストOSに設定してください。
参照
設定の詳細は“PRIMEQUEST (1000 シリーズ)RHEL5-Xen 仮想マシン機能ユーザーズマニュアル(SupportDesk サービスご契約者様向け)”の冗長化に関する記事、または、“Red Hat Enterprise Linux 6 Virtualization Administration Guide”を参照してください。
仮想ブリッジ(管理LAN/業務LAN/クラスタインタコネクト)の設定
Xen環境の場合
管理LAN、業務LAN、クラスタインタコネクトなど、仮想ドメインが使用するネットワークインタフェースについては、事前に仮想ネットワークとして仮想ブリッジの設定を行う必要があります。
クラスタシステムでは、以下の構成の仮想ブリッジを使用します。
gextbr:
業務LAN用の仮想ブリッジ
xenbr:
管理LAN用の仮想ブリッジ
gintbr:
クラスタインタコネクト用の仮想ブリッジ
参照
詳細は“PRIMEQUEST (1000 シリーズ)RHEL5-Xen 仮想マシン機能ユーザーズマニュアル(SupportDesk サービスご契約者様向け)”を参照してください。
注意
クラスタインタコネクトの仮想ブリッジにはgintbrの構成のみ使用してください。
例:クラスタインタコネクト用の仮想ブリッジ(gintbr4, gintbr5)をすでに設定されている仮想ブリッジのスクリプト(network-bridge-pcl)に定義する場合。
クラスタインタコネクト用の仮想ブリッジ
管理LAN用の仮想ブリッジ
業務LAN用の仮想ブリッジ
仮想ブリッジ作成スクリプトを呼び出すためのスクリプトのファイル名
(1) スクリプト(/etc/xen/scripts/gint-network-bridge)が存在することを確認し、存在しない場合は、新規作成してください。
参照
詳細は、“PRIMECLUSTER Global Link Services 説明書(伝送路二重化機能編)”、または“PRIMEQUEST (1000 シリーズ)RHEL5-Xen 仮想マシン機能ユーザーズマニュアル(SupportDesk サービスご契約者様向け)”を参照してください。
(2) 管理OSの“/etc/xen/scripts”配下にある仮想ブリッジを定義するスクリプト(network-bridge-pcl)を編集します。
#!/bin/sh # # Sample of Create/Delete virtual bridge # # $1 start : Create virtual bridge # stop : Delete virtual bridge # status: Display virtual bridge information # Exit if anything goes wrong set -e command=$1 glsxenscript=/opt/FJSVhanet/local/sbin/hanetxen xenscript=/etc/xen/scripts/network-bridge xenscriptgext=/etc/xen/scripts/gext-network-bridge xenscriptgint=/etc/xen/scripts/gint-network-bridge ・・・追加 # op_start:subscript for start operation # op_start () { $xenscript $command vifnum=0 netdev=eth0 $xenscript $command vifnum=1 netdev=eth1 $xenscriptgext $command extnum=2 netdev=eth2 $xenscriptgext $command extnum=3 netdev=eth3 $xenscriptgint $command intnum=4 ・・・追加 $xenscriptgint $command intnum=5 ・・・追加 } # op_stop:subscript for stop operation # op_stop () { op_start $command } case "$command" in start) # Create your virtual bridge $glsxenscript stop op_start $glsxenscript start ;; stop) # Delete virtual bridge $glsxenscript stop op_stop ;; status) # display virtual bridge information $xenscript status ;; *) echo "Unknown command: $command" >&2 echo 'Valid commands are: start, stop, status' >&2 exit 1 esac
(3) 実行権限の付与
以下のコマンドを実行し、スクリプト(network-bridge-pcl)に実行権限を付与してください。
# cp network-bridge-pcl /etc/xen/scripts # cd /etc/xen/scripts # chmod +x network-bridge-pcl
(4) xendサービスへの登録
xendサービスの設定ファイル(/etc/xen/xend-config.sxp)の“network-script”パラメータを確認し、“network-bridge-pcl”が設定されていない場合は、設定してください。
# Your default ethernet device is used as the outgoing interface, by default.
# To use a different one (e.g. eth1) use
#
# (network-script 'network-bridge netdev=eth1')
#
# The bridge is named xenbr0, by default. To rename the bridge, use
#
# (network-script 'network-bridge bridge=<name>')
#
# It is possible to use the network-bridge script in more complicated
# scenarios, such as having two outgoing interfaces, with two bridges, and
# two fake interfaces per guest domain. To do things like this, write
# yourself a wrapper script, and call network-bridge from it, as appropriate.
#
(network-script network-bridge-pcl)
KVM環境の場合
管理LAN、業務LAN、クラスタインタコネクトなど、仮想ドメインが使用するネットワークインタフェースについては、事前に仮想ネットワークとして仮想ブリッジの設定を行う必要があります。
(1) 管理LAN用の仮想ブリッジの設定
/etc/sysconfig/network-scripts/ifcfg-ethXファイルを以下のように編集します。
DEVICE=ethX HWADDR=XX:XX:XX:XX:XX:XX BOOTPROTO=none ONBOOT=yes BRIDGE=brX
注意
HWADDRについては、お使いのネットワークインターフェースのMACアドレスを設定してください。
仮想ブリッジのインタフェース設定ファイル /etc/sysconfig/network-scripts/ifcfg-brXを新規に作成します。
DEVICE=brX TYPE=Bridge BOOTPROTO=static IPADDR=xxx.xxx.xxx.xxx NETMASK=xxx.xxx.xxx.xxx ONBOOT=yes
注意
IPADDRとNETMASKについては、外部と接続するためのIPアドレスとネットマスクを設定してください。
(2) 業務LAN用の仮想ブリッジの設定
/etc/sysconfig/network-scripts/ifcfg-ethXファイルを以下のように編集します。
DEVICE=ethX HWADDR=XX:XX:XX:XX:XX:XX BOOTPROTO=none ONBOOT=yes BRIDGE=brX
注意
HWADDRについては、お使いのネットワークインターフェースのMACアドレスを設定してください。
仮想ブリッジのインタフェース設定ファイル /etc/sysconfig/network-scripts/ifcfg-brXを新規に作成します。
DEVICE=brX TYPE=Bridge ONBOOT=yes
(3) クラスタインタコネクト用の仮想ブリッジの設定
仮想ブリッジのインタフェース設定ファイル /etc/sysconfig/network-scripts/ifcfg-brXを新規に作成します。
DEVICE=brX TYPE=Bridge BOOTPROTO=static ONBOOT=yes
管理OSにおけるゲストOSの設定(KVM環境の場合)
KVM環境では、ゲストOSの動作中に管理OSを誤ってシャットダウンした場合でも、ゲストOSを正常に停止させるために、以下の設定を実施します。
/etc/sysconfig/libvirt-guestsに、以下の2つの値を定義します。すでに値が定義されている場合、その値を変更してください。
ON_SHUTDOWN=shutdown
SHUTDOWN_TIMEOUT=300
SHUTDOWN_TIMEOUTには、ゲストOSのシャットダウンのタイムアウト時間(秒)を指定します。ゲストOSのシャットダウンにかかる時間を見積もり、設定してください。複数のゲストOSが設定されている場合は、シャットダウンにかかる時間の大きい方を設定してください。上記は300秒(5分)とした場合の設定例です。
注意
/etc/sysconfig/libvirt-guests を設定するときは、設定値とコメントを同一行に記載しないでください。
運用中に /etc/sysconfig/libvirt-guests の設定を変更する場合は、“8.9.2.3 /etc/sysconfig/libvirt-guests の設定変更” の手順で必ず実施してください。
ユーザIDの作成
ポイント
作成するユーザは、シャットダウン機構によってノード強制停止を実行するため、管理OSにログインするユーザとなります。シャットダウン機構の設定時に、このユーザIDとパスワードを使用します。
Xen環境の場合
Xen環境では、PRIMECLUSTERによるゲストOS制御のため、必要な一般権限ユーザID(FJSVvmSP)を管理OSに作成してください。
# useradd FJSVvmSP
KVM環境の場合
KVM環境では、PRIMECLUSTERによるゲストOS制御のため、シャットダウン機構用のユーザを設定する必要があります。
(1) 一般権限ユーザID(任意)の作成
シャットダウン機構用の一般権限ユーザID(任意)をハイパーバイザーに作成してください。
# useradd <ユーザID>
(2) sudoコマンドの設定
シャットダウン機構用の一般権限ユーザID(任意)は、rootユーザとしてコマンドを実行できるように、sudoコマンドの設定が必要です。
visudoコマンドで、手順(1)で作成した一般権限ユーザIDに、パスワード入力なしでのコマンド実行を許可するように設定を行ってください。
# visudo
例
<ユーザID> ALL=(root) NOPASSWD: ALL
ゲストOSの初期設定
ゲストOSのインストールおよびゲストOSへの添付ソフトウェアのインストールが完了した後、ゲストOSの初期設定をしてください。
注意
本設定は、クラスタシステムを構成するすべてのゲストOSに対し、実行してください。
参照
設定の詳細は“PRIMEQUEST (1000 シリーズ)RHEL5-Xen 仮想マシン機能ユーザーズマニュアル(SupportDesk サービスご契約者様向け)”、または、“Red Hat Enterprise Linux 6 Virtualization Guide”を参照してください。
クラスタシステムを構築するゲストOSで、業務LAN、管理LANのIPアドレスなどネットワークの設定が必要です。
本設定はクラスタとして動作させるゲストOS上で実施してください。
注意
ゲストOSのインストール時に設定したゲストドメイン名をシャットダウン機構の設定時に使用します。
ゲストドメイン名の確認方法は、“PRIMEQUEST (1000 シリーズ)RHEL5-Xen 仮想マシン機能ユーザーズマニュアル(SupportDesk サービスご契約者様向け)”、または、“Red Hat Enterprise Linux 6 Virtualization Guide”を参照してください。
参照
PRIMECLUSTERシステムが使用する業務LAN、管理LANを変更する場合には“8.2 業務LAN/管理LANのIPアドレスの変更”を参照してください。
参考
Web-Based Admin View では、PRIMECLUSTERシステムが導入された時のノード名に相当するホスト名のIPアドレスが割り当てられているインタフェースを、クラスタノード・クラスタ管理サーバ間やクラスタ管理サーバ・クライアント間の通信経路として使用するように自動設定します。
環境に応じて、カーネルパラメタを変更する必要があります。
PRIMECLUSTERをインストールするすべてのノード
使用する製品/コンポーネントによって、必要とするカーネルパラメタが異なります。
カーネルパラメタ・ワークシートを確認し、カーネルパラメタの変更が必要な場合は設定し直してください。
参照
カーネルパラメタについては、“A.6 カーネルパラメタ・ワークシート”を参照してください。
注意
変更したカーネルパラメタを有効にするには、インストール後にシステムを再起動する必要があります。