5.3. 外部 Ceph の統合
分散コンピュートノード (DCN) アーキテクチャーの中央サイトをデプロイし、事前にデプロイした Red Hat Ceph Storage ソリューションを統合することができます。
前提条件
- 中央サイトおよび各アベイラビリティーゾーンまたはストレージサービスが必要な各地区での Ceph クラスター用ハードウェア
- ハイパーコンバージドアーキテクチャーでエッジサイトをデプロイする必要があります。
- 中央サイトおよび各アベイラビリティーゾーンまたはストレージサービスが必要な各地区での 3 つの Image サービスサーバー用ハードウェア
2 つまたはそれ以上のスタックで設定されるデプロイメントの例を以下に示します。
-
中央サイトに 1 つのスタック (
central
) -
エッジサイトに 1 つのスタック (
dcn0
) -
dcn0
と同様にデプロイされた追加のスタック (dcn1
、dcn2
、等)
オーバークラウドと既存の Red Hat Ceph クラスターの統合 に記載されているプロセスに従って、中央の場所をインストールして既存の Red Hat Ceph Storage ソリューションと統合することができます。Red Hat Ceph Storage を DCN デプロイメントの中央サイトと統合するための特別な要件はありませんが、オーバークラウドをデプロイする前に DCN 固有の手順を完了する必要があります。
ホームディレクトリーに、デプロイする各スタックのディレクトリーを作成します。これを使用して、それぞれのサイト用に設計されたテンプレートを分離します。
mkdir /home/stack/central mkdir /home/stack/dcn0 mkdir /home/stack/dcn1
Red Hat OpenStack Platform director が管理するロールを使用して、中央の場所のロールを生成します。外部 Ceph と統合する場合は、Ceph ロールを使用しないでください。
cat > /home/stack/central/role-counts.yaml << EOF parameter_defaults: ControllerCount: 3 ComputeCount: 2 EOF
環境ファイル ~/central/central-images-env.yaml を生成します。
sudo openstack tripleo container image prepare \ -e containers.yaml \ --output-env-file ~/central/central-images-env.yaml
site-name.yaml 環境ファイルでサイトの命名規則を設定します。Nova アベイラビリティーゾーンと Cinder ストレージアベイラビリティーゾーンが一致している必要があります。
cat > /home/stack/central/site-name.yaml << EOF parameter_defaults: NovaComputeAvailabilityZone: central ControllerExtraConfig: nova::availability_zone::default_schedule_zone: central NovaCrossAZAttach: false CinderStorageAvailabilityZone: central GlanceBackendID: central EOF
以下のような内容で glance.yaml テンプレートを設定します。
parameter_defaults: GlanceEnabledImportMethods: web-download,copy-image GlanceBackend: rbd GlanceStoreDescription: 'central rbd glance store' GlanceBackendID: central CephClusterName: central
Ceph が Red Hat OpenStack Platform director を使用せずにデプロイされる場合には、
ceph-ansible.yaml
環境ファイルを使用しないでください。代わりにceph-ansible-external.yaml
環境ファイルを使用してください。openstack overcloud deploy \ --stack central \ --templates /usr/share/openstack-tripleo-heat-templates/ \ -r ~/central/central_roles.yaml \ ... -e /usr/share/openstack-tripleo-heat-templates/environments/ceph-ansible/ceph-ansible-external.yaml \ -e /usr/share/openstack-tripleo-heat-templates/environments/nova-az-config.yaml \ -e ~/central/central-images-env.yaml \ -e ~/central/role-counts.yaml \ -e ~/central/site-name.yaml \ -e ~/central/ceph.yaml \ -e ~/central/glance.yaml