7.4. ハイパーコンバージドストレージを使用したエッジサイトのデプロイメント
中央サイトをデプロイしたら、エッジサイトを構築し、各エッジロケーションがプライマリーとして自己のストレージバックエンドに接続し、さらに中央サイトのストレージバックエンドにも接続するようにします。スパイン/リーフ型ネットワーク設定に加えて、この設定には ceph が必要とする storage および storage_mgmt ネットワークを含める必要があります。詳細は、Spine leaf networking を参照してください。イメージサービス (glance) イメージをサイト間で移動することができるように、中央サイトと各エッジサイトのストレージネットワーク間に接続が必要です。
中央サイトが各エッジサイトの mons および osds と通信できるようにしてください。ただし、ストレージ管理ネットワークは OSD のリバランスに使用されるため、サイト境界でストレージ管理ネットワークを終端する必要があります。
前提条件
-
環境に固有の
network_data.yamlファイルを作成する必要がある。サンプルファイルは/usr/share/openstack-tripleo-heat-templates/network-data-samplesにある。 -
環境に固有の
overcloud-baremetal-deploy.yamlファイルを作成している。詳細は、オーバークラウド用のベアメタルノードのプロビジョニング を参照してください。 - 中央サイトおよび各アベイラビリティーゾーンまたはストレージサービスが必要な各地区での 3 つの Image サービス (glance) サーバー用ハードウェア。エッジロケーションでは、Image サービスが DistributedComputeHCI ノードにデプロイされる。
手順
- アンダークラウドに stack ユーザーとしてログインします。
source コマンドで stackrc ファイルを読み込みます。
[stack@director ~]$ source ~/stackrc環境ファイル ~/dcn0/dcn0-images-env.yaml を生成します。
sudo openstack tripleo container image prepare \ -e containers.yaml \ --output-env-file /home/stack/dcn0/dcn0-images-env.yamldcn0 エッジロケーションの適切なロールを生成します。
openstack overcloud roles generate DistributedComputeHCI DistributedComputeHCIScaleOut \ -o ~/dcn0/dcn0_roles.yamlオーバークラウドのネットワークをプロビジョニングします。このコマンドは、オーバークラウドネットワークの定義ファイルを入力として受け取ります。オーバークラウドをデプロイするには、コマンドで出力ファイルを使用する必要があります。
(undercloud)$ openstack overcloud network provision \ --output /home/stack/dcn0/overcloud-networks-deployed.yaml \ /home/stack/network_data.yaml重要network_data.yamlテンプレートに、中央サイトにネットワークをプロビジョニングしたときに含まれなかった追加のネットワークが含まれている場合は、中央サイトでネットワークプロビジョニングコマンドを再実行する必要があります。(undercloud)$ openstack overcloud network provision \ --output /home/stack/central/overcloud-networks-deployed.yaml \ /home/stack/central/network_data.yamlベアメタルインスタンスをプロビジョニングします。このコマンドは、ベアメタルノードの定義ファイルを入力として受け取ります。オーバークラウドをデプロイするには、コマンドで出力ファイルを使用する必要があります。
(undercloud)$ openstack overcloud node provision \ --stack dcn0 \ --network-config \ -o /home/stack/dcn0/deployed_metal.yaml \ /home/stack/overcloud-baremetal-deploy.yamlハイパーコンバージドストレージを使用してエッジサイトをデプロイする場合は、次のパラメーターを使用して
initial-ceph.conf設定ファイルを作成する必要があります。詳細は、HCI 用の Red Hat Ceph Storage クラスターの設定 を参照してください。[osd] osd_memory_target_autotune = true osd_numa_auto_affinity = true [mgr] mgr/cephadm/autotune_memory_target_ratio = 0.2deployed_metal.yamlファイルをopenstack overcloud ceph deployコマンドへの入力として使用します。openstack overcloud ceph deploy commandは、デプロイされた Ceph クラスターを記述する yaml ファイルを出力します。openstack overcloud ceph deploy \ /home/stack/dcn0/deployed_metal.yaml \ --stack dcn0 \ --config ~/dcn0/initial-ceph.conf \ --output ~/dcn0/deployed_ceph.yaml \ --container-image-prepare ~/containers.yaml \ --network-data ~/network-data.yaml \ --cluster dcn0 \ --roles-data dcn_roles.yaml- ハイパーコンバージドインフラストラクチャーをデプロイする場合にのみ、initial-ceph.conf を含めます。
site-name.yaml 環境ファイルでサイトの命名規則を設定します。Nova アベイラビリティーゾーンと Cinder ストレージアベイラビリティーゾーンが一致している必要があります。
parameter_defaults: NovaComputeAvailabilityZone: dcn0 ControllerExtraConfig: nova::availability_zone::default_schedule_zone: dcn0 NovaCrossAZAttach: false CinderStorageAvailabilityZone: dcn0 CinderVolumeCluster: dcn0 GlanceBackendID: dcn0以下のような内容で glance.yaml テンプレートを設定します。
parameter_defaults: GlanceEnabledImportMethods: web-download,copy-image GlanceBackend: rbd GlanceStoreDescription: 'dcn0 rbd glance store' GlanceBackendID: dcn0 GlanceMultistoreConfig: central: GlanceBackend: rbd GlanceStoreDescription: 'central rbd glance store' CephClusterName: centraldcn0 ロケーションのスタックをデプロイします:[d]
openstack overcloud deploy \ --stack dcn0 \ --templates /usr/share/openstack-tripleo-heat-templates/ \ -r ~/dcn0/dcn0_roles.yaml \ -n ~/dcn0/network-data.yaml \ -e /usr/share/openstack-tripleo-heat-templates/environments/network-environment.yaml \ -e /usr/share/openstack-tripleo-heat-templates/environments/dcn-storage.yaml \ -e /usr/share/openstack-tripleo-heat-templates/environments/cephadm/cephadm-rbd-only.yaml \ -e /usr/share/openstack-tripleo-heat-templates/environments/nova-az-config.yaml \ -e /home/stack/overcloud-deploy/central/central-export.yaml \ -e /home/stack/dcn0/deployed_ceph.yaml \ -e /home/stack/dcn-common/central_ceph_external.yaml \ -e /home/stack/dcn0/overcloud-vip-deployed.yaml \ -e /home/stack/dcn0/deployed_metal.yaml \ -e /home/stack/dcn0/overcloud-networks-deployed.yaml \ -e ~/control-plane/glance.yaml