4.3. 共有インスタンスストレージの設定

デフォルトでは、インスタンスの起動時に、インスタンスのディスクはインスタンスディレクトリー /var/lib/nova/instances にファイルとして保存されます。Compute サービスの NFS ストレージバックエンドを設定して、これらのインスタンスファイルを共有 NFS ストレージに保存することができます。

前提条件

  • NFSv4 以降を使用している。Red Hat OpenStack Platform (RHOSP) は、以前のバージョンの NFS をサポートしません。詳細は、Red Hat ナレッジベースのソリューションRHOS NFSv4-Only Support Notesを参照してください。

手順

  1. アンダークラウドに stack ユーザーとしてログインします。
  2. stackrc ファイルを取得します。

    [stack@director ~]$ source ~/stackrc
  3. 共有インスタンスストレージを設定するための環境ファイルを作成します (例: nfs_instance_disk_backend.yaml)。
  4. インスタンスファイル用に NFS バックエンドを設定するには、以下の設定を nfs_instance_disk_backend.yaml に追加します。

    parameter_defaults:
      ...
      NovaNfsEnabled: True
      NovaNfsShare: <nfs_share>

    <nfs_share> をインスタンスのファイルストレージ用にマウントする NFS 共有ディレクトリーに置き換えます (例: '192.168.122.1:/export/nova' または '192.168.24.1:/var/nfs')。IPv6 を使用している場合は、二重と単一引用符の両方を使用してください (例: "'[fdd0::1]:/export/nova'")。

  5. オプション: NFS バックエンドストレージが有効な場合、NFS ストレージ用のデフォルトのマウント SELinux コンテキストは 'context=system_u:object_r:nfs_t:s0' です。以下のパラメーターを追加して、NFS インスタンスファイルストレージのマウントポイントのマウントオプションを変更します。

    parameter_defaults:
      ...
      NovaNfsOptions: 'context=system_u:object_r:nfs_t:s0,<additional_nfs_mount_options>'

    <additional_nfs_mount_options> を、NFS インスタンスファイルストレージに使用するマウントオプションのコンマ区切りリストに置き換えます。利用可能なマウントオプションの詳細は、mount の man ページを参照してください。

    $ man 8 mount.
  6. 更新を環境ファイルに保存します。
  7. その他の環境ファイルと共に新しい環境ファイルをスタックに追加して、オーバークラウドをデプロイします。

    (undercloud)$ openstack overcloud deploy --templates \
      -e [your environment files] \
      -e /home/stack/templates/nfs_instance_disk_backend.yaml