4.2. 创建用于自动扩展的堆栈部署


创建用于自动扩展的堆栈部署。此流程使用可能与您环境不同的示例值。

先决条件

  • 您已为自动扩展实例配置了 heat 模板。

流程

  1. 访问 openstack 客户端 pod:

    $ oc rsh openstackclient
    Copy to Clipboard Toggle word wrap
  2. 创建堆栈:

    $ openstack stack create -t /tmp/templates/autoscaling.yaml -e /tmp/templates/resources.yaml stack1
    Copy to Clipboard Toggle word wrap

验证

  1. 验证您是否成功创建了堆栈:

    $ openstack stack show stack1 -c id -c stack_status
    +--------------+--------------------------------------+
    | Field        | Value                                |
    +--------------+--------------------------------------+
    | id           | 9ac44c45-4917-4cd5-a713-9ef7828d8457 |
    | stack_status | CREATE_COMPLETE                      |
    +--------------+--------------------------------------+
    Copy to Clipboard Toggle word wrap
  2. 验证您是否创建了堆栈资源,包括警报、扩展策略和自动扩展组:

    $ export STACK_ID=$(openstack stack show stack1 -c id -f value)
    
    $ openstack stack resource list $STACK_ID
    +------------------+--------------------------------------+----------------------------+-----------------+----------------------+
    | resource_name    | physical_resource_id                 | resource_type              | resource_status | updated_time         |
    +------------------+--------------------------------------+----------------------------+-----------------+----------------------+
    | scaleup_policy   | 3cfb2a746dcf4fb6b3284b6c164e4ff5     | OS::Heat::ScalingPolicy    | CREATE_COMPLETE | 2024-03-26T09:17:54Z |
    | scaledown_policy | ef60360ae7564abda088e67b3cc542f4     | OS::Heat::ScalingPolicy    | CREATE_COMPLETE | 2024-03-26T09:17:54Z |
    | cpu_alarm_low    | 95503054-aada-457c-b586-f98a88b00962 | OS::Aodh::PrometheusAlarm  | CREATE_COMPLETE | 2024-03-26T09:17:54Z |
    | cpu_alarm_high   | 65be604f-1262-4567-851d-ac28ae1bb178 | OS::Aodh::PrometheusAlarm  | CREATE_COMPLETE | 2024-03-26T09:17:54Z |
    | autoscalinggroup | 8c4fea31-3beb-47b7-841d-fe82fb284628 | OS::Heat::AutoScalingGroup | CREATE_COMPLETE | 2024-03-26T09:17:54Z |
    +------------------+--------------------------------------+----------------------------+-----------------+----------------------+
    Copy to Clipboard Toggle word wrap
  3. 创建堆栈验证实例是否已启动:

    $ openstack server list --long | grep $STACK_ID
    | 9e2e9266-d69e-4de1-8b3a-e75f7111d1d9 | autoscaling_server_stack1-autoscalinggroup-oqmxiukze6dg-hdtuapbjxcow-q366nn4k5utr | ACTIVE | None       | Running     | private=192.168.0.209, 192.168.122.205 | cirros     | 239959f7-3d16-4744-8eca-435cdfc1a4cf | m1.small | nova              | edpm-compute-0.ctlplane.example.com | metering.server_group='9ac44c45-4917-4cd5-a713-9ef7828d8457' | UP          |
    Copy to Clipboard Toggle word wrap
  4. 验证您是否为堆栈创建了警报:

    1. 列出警报 ID。如果警报的状态为 insufficient data,则在数据收集后尝试再次检查:

      $ openstack alarm list
      +--------------------------------------+------------+------------------------------------+-------+----------+---------+
      | alarm_id                             | type       | name                               | state | severity | enabled |
      +--------------------------------------+------------+------------------------------------+-------+----------+---------+
      | 65be604f-1262-4567-851d-ac28ae1bb178 | prometheus | stack1-cpu_alarm_high-q5yw2fg4h2vh | ok    | low      | True    |
      | 95503054-aada-457c-b586-f98a88b00962 | prometheus | stack1-cpu_alarm_low-hjmpszetdpsw  | alarm | low      | True    |
      +--------------------------------------+------------+------------------------------------+-------+----------+---------+
      Copy to Clipboard Toggle word wrap
    2. 列出堆栈的资源,并记下 cpu_alarm_highcpu_alarm_low 资源的 physical_resource_id 值:

      $ openstack stack resource list $STACK_ID
      +------------------+--------------------------------------+----------------------------+-----------------+----------------------+
      | resource_name    | physical_resource_id                 | resource_type              | resource_status | updated_time         |
      +------------------+--------------------------------------+----------------------------+-----------------+----------------------+
      | scaleup_policy   | 3cfb2a746dcf4fb6b3284b6c164e4ff5     | OS::Heat::ScalingPolicy    | CREATE_COMPLETE | 2024-03-26T09:17:54Z |
      | scaledown_policy | ef60360ae7564abda088e67b3cc542f4     | OS::Heat::ScalingPolicy    | CREATE_COMPLETE | 2024-03-26T09:17:54Z |
      | cpu_alarm_low    | 95503054-aada-457c-b586-f98a88b00962 | OS::Aodh::PrometheusAlarm  | CREATE_COMPLETE | 2024-03-26T09:17:54Z |
      | cpu_alarm_high   | 65be604f-1262-4567-851d-ac28ae1bb178 | OS::Aodh::PrometheusAlarm  | CREATE_COMPLETE | 2024-03-26T09:17:54Z |
      | autoscalinggroup | 8c4fea31-3beb-47b7-841d-fe82fb284628 | OS::Heat::AutoScalingGroup | CREATE_COMPLETE | 2024-03-26T09:17:54Z |
      +------------------+--------------------------------------+----------------------------+-----------------+----------------------+
      Copy to Clipboard Toggle word wrap
  5. 验证堆栈是否存在指标资源和测量。为 server_group 使用堆栈 ID:

    $ openstack metric query "(rate(ceilometer_cpu{server_group=~'ac2e87ba-f55e-46e7-8f8d-f09fe91d63d1'}[150s]))/10000000"
    +---------+--------------------------------------+----------------------------------------+----------------------------------+--------------------------------------+-------------------------------------------------------------------------+--------------------------------------+------+------+----------------------------------+----------------------------------------------------------+--------------------+
    | counter | cpu                              	| instance                           	| project                      	| resource                         	| resource_name                                                       	| server_group                     	| type | unit | user                         	| vm_instance                                          	| value          	|
    +---------+--------------------------------------+----------------------------------------+----------------------------------+--------------------------------------+-------------------------------------------------------------------------+--------------------------------------+------+------+----------------------------
    Copy to Clipboard Toggle word wrap
返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2025 Red Hat