Octavia Flavors¶
Octavia Flavors 是操作员为用户提供增强负载均衡能力的一项强大工具。 Octavia Flavor 是操作员创建的一组预定义的提供商配置选项。 当用户请求负载均衡器时,他们可以请求使用已定义的 Flavor 构建负载均衡器。 Flavors 是按提供商驱动程序定义的,并暴露每个提供商的独特功能。
本文档旨在向希望为其用户创建 Flavors 的操作员解释 Flavors 功能。
创建新的 Octavia Flavor 有三个步骤
确定将在 Flavor 中配置的提供商 Flavor 功能。
使用 Flavor 功能创建 Flavor 配置文件。
创建用户可见的 Flavor。
提供商功能¶
要开始定义 Flavor 的过程,您需要查看提供商驱动程序暴露的 Flavor 功能。 为此,您可以使用 提供商驱动程序 Flavor 功能 API 或 OpenStack 客户端。
openstack loadbalancer provider capability list <provider>
使用默认 RBAC 策略,此命令仅对管理员可用。
这将列出提供商支持的所有 Flavor 功能,并且可以通过 Flavor 进行配置。
例如,amphora 提供商支持 loadbalancer_topology 功能,以及许多其他功能
+-----------------------+---------------------------------------------------+
| name | description |
+-----------------------+---------------------------------------------------+
| loadbalancer_topology | The load balancer topology. One of: SINGLE - One |
| | amphora per load balancer. ACTIVE_STANDBY - Two |
| | amphora per load balancer. |
| ... | ... |
+-----------------------+---------------------------------------------------+
Flavor 配置文件¶
创建 Flavor 的下一步是定义 Flavor 配置文件。 Flavor 配置文件包括提供商和 Flavor 数据。 Flavor 功能是给定提供商支持的 Flavor 数据设置。 可以使用 Flavor 配置文件 API 或 OpenStack 客户端创建 Flavor 配置文件。
例如,要为 amphora 提供商创建 Flavor,我们将创建以下 Flavor 配置文件
openstack loadbalancer flavorprofile create --name amphora-single-profile --provider amphora --flavor-data '{"loadbalancer_topology": "SINGLE"}'
使用默认 RBAC 策略,此命令仅对管理员可用。
这将为 amphora 提供商创建一个 Flavor 配置文件,该配置文件创建一个具有单个 amphora 的负载均衡器。 创建 Flavor 配置文件时,将使用提供商验证设置,以确保提供商可以支持指定的 Capability。
上述命令的输出是
+---------------+--------------------------------------+
| Field | Value |
+---------------+--------------------------------------+
| id | 72b53ac2-b191-48eb-8f73-ed012caca23a |
| name | amphora-single-profile |
| provider_name | amphora |
| flavor_data | {"loadbalancer_topology": "SINGLE"} |
+---------------+--------------------------------------+
规格¶
最后,我们将创建用户可见的 Octavia Flavor。 这定义了用户将看到并用于使用 Octavia Flavor 创建负载均衡器的信息。 Flavor 的名称是用户在创建负载均衡器时可以使用术语。 我们鼓励您包含详细的描述,以便用户清楚地了解您提供的 Flavor 的功能。
为了继续上面的示例,要使用我们在上一步中创建的 Flavor 配置文件创建 Flavor,我们调用
openstack loadbalancer flavor create --name standalone-lb --flavorprofile amphora-single-profile --description "A non-high availability load balancer for testing." --enable
这将创建一个用户可见的 Octavia Flavor,该 Flavor 将创建一个使用一个 amphora 且不是高可用的负载均衡器。 用户可以在创建新的负载均衡器时指定此 Flavor。 禁用的 Flavors 对用户仍然可见,但他们将无法使用该 Flavor 创建负载均衡器。
上述命令的输出是
+-------------------+--------------------------------------+
| Field | Value |
+-------------------+--------------------------------------+
| id | 25cda2d8-f735-4744-b936-d30405c05359 |
| name | standalone-lb |
| flavor_profile_id | 72b53ac2-b191-48eb-8f73-ed012caca23a |
| enabled | True |
| description | A non-high availability load |
| | balancer for testing. |
+-------------------+--------------------------------------+
此时,Flavor 可供创建新负载均衡器的用户使用。