Menu Close

2.5.2. 既存デプロイメントでのマルチパス設定

ワークロードがマルチパス機能を使用できるように、既存のデプロイメントでマルチパスを設定します。

注記

既存のデプロイメントでマルチパスを設定した後に作成する新しいワークロードは、デフォルトでマルチパスに対応しています。既存のワークロードがある場合は、これらのインスタンスでマルチパスを有効にするには、インスタンスを退避して復元する必要があります。

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

前提条件

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

手順

  1. すべてのコントローラーノードおよびコンピュートノードにマルチパスがインストールされていることを確認します。

    $ rpm -qa | grep device-mapper-multipath
    
    device-mapper-multipath-0.4.9-127.el8.x86_64
    device-mapper-multipath-libs-0.4.9-127.el8.x86_64

    マルチパスがインストールされていない場合は、すべてのコントローラーノードおよびコンピュートノードにインストールします。

    $ sudo dnf install -y device-mapper-multipath
  2. すべてのコントローラーノードおよびコンピュートノードでマルチパスデーモンを設定します。

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

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

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

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

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

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

    $ systemctl enable --now multipathd
  5. 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
  6. (オプション) 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 ヒートテンプレートのデフォルト値の両方が一致していることを確認してください。
  7. 設定したすべてのバックエンドについて、use_multipath_for_image_xfertrueに設定します。

    parameter_defaults:
      ExtraConfig:
        cinder::config::cinder_config:
          <backend>/use_multipath_for_image_xfer:
            value: true
  8. 以下のコマンドを実行してオーバークラウドを更新します。

    $ openstack overcloud deploy
    注記

    openstack overcloud deploy コマンドを実行してマルチパスをインストールおよび設定する場合、--templates--roles-file-e (すべての環境ファイル用)、および --timeout など、オーバークラウドのデプロイに使用した以前のロールファイルおよび環境ファイルをすべて渡す必要があります。以前のロールファイルおよび環境ファイルをすべて渡さないと、オーバークラウドのデプロイメントで問題が発生する可能性があります。オーバークラウドパラメーターの使用についての詳細は、『director のインストールと使用方法』「CLI ツールを使用した基本的なオーバークラウドの設定」を参照してください。