如何在OpenStack中从命令行创建可用区?

如何在OpenStack中从命令行创建可用区?

译文
作者:布加迪编译 2019-08-27 08:00:10

开发

前端

OpenStack 在OpenStack术语中,可用区(AZ)的定义是计算(Nova)、块存储(cinder)和网络服务(neutron)的逻辑分区。需要可用区来隔离生产环境和非生产环境等环境的工作负载。

【51CTO.com快译】在OpenStack术语中,可用区(AZ)的定义是计算(Nova)、块存储(cinder)和网络服务(neutron)的逻辑分区。需要可用区来隔离生产环境和非生产环境等环境的工作负载。

假设OpenStack中一个租户想要在生产环境和非生产环境中部署虚拟机,于是想在Openstack中创建这种类型的架构,我们先要确定哪些计算将被视为生产环境和非生产环境,然后我们要创建主机聚合组(host-aggregate group),我们会将计算添加到主机聚合组,然后我们将该主机聚合组映射到可用区。

我们在本教程中将演示如何通过命令行在Openstack中创建和使用计算可用区。

创建计算可用区

无论何时部署OpenStack,Nova都是自动创建的默认可用区(AZ),所有计算节点都属于Nova AZ。从控制器节点运行以下Openstack命令,列出可用区: 

  1. ~# source openrc 
  2. ~# openstack availability zone list 
  3. +-----------+-------------+ 
  4. | Zone Name | Zone Status | 
  5. +-----------+-------------+ 
  6. | internal  | available   | 
  7. | nova      | available   | 
  8. | nova      | available   | 
  9. | nova      | available   | 
  10. +-----------+-------------+ 
  11. ~# 

想列出计算的可用区,运行以下Openstack命令: 

  1. ~# openstack availability zone list --compute 
  2. +-----------+-------------+ 
  3. | Zone Name | Zone Status | 
  4. +-----------+-------------+ 
  5. | internal  | available   | 
  6. | nova      | available   | 
  7. +-----------+-------------+ 
  8. ~# 

想列出映射到Nova可用区的所有计算节点,执行以下命令: 

  1. ~# openstack host list | grep -E "Zone|nova" 
  2. | Host Name              | Service     | Zone     | 
  3. | compute-0-1            | compute     | nova     | 
  4. | compute-0-2            | compute     | nova     | 
  5. | compute-0-4            | compute     | nova     | 
  6. | compute-0-3            | compute     | nova     | 
  7. | compute-0-8            | compute     | nova     | 
  8. | compute-0-6            | compute     | nova     | 
  9. | compute-0-9            | compute     | nova     | 
  10. | compute-0-5            | compute     | nova     | 
  11. | compute-0-7            | compute     | nova     | 
  12. ~# 

不妨创建两个主机聚合组,名为production和non-production,将计算4、5和6添加到production主机聚合组,将计算7、8和9添加到non-production主机聚合组。

使用以下OpenStack命令,创建Production和Non-Production主机聚合: 

  1. ~# openstack aggregate create production 
  2. +-------------------+----------------------------+ 
  3. | Field             | Value                      | 
  4. +-------------------+----------------------------+ 
  5. | availability_zone | None                       | 
  6. | created_at        | 2019-08-17T03:02:41.561259 | 
  7. | deleted           | False                      | 
  8. | deleted_at        | None                       | 
  9. | id                | 7                          | 
  10. name              | production                 | 
  11. | updated_at        | None                       | 
  12. +-------------------+----------------------------+ 
  13. ~# openstack aggregate create non-production 
  14. +-------------------+----------------------------+ 
  15. | Field             | Value                      | 
  16. +-------------------+----------------------------+ 
  17. | availability_zone | None                       | 
  18. | created_at        | 2019-08-17T03:02:53.806713 | 
  19. | deleted           | False                      | 
  20. | deleted_at        | None                       | 
  21. | id                | 10                         | 
  22. name              | non-production             | 
  23. | updated_at        | None                       | 
  24. +-------------------+----------------------------+ 
  25. ~# 

现在创建可用区,并将它与各自的主机聚合组关联起来。

语法: 

  1. # openstack aggregate set –zone <az_name>  <host_aggregate_name> 
  2. ~# openstack aggregate set --zone production-az production 
  3. ~# openstack aggregate set --zone non-production-az non-production 

最后,将计算主机添加到主机聚合群。

语法: 

  1. # openstack aggregate add host  
  2. ~# openstack aggregate add host production compute-0-4  
  3. ~# openstack aggregate add host production compute-0-5  
  4. ~# openstack aggregate add host production compute-0-6 

同样,将计算主机添加到non-production主机聚合组: 

  1. ~# openstack aggregate add host non-production compute-0-7 
  2. ~# openstack aggregate add host non-production compute-0-8 
  3. ~# openstack aggregate add host non-production compute-0-9 

执行以下Openstack命令,验证主机聚合组及其可用区: 

  1. ~# openstack aggregate list 
  2. +----+----------------+-------------------+ 
  3. | ID | Name           | Availability Zone | 
  4. +----+----------------+-------------------+ 
  5. |  7 | production     | production-az     | 
  6. | 10 | non-production | non-production-az | 
  7. +----+----------------+-------------------+ 
  8. ~# 

运行以下命令,列出与AZ和主机聚合组有关的计算: 

  1. ~# openstack aggregate show production 
  2. +-------------------+--------------------------------------------+ 
  3. | Field             | Value                                      | 
  4. +-------------------+--------------------------------------------+ 
  5. | availability_zone | production-az                              | 
  6. | created_at        | 2019-08-17T03:02:42.000000                 | 
  7. | deleted           | False                                      | 
  8. | deleted_at        | None                                       | 
  9. | hosts             | [u'compute-0-4', u'compute-0-5', u'compute-0-6'] | 
  10. | id                | 7                                          | 
  11. name              | production                                 | 
  12. | properties        |                                            | 
  13. | updated_at        | None                                       | 
  14. +-------------------+--------------------------------------------+ 
  15. ~# openstack aggregate show non-production 
  16. +-------------------+---------------------------------------------+ 
  17. | Field             | Value                                       | 
  18. +-------------------+---------------------------------------------+ 
  19. | availability_zone | non-production-az                           | 
  20. | created_at        | 2019-08-17T03:02:54.000000                  | 
  21. | deleted           | False                                       | 
  22. | deleted_at        | None                                        | 
  23. | hosts             | [u'compute-0-7', u'compute-0-8', u'compute-0-9'] | 
  24. | id                | 10                                          | 
  25. name              | non-production                              | 
  26. | properties        |                                             | 
  27. | updated_at        | None                                        | 
  28. +-------------------+---------------------------------------------+ 
  29. ~# 

上述命令的输出证实:我们已成功地创建了主机聚合组和可用区。

在可用区内启动虚拟机

现在不妨在这两个可用区内创建两个虚拟机;想在某个特定的可用区内创建虚拟机,运行以下命令:

语法:

  1. # openstack server create –flavor –image –nic net-id= –security-group –key-name –availability-zone  

例子如下所示:

  1. ~# openstack server create --flavor m1.small --image Cirros --nic net-id=37b9ab9a-f198-4db1-a5d6-5789b05bfb4c --security-group f8dda7c3-f7c3-423b-923a-2b21fe0bbf3c --key-name mykey --availability-zone production-az test-vm-prod-az 

运行以下命令以验证虚拟机的细节:

  1. ~# openstack server show test-vm-prod-az 

想在可用区下某个特定的计算节点内创建虚拟机,运行以下命令:

语法:

  1. # openstack server create –flavor –image –nic net-id= –security-group –key-name {Keypair-Name} –availability-zone : 

假设我们想在特定计算(compute-0-6)上的生产可用区下启用虚拟机,为了执行这项操作,运行以下命令:

  1. ~# openstack server create --flavor m1.small --image Cirros --nic net-id=37b9ab9a-f198-4db1-a5d6-5789b05bfb4c --security-group f8dda7c3-f7c3-423b-923a-2b21fe0bbf3c --key-name mykey --availability-zone production-az:compute-0-6 test-vm-prod-az-host 

执行以下命令以验证虚拟机的细节:

  1. ~# openstack server show test-vm-prod-az-host 

上述命令的输出会类似如下:

同样,我们可以在非生产可用区内创建虚拟机,例子如下所示:

  1. ~# openstack server create --flavor m1.small --image Cirros --nic net-id=37b9ab9a-f198-4db1-a5d6-5789b05bfb4c --security-group f8dda7c3-f7c3-423b-923a-2b21fe0bbf3c --key-name mykey --availability-zone non-production-az vm-nonprod-az 

使用以下命令以验证虚拟机的细节:

  1. ~# openstack server show vm-nonprod-az 

上述命令的输出会类似如下:

删除主机聚合组和可用区

假设我们想删除上述创建的主机聚合组和可用区;为此,我们先得从主机聚合组删除主机,使用以下命令:

  1. ~# openstack aggregate show production 

上述命令将为我们列出已添加到生产主机聚合组的计算主机。

使用以下命令从主机聚合机删除主机:

语法: 

  1. # openstack aggregate remove host <host-aggregate-name> <compute-name
  2. ~# openstack aggregate remove host production compute-0-4 
  3. ~# openstack aggregate remove host production compute-0-5 
  4. ~# openstack aggregate remove host production compute-0-6 
  5. 一旦你从该组删除所有主机,随后重新运行以下命令: 
  6. ~# openstack aggregate show production 
  7. +-------------------+----------------------------+ 
  8. | Field             | Value                      | 
  9. +-------------------+----------------------------+ 
  10. | availability_zone | production-az              | 
  11. | created_at        | 2019-08-17T03:02:42.000000 | 
  12. | deleted           | False                      | 
  13. | deleted_at        | None                       | 
  14. | hosts             | []                         | 
  15. | id                | 7                          | 
  16. name              | production                 | 
  17. | properties        |                            | 
  18. | updated_at        | None                       | 
  19. +-------------------+----------------------------+ 

我们可以从上述输出看出,没有与生产主机聚合组关联的计算主机,现在我们可以删除组了。

使用以下命令来删除主机聚合组及关联的可用区:

  1. ~# openstack aggregate delete production 

运行以下命令,以核实可用区有没有删除: 

  1. ~# openstack availability zone list | grep -i production-az  
  2. ~# 

同样,你可以参照上述步骤来删除非生产主机聚合组及其可用区。

以上就是本教程的全部内容,但愿上述内容可帮助你深入了解OpenStack主机聚合和可用区,欢迎留言交流。

原文标题:How to Create Availability Zones in OpenStack from Command Line,作者:Pradeep Kumar

【51CTO译稿,合作站点转载请注明原文译者和出处为51CTO.com】

 

文章来源网络,作者:管理,如若转载,请注明出处:https://shuyeidc.com/wp/230431.html<

(0)
管理的头像管理
上一篇2025-04-19 05:43
下一篇 2025-04-19 05:44

相关推荐

  • 自营机房和代理机房有什么区别,哪个更稳定可靠

    自营机房和代理机房最根本的区别在于基础设施的归属权与运营主体,自营机房由服务商自主建设、维护并持证运营,提供全程可控的IDC服务;代理机房则通过转售第三方资源,缺乏底层控制力, 选择自营还是代理,直接关系到业务的稳定性、安全边际和售后深度,近年来,随着工信部对IDC行业持证经营的要求逐步收紧,越来越多企业开始关……

    2026-07-26
    0
  • 高防服务器常见的套路猫腻如何辨别,有哪些常见的坑?

    辨别高防服务器猫腻的关键在于核实防御能力真实性、检查机房资质与服务条款,避免被低价宣传和虚假承诺误导,常见猫腻有哪些虚假防御能力不少服务商声称提供单机百G防御,实际可能只有几十G,甚至多个用户共享同一防御带宽,一旦遭遇真实攻击,防护效果远低于宣传值,部分商家还会利用“突发清洗”概念,只在攻击峰值时短暂启用清洗设……

    2026-07-26
    0
  • 选择IDC服务商千万不能忽略哪几点,有哪些注意事项?

    选择IDC服务商,资质和合规性是最容易被忽视却至关重要的环节,一家没有完整资质的服务商,无论价格多低都不值得选择, 近年来,企业数字化转型加速,对IDC服务的需求持续增长,但服务商水平参差不齐,如果你正在挑选IDC服务商,需要从资质、机房、服务、成本等几个核心维度仔细考察,才能避免业务埋雷,资质认证:合规经营的……

    2026-07-26
    0
  • 低价服务器到底为什么不能买,有什么风险?

    低价服务器看似省钱,实则隐藏性能差、不稳定、数据安全无保障、售后缺失甚至跑路等风险,最终可能让你付出更高代价,低价服务器常见的“坑”性能陷阱:超售严重低价服务器的核心套路是超售,一台物理机卖给几十甚至上百个用户,CPU、内存、带宽全面拥挤,你买到的所谓“独享”资源,实际上与邻居争抢,高峰期响应延迟直接拉满,用……

    2026-07-26
    0
  • 新手买站群服务器怎么避坑不被坑,推荐哪家服务商比较好?

    新手买站群服务器,踩坑的根源往往在于只看价格不看资质,要避开风险,必须从持牌经营、机房实地、IP池质量三个维度入手,缺一不可,站群服务器常见的“坑”有哪些IP被“污染”或“墙”了多数新手贪便宜,买到被滥用过的IP段,这类IP发出去的邮件被拒,收录慢,甚至直接被墙,你花时间搭起来的站群,还没开始跑流量就废了,IP……

    2026-07-26
    0

发表回复

您的邮箱地址不会被公开。必填项已用 * 标注