3.3. オーバークラウドのデプロイ
作成した環境ファイルを使用して、オーバークラウドをデプロイします。
手順
オーバークラウドの作成には、
openstack overcloud deploy
コマンドに追加の引数を指定する必要があります。$ openstack overcloud deploy --templates \ -e /usr/share/openstack-tripleo-heat-templates/environments/external-ceph.yaml \ -e /home/stack/templates/ceph-config.yaml \ -e --ntp-server pool.ntp.org \ ...
上記のコマンド例は、以下のオプションを使用します。
--templates
: デフォルトの heat テンプレートコレクション (/usr/share/openstack-tripleo-heat-templates/
) からオーバークラウドを作成します。-
-e/usr/share/openstack-tripleo-heat-templates/environments/external-ceph.yaml
- 既存の Ceph Storage クラスターをオーバークラウドに統合するように director を設定します。 -
-e/home/stack/templates/ceph-config.yaml
- カスタム環境ファイルを追加して、-e/usr/share/openstack-tripleo-heat-templates/environments/external-ceph.yaml
によって設定されたデフォルトをオーバーライドします。 -
--ntp-server pool.ntp.org
- NTP サーバーを設定します。
-
3.3.1. CephFS を使用した Shared File Systems サービスの環境ファイルの追加
CephFS で Shared File Systems サービス (manila) を使用するオーバークラウドをデプロイする場合は、追加の環境ファイルを追加する必要があります。
手順
追加の環境ファイルを作成して追加します。
-
ネイティブ CephFS バックエンドドライバーを使用するオーバークラウドをデプロイする場合には、
/usr/share/openstack-tripleo-heat-templates/environments/manila-cephfsnative-config.yaml
を使用します。 CephFS-NFS を使用するオーバークラウドをデプロイする場合は、
/usr/share/openstack-tripleo-heat-templates/environments/manila-cephfsganesha-config.yaml
を追加します。Red Hat は、共有がエクスポートされる隔離された StorageNFS ネットワークを使用して CephFS-NFS ドライバーをデプロイすることを推奨します。隔離されたネットワークをオーバークラウドのコントローラーノードにデプロイする必要があります。StorageNFS ネットワークの作成とロールの更新については、Red Hat OpenStack Platform デプロイメントのカスタマイズ の コンポーザブルネットワーク を参照してください。
-
ネイティブ CephFS バックエンドドライバーを使用するオーバークラウドをデプロイする場合には、
使用する CephFS バックエンドに応じて、
openstack overcloud deploy
コマンドを変更します。ネイティブ CephFS の場合:
$ openstack overcloud deploy --templates \ -e /usr/share/openstack-tripleo-heat-templates/environments/external-ceph.yaml \ -e /usr/share/openstack-tripleo-heat-templates/environments/manila-cephfsnative-config.yaml \ -e /home/stack/templates/ceph-config.yaml \ -e --ntp-server pool.ntp.org ...
CephFS-NFS の場合:
$ openstack overcloud deploy --templates \ -r /home/stack/custom_roles.yaml \ -e /usr/share/openstack-tripleo-heat-templates/environments/external-ceph.yaml \ -e /usr/share/openstack-tripleo-heat-templates/environments/manila-cephfsganesha-config.yaml \ -e /home/stack/templates/ceph-config.yaml \ -e /home/stack/templates/overcloud-networks-deployed.yaml\ -e /home/stack/templates/overcloud-vip-deployed.yaml \ -e --ntp-server pool.ntp.org ...
注記カスタムの
ceph-config.yaml
環境ファイルは、external-ceph.yaml
ファイル、およびmanila-cephfsnative-config.yaml
ファイルまたはmanila-cephfsganesha-config.yaml
ファイルのいずれかのパラメーターを上書きします。したがって、external-ceph.yaml
、およびmanila-cephfsnative-config.yaml
またはmanila-cephfsganesha-config.yaml
のいずれかの後に、デプロイメントコマンドにカスタムのceph-config.yaml
環境ファイルを追加します。環境ファイルのサンプル
parameter_defaults: CinderEnableIscsiBackend: false CinderEnableRbdBackend: true CinderEnableNfsBackend: false NovaEnableRbdBackend: true GlanceBackend: rbd CinderRbdPoolName: "volumes" NovaRbdPoolName: "vms" GlanceRbdPoolName: "images" CinderBackupRbdPoolName: "backups" CephClusterFSID: <cluster_ID> CephExternalMonHost: <IP_address>,<IP_address>,<IP_address> CephClientKey: "<client_key>" CephClientUserName: "openstack" ManilaCephFSDataPoolName: manila_data ManilaCephFSMetadataPoolName: manila_metadata ManilaCephFSCephFSAuthId: 'manila' CephManilaClientKey: '<client_key>' ExtraConfig:
-
<cluster_ID>
、<IP_address>
、および<client_key>
を環境に適した値に置き換えます。
-
関連情報
- カスタムロールファイルの生成の詳細は、CephFS-NFS を使用した Shared File Systems サービスのデプロイ を参照してください。
3.3.2. オブジェクトストレージ用外部 Ceph Object Gateway (RGW) の新規環境ファイルの追加
オブジェクトストレージ用に既存の RGW サービスを使用するオーバークラウドをデプロイする場合には、さらに環境ファイルを追加する必要があります。
手順
カスタム環境ファイル (
swift-external-params.yaml
等) に以下のparameter_defaults
を追加し、実際のデプロイメントに合わせて値を調整します。parameter_defaults: ExternalSwiftPublicUrl: 'http://<Public RGW endpoint or loadbalancer>:8080/swift/v1/AUTH_%(project_id)s' ExternalSwiftInternalUrl: 'http://<Internal RGW endpoint>:8080/swift/v1/AUTH_%(project_id)s' ExternalSwiftAdminUrl: 'http://<Admin RGW endpoint>:8080/swift/v1/AUTH_%(project_id)s' ExternalSwiftUserTenant: 'service' SwiftPassword: 'choose_a_random_password'
注記サンプルコードスニペットには、お使いの環境で使用する値とは異なるパラメーター値が含まれる場合があります。
-
リモート RGW インスタンスがリッスンするデフォルトのポートは
8080
です。外部 RGW の設定方法によっては、ポートが異なる場合があります。 -
オーバークラウドで作成した
swift
ユーザーは、SwiftPassword
パラメーターで定義したパスワードを使用します。rgw_keystone_admin_password
を使用し、Identity サービスに対する認証に同じパスワードを使用するように外部 RGW インスタンスを設定する必要があります。
-
リモート RGW インスタンスがリッスンするデフォルトのポートは
Ceph 設定ファイルに以下のコードを追加して、Identity サービスを使用するように RGW を設定します。変数の値を実際の環境に応じて置き換えます。
rgw_keystone_api_version = 3 rgw_keystone_url = http://<public Keystone endpoint>:5000/ rgw_keystone_accepted_roles = member, Member, admin rgw_keystone_accepted_admin_roles = ResellerAdmin, swiftoperator rgw_keystone_admin_domain = default rgw_keystone_admin_project = service rgw_keystone_admin_user = swift rgw_keystone_admin_password = <password_as_defined_in_the_environment_parameters> rgw_keystone_implicit_tenants = true rgw_s3_auth_use_keystone = true rgw_swift_versioning_enabled = true rgw_swift_account_in_url = true rgw_max_attr_name_len = 128 rgw_max_attrs_num_in_req = 90 rgw_max_attr_size = 256 rgw_keystone_verify_ssl = false
注記デフォルトでは、director は Identity サービスに以下のロールとユーザーを作成します。
- rgw_keystone_accepted_admin_roles: ResellerAdmin, swiftoperator
- rgw_keystone_admin_domain: default
- rgw_keystone_admin_project: service
- rgw_keystone_admin_user: swift
デプロイメントに該当するその他の環境ファイルと共に、追加の環境ファイルを指定して、オーバークラウドをデプロイします。
openstack overcloud deploy --templates \ -e <your_environment_files> -e /usr/share/openstack-tripleo-heat-templates/environments/swift-external.yaml -e swift-external-params.yaml