ページの先頭行へ戻る
PRIMECLUSTER  導入運用手引書 4.7

3.2.2 管理OS異常切替機能を使用せず複数の管理OS上のゲストOS間でクラスタシステムを構築する場合

管理OS異常切替機能を使用せず、複数の管理OS上のゲストOS間でクラスタシステムを構築する場合の関連ソフトウェアのインストールと設定について説明します。

必要に応じて、以下の図に示した作業を行ってください。

図3.3 管理OS異常時の切替機能を使用しない場合のクラスタシステム構築の流れ

3.2.2.1 管理OSの設定(ゲストOSのOSインストール前)

仮想マシン機能のゲストOSをクラスタとして動作させる場合、ディスク装置、仮想ブリッジ、仮想ディスク、ユーザIDの作成、ゲストOSの初期設定が、管理OS上で必要です。

管理OSへのOSインストール後、かつ、ゲストOSへのOSインストール前に、以下の設定を管理OS上で実施してください。

  1. 仮想ディスクの作成

    ゲストOSで共用ディスクまたはサーバ間ミラーリングを使用する場合、仮想ディスクを作成します。

    virtio-SCSIデバイスまたはvirtioブロックデバイスを作成します。作成手順については、“Configuring and managing virtualization”を参照してください。

    注意

    • ゲストに追加するディスクは、by-id名で指定してください。

    • パーティションやファイルではなく、分割していないディスクをゲストに追加してください。

  2. 関連ソフトウェアのインストールと設定

    管理OSに、ゲストOSのシステムディスクを使用するために必要なソフトウェア製品(ETERNUSマルチパスドライバ)のインストールと設定を行います。インストールおよび設定の手順については、ETERNUSマルチパスドライバのソフトウェア説明書を参照してください。

  3. ゲストOSのシステムディスクのミラー設定

    ゲストOSのシステムディスクのミラーの設定を行う場合には、管理OSで作成したローカルクラスのミラーボリュームをゲストOSに設定してください。

    参照

    設定の詳細は、“Configuring and managing virtualization”を参照してください。

3.2.2.2 管理OSの設定(ゲストOSのOSインストール後)

ゲストOSへのOSインストール後に以下の設定を実施してください。

  1. 仮想ディスクの設定

    ゲストOSで共用ディスクまたはサーバ間ミラーリングを使用するためには、仮想ディスクの設定が必要です。

    KVM環境での仮想ディスクの設定手順は、以下のとおりです。

    virtio-SCSIデバイスを共用ディスクとして使用する場合
    1. ゲストOSを停止します。

    2. 管理OS上のゲスト設定ファイル(/etc/libvirt/qemu/ゲスト名.xml)に記述されているvirtio-SCSIデバイスの設定に、shareable と cache='none' を記述します。また、device属性に 'lun' 以外が設定されている場合は、'lun' に修正します。

      # virsh edit ゲスト名

      変更前の例

        :
        <disk type='block' device='disk'>
          <driver name='qemu' type='raw'/>
          <source dev='/dev/disk/by-id/scsi-36000b5d0006a0000006a1296001f0000'/>
          <target dev='sdh' bus='scsi'/>
          <address type='drive' controller='0' bus='0' target='0' unit='7'/>
        </disk>
        :

      変更後の例

        :
        <disk type='block' device='lun'>
          <driver name='qemu' type='raw' cache='none'/>
          <source dev='/dev/disk/by-id/scsi-36000b5d0006a0000006a1296001f0000'/>
          <target dev='sdh' bus='scsi'/>
          <shareable/>
          <address type='drive' controller='0' bus='0' target='0' unit='7'/>
        </disk>
        :
    3. ゲストOSを起動します。

    virtioブロックデバイスを共用ディスクとして使用する場合
    1. ゲストOSを停止します。

    2. 仮想マシンマネージャから停止したゲストOSを選択し、ツールバーの[Open]ボタンをクリックします。

    3. 表示されたウィンドウのツールバーのをクリックし、ハードウェアの詳細情報を表示します。

    4. 左のハードウェア一覧で仮想ディスク(VirtIO Disk)を選択します。

    5. [仮想ディスク]画面で、以下の設定を行い、[適用]をクリックします。

      - 共有可能のチェックボックスにチェックします。

      - キャッシュモデルに 'none' を選択します。

    6. 管理OSで、rpm(8)コマンドを使用してlibvirtパッケージのバージョンを確認します。

      # rpm -qi libvirt
    7. 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' cache='none'/>
          <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' cache='none'/>
          <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>
        :
    8. ゲストOSを起動します。

    virtio-SCSIデバイスをサーバ間ミラーリングで使用する場合
    1. ゲストOSを停止します。

    2. 管理OS上のゲスト設定ファイル(/etc/libvirt/qemu/ゲスト名.xml)に記述されているvirtio-SCSIデバイスの設定において、device属性に 'lun' 以外が設定されている場合は、'lun' に修正します。

      # virsh edit ゲスト名

      変更前の例

        :
        <disk type='block' device='disk'>
          <driver name='qemu' type='raw'/>
          <source dev='/dev/disk/by-id/scsi-36000b5d0006a0000006a1296001f0000'/>
          <target dev='sdh' bus='scsi'/>
          <address type='drive' controller='0' bus='0' target='0' unit='7'/>
        </disk>
        :

      変更後の例

        :
        <disk type='block' device='lun'>
          <driver name='qemu' type='raw'/>
          <source dev='/dev/disk/by-id/scsi-36000b5d0006a0000006a1296001f0000'/>
          <target dev='sdh' bus='scsi'/>
          <address type='drive' controller='0' bus='0' target='0' unit='7'/>
        </disk>
        :
    3. ゲストOSを起動します。

    virtioブロックデバイスをサーバ間ミラーリングで使用する場合
    1. ゲストOSを停止します。

    2. 仮想マシンマネージャから停止したゲストOSを選択し、ツールバーの[Open]ボタンをクリックします。

    3. 表示されたウィンドウのツールバーのをクリックし、ハードウェアの詳細情報を表示します。

    4. 左のハードウェア一覧で仮想ディスク(VirtIO Disk)を選択します。

    5. [仮想ディスク]画面で、[Advanced options]の[Serial number]にシリアル番号を設定し、[適用]をクリックします。
      シリアル番号は、仮想マシン内で重複しない10文字以内の文字列にしてください。

    6. 管理OSで、rpm(8)コマンドを使用してlibvirtパッケージのバージョンを確認します。

      # rpm -qi libvirt
    7. 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'/>
          <serial>シリアル番号</serial>
          <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'/>
          <serial>シリアル番号</serial>
          <address type='pci' domain='0x0000' bus='0x00' slot='0x06' function='0x0'/>
        </disk>
        :
    8. ゲストOSを起動します。

    9. ゲストOS上で、仮想ディスクのby-idファイルが存在することを確認します。

      ・サーバ間ミラーリングで使用するすべてのvirtioブロックデバイスに対し、by-idファイルが存在することを確認してください。

      ・by-idファイルのファイル名に、手順5.で設定したシリアル番号が含まれることを確認してください。

      # ls -l /dev/disk/by-id
      : lrwxrwxrwx 1 root root 9 Apr 18 08:44 virtio-disk001 -> ../../vdg lrwxrwxrwx 1 root root 9 Apr 18 08:43 virtio-disk002 -> ../../vdh : シリアル番号
  2. 仮想ブリッジ(管理LAN/業務LAN/クラスタインタコネクト)の設定

    管理LAN、業務LAN、クラスタインタコネクトなど、仮想ドメインが使用するネットワークインタフェースについては、事前に仮想ネットワークとして仮想ブリッジの設定を行う必要があります。

    (1) 管理LAN用の仮想ブリッジの設定

    [RHEL8の場合]

    /etc/sysconfig/network-scripts/ifcfg-ethXファイルを以下のように編集します。

    DEVICE=ethX
    BOOTPROTO=none
    ONBOOT=yes
    BRIDGE=brX

    仮想ブリッジのインタフェース設定ファイル /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アドレスとネットマスクを設定してください。IPv6アドレスが必要な場合は、IPv6アドレスが割り当てられるように設定してください。

    [RHEL9の場合]

    ブリッジインターフェースを作成します。

    # nmcli connection add type bridge con-name brX ifname brX

    既存の接続プロファイルをブリッジに割り当てます。

    # nmcli connection modify ethX master brX

    ブリッジのIPアドレスを設定します。

    # nmcli connection modify brX ipv4.addresses 'xxx.xxx.xxx.xxx/xx'
    # nmcli connection modify brX ipv4.method manual

    注意

    ipv4.addressesには、外部と接続するためのIPアドレスとプレフィックスを指定してください。

    IPv6アドレスが必要な場合は、IPv6アドレスが割り当てられるように設定してください。

    接続をアクティベートします。

    # nmcli connection up brX

    (2) 業務LAN用/クラスタインタコネクト用の仮想ブリッジの設定

    [RHEL8の場合]

    /etc/sysconfig/network-scripts/ifcfg-ethXファイルを以下のように編集します。

    DEVICE=ethX
    BOOTPROTO=none
    ONBOOT=yes
    BRIDGE=brX

    仮想ブリッジのインタフェース設定ファイル /etc/sysconfig/network-scripts/ifcfg-brXを新規に作成します。

    DEVICE=brX
    TYPE=Bridge
    ONBOOT=yes

    [RHEL9の場合]

    ブリッジインターフェースを作成します。

    # nmcli connection add type bridge con-name brX ifname brX

    既存の接続プロファイルをブリッジに割り当てます。

    # nmcli connection modify ethX master brX

    ブリッジのIPアドレスを設定します。

    # nmcli connection modify brX ipv4.addresses 'xxx.xxx.xxx.xxx/xx'
    # nmcli connection modify brX ipv4.method manual

    注意

    ipv4.addressesには、外部と接続するためのIPアドレスとプレフィックスを指定してください。

    IPv6アドレスが必要な場合は、IPv6アドレスが割り当てられるように設定してください。

    接続をアクティベートします。

    # nmcli connection up brX
  3. 管理OSにおけるゲストOSの設定(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 の設定を変更する場合は、“9.4.1.3 /etc/sysconfig/libvirt-guests の設定変更”の手順で必ず実施してください。

  4. libvirt-guestsサービスの起動

    全ノードで以下のコマンドを実行し、libvirt-guestsサービスの起動状態を確認します。

    # /usr/bin/systemctl status libvirt-guests.service
    libvirt-guests.service - Suspend/Resume Running libvirt Guests
      Loaded: loaded (/usr/lib/systemd/system/libvirt-guests.service; disabled; vendor preset: disabled)
      Active: inactive (dead)

    "Active:"の項目が "inactive"の場合は、以下のコマンドを実行します。

    "Active:"の項目が "active"の場合は、以下のコマンド実行は不要です。

    # /usr/bin/systemctl start libvirt-guests.service
  5. libvirt-guestsサービスの起動設定

    全ノードで、現在のlibvirt-guestsサービスが有効化されているかを確認します。

    # /usr/bin/systemctl list-unit-files --type=service | grep libvirt-guests.service
    libvirt-guests.service                        disabled 

    上記で“disabled”と表示された場合は、以下のコマンドを実行します。

    "enabled"と表示された場合は、以下のコマンド実行は不要です。

    # /usr/bin/systemctl enable libvirt-guests.service
  6. ユーザIDの作成

    ポイント

    作成するユーザは、シャットダウン機構によってノード強制停止実行するため、管理OSにログインするユーザとなります。シャットダウン機構の設定時にこのユーザIDとパスワードを使用します。

    PRIMECLUSTERによるゲストOS制御のため、シャットダウン機構用のユーザを設定する必要があります。

    (1) 一般権限ユーザID(任意)の作成

    シャットダウン機構用の一般権限ユーザID(任意)を管理OSに作成してください。

    # useradd <ユーザID>

    (2) sudoコマンドの設定

    シャットダウン機構用の一般権限ユーザID(任意)は、rootユーザとしてコマンドを実行できるように、sudoコマンドの設定が必要です。

    visudoコマンドで、手順(1)で作成した一般権限ユーザIDに、パスワード入力なしでのコマンド実行を許可するよう、以下の設定を追加してください。

    <ユーザID>   ALL=(root) NOPASSWD: ALL

    また、ttyなしでの sudo実行を許可するため、以下の行の先頭に #を付加し、コメントアウトしてください。

    Defaults    requiretty

3.2.2.3 ゲストOSの設定

本設定は、クラスタシステムを構成するすべてのゲストOSに対し、以下の手順で実施してください。

  1. ネットワーク設定

    ゲストOSで、業務LAN、管理LANのIPアドレスなどネットワークの設定をしてください。

    本設定はOSインストール後に行ってください。

    参照

    PRIMECLUSTERシステムが使用する業務LAN、管理LANを変更する場合には“9.2 ネットワーク環境の変更”を参照してください。

    参考

    Web-Based Admin View では、PRIMECLUSTERシステムが導入された時のノード名に相当するホスト名のIPアドレスが割り当てられているインタフェースを、クラスタノード・クラスタ管理サーバ間やクラスタ管理サーバ・クライアント間の通信経路として使用するように自動設定します。

  2. ゲストOSへの添付ソフトウェアのインストール

    “Linuxユーザーズマニュアル”を参照し、ゲストOSに添付ソフトウェアをインストールしてください。

  3. .初期設定

    ゲストOSの初期設定をしてください。

    参照

    設定の詳細は、“Configuring and managing virtualization”を参照してください。

  4. ゲストドメイン名の確認

    シャットダウン機構の設定時に使用するため、ゲストOSのインストール時に設定したゲストドメイン名を確認してください。確認方法は、“Configuring and managing virtualization”を参照してください。

3.2.2.4 NTPの設定(管理OS/ゲストOS)

NTPは、クラスタシステムを構築する各ノードの時刻を同期させるための設定です。クラスタを構築する際には必ず行う必要があります。

本設定はPRIMECLUSTERをインストールする前に、管理OSとゲストOS上で行ってください。

参照

設定の詳細は、“Configuring and managing virtualization”を参照してください。

3.2.2.5 ゲストOSへのPRIMECLUSTERのインストール

ゲストOSにPRIMECLUSTERをインストールします。

詳細は、“3.3 PRIMECLUSTERのインストール”を参照してください。

3.2.2.6 カーネルパラメタの確認/設定

PRIMECLUSTERに関連するソフトウェアを運用する際には、環境に応じてOSのカーネルパラメタを調整する必要があります。

本設定はPRIMECLUSTERインストール後の再起動を行う前に行ってください。

対象ノード:

PRIMECLUSTERをインストールするすべてのノード

使用する製品/コンポーネントによって、必要とするカーネルパラメタが異なります。

PRIMECLUSTERデザインシートの“セットアップ(初期構成)”を確認し、カーネルパラメタの変更が必要な場合は設定し直してください。

参照

カーネルパラメタについては、“3.1.7 カーネルパラメタの確認/設定を参照してください。

注意

変更したカーネルパラメタを有効にするには、OSを再起動する必要があります。

3.2.2.7 アプリケーションのインストールと設定

PRIMECLUSTERシステム上で動作させるソフトウェアのインストール、および環境設定を必要に応じて行います。

詳細は、“3.4 アプリケーションのインストールと環境設定”を参照してください。