2.5. 環境のデプロイ

環境をデプロイする準備が整ったら、ネイティブ CephFS バックエンドの設定に必要なカスタム環境およびロールを指定して openstack overcloud deploy コマンドを使用します。

openstack overcloud deploy コマンドでは、その他の必要なオプションに加えて以下のオプションを指定します。

アクションオプション追加情報

network_data.yaml を使用してネットワーク設定を指定します。

[filename] -n /usr/share/openstack-tripleo-heat-templates/network_data.yaml

カスタム環境ファイルを使用して、このネットワークデータ環境ファイルで指定したデフォルトネットワークの値を上書きすることができます。これは、分離ネットワークを使用する際に利用可能なデフォルトのネットワークデータファイルです。このファイルは、簡潔にするために openstack overcloud deploy コマンドから省略することができます。

ceph-ansible.yaml を使用して Ceph デーモンをデプロイする。

-e /usr/share/openstack-tripleo-heat-templates/environments/ceph-ansible/ceph-ansible.yaml

コンテナー化された Red Hat Ceph を持つオーバークラウドのデプロイオーバークラウドデプロイメントの開始

ceph-mds.yaml を使用して Ceph メタデータサーバーをデプロイする。

-e /usr/share/openstack-tripleo-heat-templates/environments/ceph-ansible/ceph-mds.yaml

コンテナー化された Red Hat Ceph を持つオーバークラウドのデプロイオーバークラウドデプロイメントの開始

ネイティブ CephFS バックエンドを使用する manila サービスをデプロイする

-e /usr/share/openstack-tripleo-heat-templates/environments/manila-cephfsnative-config.yaml

環境ファイル

以下の例は、Ceph クラスター、Ceph MDS、ネイティブ CephFS バックエンド、および Ceph クラスターに必要なネットワークをデプロイするオプションが含まれる openstack overcloud deploy command コマンドを示しています。

[stack@undercloud ~]$ openstack overcloud deploy \
...
-n /usr/share/openstack-tripleo-heat-templates/network_data.yaml \
-e /usr/share/openstack-tripleo-heat-templates/environments/network-isolation.yaml   \
-e /home/stack/network-environment.yaml  \
-e/usr/share/openstack-tripleo-heat-templates/environments/ceph-ansible/ceph-ansible.yaml  \
-e /usr/share/openstack-tripleo-heat-templates/environments/ceph-ansible/ceph-mds.yaml  \
-e /usr/share/openstack-tripleo-heat-templates/environments/manila-cephfsnative-config.yaml

openstack overcloud deploy コマンドについての詳しい情報は、Director のインストールと使用方法デプロイメントコマンド を参照してください。

2.5.1. 環境ファイル

ネイティブ CephFS バックエンドを定義する統合環境ファイルは、アンダークラウドノードのパス (/usr/share/openstack-tripleo-heat-templates/environments/manila-cephfsnative-config.yaml) に置かれます。

manila-cephfsnative-config.yaml 環境ファイルには、Shared File Systems サービスのデプロイに関する設定が含まれます。バックエンドのデフォルト設定は、ほとんどの環境で機能するはずです。

Shared File Systems サービスをデプロイする際に director が使用するデフォルト値を例で示します。

[stack@undercloud ~]$ cat /usr/share/openstack-tripleo-heat-templates/environments/manila-cephfsnative-config.yaml

# A Heat environment file which can be used to enable a
# a Manila CephFS Native driver backend.
resource_registry:
  OS::TripleO::Services::ManilaApi: ../deployment/manila/manila-api-container-puppet.yaml
  OS::TripleO::Services::ManilaScheduler: ../deployment/manila/manila-scheduler-container-puppet.yaml
  # Only manila-share is pacemaker managed:
  OS::TripleO::Services::ManilaShare: ../deployment/manila/manila-share-pacemaker-puppet.yaml
  OS::TripleO::Services::ManilaBackendCephFs: ../deployment/manila/manila-backend-cephfs.yaml

parameter_defaults:
  ManilaCephFSBackendName: cephfs 1
  ManilaCephFSDriverHandlesShareServers: false 2
  ManilaCephFSCephFSAuthId: 'manila' 3
  ManilaCephFSCephFSEnableSnapshots: true 4
  ManilaCephFSCephVolumeMode: '0755'  5
  # manila cephfs driver supports either native cephfs backend - 'CEPHFS'
  # (users mount shares directly from ceph cluster), or nfs-ganesha backend -
  # 'NFS' (users mount shares through nfs-ganesha server)
  ManilaCephFSCephFSProtocolHelperType: 'CEPHFS'  6

parameter_defaults ヘッダーから設定が始まります。具体的には、このヘッダーからの設定により、resource_registry で設定したデフォルト値を上書きすることができます。これには、CephFS バックエンドのデフォルトを設定する OS::Tripleo::Services::ManilaBackendCephFs で定義した値も含まれます。

1
ManilaCephFSBackendName: CephFS バックエンドの manila 設定の名前を定義します。ここでは、デフォルトのバックエンド名は cephfs です。
2
ManilaCephFSDriverHandlesShareServers: 共有用サーバーのライフサイクルをコントロールします。false に設定すると、ドライバーはライフサイクルを処理しません。CephFS バックエンドでサポートされるオプションはこれだけです。
3
ManilaCephFSCephFSAuthId: Ceph クラスターにアクセスするために director が manila サービスに作成する Ceph 認証 ID を定義します。
4
ManilaCephFSCephFSEnableSnapshots: スナップショットのアクティブ化をコントロールします。Ceph Storage 4.1 以降ではスナップショットがサポートされますが、このパラメーターのデフォルト値は false です。この値を true に設定すると、ドライバーは snapshot_support 機能を manila スケジューラーに報告します。
5
ManilaCephFSCephVolumeMode は、ネイティブ CephFS バックエンド上に作成される manila 共有に設定する UNIX パーミッションを制御します。デフォルト値は 755 です。
6
ネイティブ CephFS ドライバーを使用するには、ManilaCephFSCephFSProtocolHelperTypeCEPHFS に設定する必要があります。

環境ファイルについての詳細は、Director のインストールと使用方法環境ファイル を参照してください。