Menu Close

2.5. マルチパス設定

マルチパスを使用してサーバーノードおよびストレージアレイ間の複数の I/O パスを単一のデバイスに設定することで、冗長性が得られると共にパフォーマンスが向上します。マルチパスは、新規および既存のオーバークラウドデプロイメントに設定することができます。

Graphic depicts the logical input/output data paths of a Red Hat OpenStack Platform deployment configured using cinder multipath I/O

2.5.1. 新規デプロイメントでのマルチパス設定

新規オーバークラウドデプロイメントでマルチパスを設定するには、以下の手順を実施します。

既存のオーバークラウドデプロイメントでマルチパスを設定する方法は、「既存デプロイメントでのマルチパス設定」を参照してください。

前提条件

オーバークラウドのコントローラーノードおよびコンピュートノードは、Red Hat Enterprise Linux Server のリポジトリーにアクセスできる必要があります。詳しくは、『Director Installation and Usage』「Downloading the base cloud image」を参照してください。

手順

  1. オーバークラウドを設定します。

    注記

    詳細は、『 director のインストールと 使用方法』の「CLI ツールを使用した基本的なオーバークラウド の設定」を参照してください。

  2. heat テンプレートを更新してマルチパスを有効にします。

    parameter_defaults:
      NovaLibvirtVolumeUseMultipath:  true
      NovaComputeOptVolumes:
        - /etc/multipath.conf:/etc/multipath.conf:ro
        - /etc/multipath/:/etc/multipath/:rw
      CinderVolumeOptVolumes:
        - /etc/multipath.conf:/etc/multipath.conf:ro
        - /etc/multipath/:/etc/multipath/:rw
  3. (オプション) Block Storage (cinder) を Image サービス (glance) のバックエンドとして使用する場合には、以下の手順も完了する必要があります。

    1. 次のGlanceApiOptVolumes 構成をヒートテンプレートに追加します。

      parameter_defaults:
        GlanceApiOptVolumes:
          - /etc/multipath.conf:/etc/multipath.conf:ro
          - /etc/multipath/:/etc/multipath/:rw
    2. 次の方法でControllerExtraConfig パラメーターを設定します。

      parameter_defaults:
        ControllerExtraConfig:
          glance::config::api_config:
            default_backend/cinder_use_multipath:
              value: true
      備考
      default_backendGlanceBackendID ヒートテンプレートのデフォルト値の両方が一致していることを確認してください。
  4. 設定したすべてのバックエンドについて、use_multipath_for_image_xfertrueに設定します。

    parameter_defaults:
      ExtraConfig:
        cinder::config::cinder_config:
          <backend>/use_multipath_for_image_xfer:
            value: true
  5. オーバークラウドをデプロイします。

    $ openstack overcloud deploy
    注記

    オーバークラウドパラメーターを使用してオーバークラウドを作成する方法は、『director のインストールと使用方法』「CLI ツールを使用した基本的なオーバークラウドの設定」を参照してください。

  6. コンテナーを実行する前に、すべてのコントローラーノードおよびコンピュートノードにマルチパスをインストールします。

    $ sudo dnf install -y device-mapper-multipath
    注記

    director にはフックのセットが用意されており、初回のブートが完了してコア設定が開始する前に、特定ノードロールのカスタム設定を行うことができます。オーバークラウドのカスタム設定についての詳しい情報は、『オーバークラウドの高度なカスタマイズ』「事前設定: 特定のオーバークラウドロールのカスタマイズ」を参照してください。

  7. すべてのコントローラーノードおよびコンピュートノードでマルチパスデーモンを設定します。

    $ mpathconf --enable --with_multipathd y --user_friendly_names n --find_multipaths y
    注記

    このコード例により、ほとんどの環境で機能する基本的なマルチパス設定が作成されます。ただし、一部のストレージベンダーはハードウェア固有の最適化した設定を使用しているので、ベンダーに推奨事項を問い合わせてください。マルチパスについての詳細は、『Device Mapper Multipath の設定』を参照してください。

  8. すべてのコントローラーノードおよびコンピュートノードで以下のコマンドを実行して、パーティションが作成されないようにします。

    $ sed -i "s/^defaults {/defaults {\n\tskip_kpartx yes/" /etc/multipath.conf
    注記

    skip_kpartxyes に設定すると、コンピュートノード上の kpartx がデバイス上に自動的にパーティションを作成しなくなり、不要なデバイスマッパーエントリーを避けることができます。設定属性の詳細は、『Device Mapper Multipath の設定』「DM Multipath 設定ファイルの編集」を参照してください。

  9. すべてのコントローラーノードおよびコンピュートノードでマルチパスデーモンを起動します。

    $ systemctl enable --now multipathd