5.2. 使用存储部署中央站点
要使用多个存储部署镜像服务,并将 Ceph Storage 用作后端,请完成以下步骤:
先决条件
- 位于中央位置和每个可用区的 Ceph 集群的硬件,或者在需要存储服务的每个地理位置。
- 位于中央位置和每个可用区的三个镜像服务服务器的硬件,或者在需要存储服务的每个地理位置。
以下是部署两个或多个堆栈的示例:
-
一个堆栈位于中央位置,称为
central
。 -
一个堆栈位于名为
dcn0
的边缘站点。 -
部署的其他堆栈与
dcn0
类似,如dcn1、
dcn2
等。
流程
以下流程概述了中央位置初始部署的步骤。
以下步骤详细介绍了与使用多个存储的镜像服务的 DCN 部署关联的部署命令和环境文件。这些步骤不包括不相关的、但在网络等配置的各个方面。
在主目录中,为您计划部署的每个堆栈创建目录。
mkdir /home/stack/central mkdir /home/stack/dcn0 mkdir /home/stack/dcn1
设置 Ceph 集群的名称,以及相对于可用硬件的配置参数。如需更多信息,请参阅使用自定义配置设置配置 Ceph :
cat > /home/stack/central/ceph.yaml << EOF parameter_defaults: CephClusterName: central CephAnsibleDisksConfig: osd_scenario: lvm osd_objectstore: bluestore devices: - /dev/sda - /dev/sdb CephPoolDefaultSize: 3 CephPoolDefaultPgNum: 128 EOF
使用适合您的环境的角色为中央位置生成角色:
openstack overcloud roles generate Compute Controller CephStorage \ -o ~/central/central_roles.yaml cat > /home/stack/central/role-counts.yaml << EOF parameter_defaults: ControllerCount: 3 ComputeCount: 2 CephStorage: 3 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
准备所有其他模板后,部署
中央
堆栈: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.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
您必须在 openstack overcloud deploy
命令中包含用于配置网络配置的 heat 模板。为边缘架构设计需要 spine 和 leaf 网络。如需了解更多详细信息,请参阅 Spine Leaf Networking。
ceph-ansible.yaml
文件配置有以下参数:
- NovaEnableRbdBackend: true
- GlanceBackend: rbd
当您将这些设置一起使用时,glance.conf 参数 image_import_plugins
由 heat 配置成具有值 image_conversion
,使用 glance image-create-via-import --disk-format qcow2
等命令自动化 QCOW2 镜像转换。
这是 Ceph RBD 的最佳选择。如果要禁用镜像转换,请使用 GlanceImageImportPlugin
参数:
parameter_defaults: GlanceImageImportPlugin: []