openstack.cloud.coe_cluster 模块 – 在 OpenStack 云中管理 COE 集群
注意
此模块是 openstack.cloud 集合 (版本 2.3.0) 的一部分。
如果您使用的是 ansible
包,则可能已经安装了此集合。它不包含在 ansible-core
中。要检查它是否已安装,请运行 ansible-galaxy collection list
。
要安装它,请使用:ansible-galaxy collection install openstack.cloud
。您需要其他要求才能使用此模块,请参阅 需求 获取详细信息。
要在 playbook 中使用它,请指定:openstack.cloud.coe_cluster
。
概要
通过 OpenStack 的 Magnum(又名容器基础设施管理 API)添加或删除 COE(容器编排引擎)集群。
需求
执行此模块的主机需要以下要求。
python >= 3.6
openstacksdk >= 1.0.0
参数
参数 |
注释 |
---|---|
套接字层在 API 调用超时之前应等待多长时间。如果省略此项,则不会将任何内容传递给 requests 库。 |
|
包含云的 auth 插件策略所需的 auth 信息的字典。对于默认的 *password* 插件,这将包含 *auth_url*、*username*、*password*、*project_name* 以及任何关于域的信息(例如,*user_domain_name* 或 *project_domain_name*),如果云支持它们的话。对于其他插件,此参数需要包含该 auth 插件所需的所有参数。如果提供了命名云或存在 OpenStack OS_* 环境变量,则不需要此参数。 |
|
要使用的 auth 插件的名称。如果云使用密码身份验证以外的其他方法,则应在此处指示插件的名称,并相应地更新 *auth* 参数的内容。 |
|
CA 证书包的路径,可用作验证 SSL API 请求的一部分。 |
|
客户端证书的路径,用作 SSL 事务的一部分。 |
|
客户端密钥的路径,用作 SSL 事务的一部分。 |
|
要操作的命名云或云配置。如果 *cloud* 是一个字符串,它引用的是在 OpenStack clouds.yaml 文件中定义的命名云配置。为 *auth* 和 *auth_type* 提供默认值。如果提供了 *auth* 或存在 OpenStack OS_* 环境变量,则不需要此参数。如果 *cloud* 是一个字典,则它包含一个完整的云配置,就像 clouds.yaml 的一部分一样。 |
|
集群模板的模板 ID。 如果 *state* 为 |
|
用于集群节点发现的 URL。 |
|
此集群模板的子节点的类型。 |
|
要从服务目录中获取的端点 URL 类型。 选项
|
|
指示创建的集群是否应具有浮动 IP。 是否启用或不使用云提供商的浮动 IP。一些云提供商使用浮动 IP,一些使用公共 IP,因此 Magnum 提供此选项来指定使用浮动 IP 的选择。 如果未设置,则将使用 *cluster_template_id* 指定的集群模板的 *is_floating_ip_enabled* 值。 当 *is_floating_ip_enabled* 设置为 选项
|
|
要使用的密钥对的名称。 |
|
一个或多个键值对。 |
|
此集群的主节点数量。 Magnum 的 *master_count* 默认值为 1。 |
|
此集群模板的主节点的类型。 |
|
必须赋予集群模板的名称。 |
|
此集群的节点数。 Magnum 的 *node_count* 默认值为 1。 |
|
区域名称。 |
|
OpenStackSDK 的日志级别 选项
|
|
OpenStackSDK 日志文件的路径。如果为空,则不写入日志 |
|
指示所需资源状态。 选项
|
|
Ansible 应等待请求资源多长时间。 默认: |
|
是否验证SSL API请求。 Ansible 2.3之前,默认为 选项
|
|
Ansible是否应等待请求的资源完成。 选项
|
注释
注意
可以使用标准的OpenStack环境变量,例如
OS_USERNAME
,而不是提供显式值。身份验证信息由openstacksdk驱动,这意味着值可以来自/etc/ansible/openstack.yaml、/etc/openstack/clouds.yaml或~/.config/openstack/clouds.yaml中的yaml配置文件,然后来自标准环境变量,最后来自play中的显式参数。更多信息可以在https://docs.openstack.org/openstacksdk/找到。
示例
- name: Create a new Kubernetes cluster
openstack.cloud.coe_cluster:
cloud: devstack
cluster_template_id: k8s-ha
keypair: mykey
master_count: 3
name: k8s
node_count: 5
返回值
常见的返回值已在此处记录,以下是此模块特有的字段。
键 |
描述 |
---|---|
描述集群的字典。 返回:当state为 |
|
公开给最终用户的COE API的端点URL。 返回:成功 示例: |
|
集群模板的UUID。 返回:成功 示例: |
|
bay/cluster中所选COE的版本信息,帮助客户端选择正确的客户端版本。 返回:成功 示例: |
|
创建集群的超时时间(分钟)。如果未设置,则默认为60。 返回:成功 示例: |
|
创建集群的UTC日期和时间。 返回:成功 示例: |
|
用于节点发现的自定义发现URL。COE使用此URL来发现已创建以托管容器的服务器。实际的发现机制随COE而异。在某些情况下,服务会在发现服务中填写服务器信息。在其他情况下,如果未指定discovery_url,则服务将使用https://discovery.etcd.io上的公共发现服务。在这种情况下,服务将为每个bay生成一个唯一的URL,并存储服务器的信息。 返回:成功 示例: |
|
提供bay/cluster内部网络连接的网络名称或ID。 返回:成功 |
|
为bay/cluster中的节点分配网络地址时使用的固定子网。 返回:成功 |
|
启动节点服务器时使用的flavor名称或ID。默认为m1.small。 返回:成功 |
|
此集群的唯一UUID。 返回:成功 示例: |
|
指示创建的集群是否应具有浮动IP。 返回:成功 示例: |
|
指示创建的集群是否应为master节点使用负载均衡器。 返回:成功 示例: |
|
要使用的密钥对的名称。 返回:成功 示例: |
|
一个或多个键值对。 返回:成功 示例: |
|
所有master节点的浮动IP列表。 返回:成功 示例: |
|
将作为bay/cluster的master服务的服务器数量。设置为多个master以启用高可用性。如果在baymodel/cluster模板中指定了master-lb-enabled选项,则master服务器将放置在负载均衡器池中。默认为1。 返回:成功 示例: |
|
此baymodel/cluster模板的master节点的flavor。 返回:成功 示例: |
|
必须赋予集群的名称。 返回:成功 示例: |
|
用作节点的所有服务器的浮动IP列表。 返回:成功 示例: |
|
此集群的主节点数量。 返回:成功 示例: |
|
来自Heat编排服务的编排堆栈的参考UUID。 返回:成功 示例: |
|
来自heat堆栈的集群状态。 返回:成功 示例: |
|
来自heat堆栈的集群状态原因。 返回:成功 示例: |
|
更新集群的UTC日期和时间。 返回:成功 示例: |
|
此集群的唯一UUID。 返回:成功 示例: |