openstack.container_infrastructure_management.v1.cluster

Cluster 类

Cluster 类继承自 Resource

class openstack.container_infrastructure_management.v1.cluster.Cluster(_synchronized=False, connection=None, **attrs)

基础资源

参数:
  • _synchronized (bool) – 这不打算直接使用。请参阅 new()existing()

  • connection (openstack.connection.Connection) – 对正在使用的 Connection 的引用。默认为 None,允许在单元测试中等情况下使用不带活动 Connection 的 Resource 对象。Resource 代码中对 self._connection 的使用应自行检查是否为 None。

resources_key = 'clusters'

资源的复数形式的键。

base_path = '/clusters'

此资源的 URI 的基本部分。

allow_create = True

允许对此资源进行创建操作。

allow_fetch = True

允许对此资源进行获取操作。

allow_commit = True

允许对此资源进行更新操作。

allow_delete = True

允许对此资源进行删除操作。

allow_list = True

允许对此资源进行列表操作。

allow_patch = True

允许对此资源进行 patch 操作。

commit_method = 'PATCH'

提交资源的 HTTP 方法 (PUT、PATCH、POST)

commit_jsonpatch = True

提交是否使用 JSON patch 格式。

api_address

暴露给最终用户的 COE API 的端点 URL。

cluster_template_id

集群模板的 UUID。

coe_version

所选 COE 在 bay/cluster 中的版本信息,有助于客户端选择正确的客户端版本。

create_timeout

集群创建的超时时间,以分钟为单位。期望值为正整数。如果在集群创建过程中达到超时时间,则操作将被中止,并且集群状态将被设置为 CREATE_FAILED。默认值为 60。

created_at

创建资源的时间。日期和时间戳格式为 ISO 8601

CCYY-MM-DDThh:mm:ss±hh:mm

例如,2015-08-27T09:49:58-05:00。如果包含在内,则 ±hh:mm 值是与 UTC 的时区偏移量。

discovery_url

用于节点发现的自定义发现 URL。这由 COE 用于发现已创建用于托管容器的服务器。实际的发现机制因 COE 而异。在某些情况下,服务会将服务器信息填充到发现服务中。在其他情况下,如果未指定 discovery_url,则服务将使用 https://discovery.etcd.io 上的公共发现服务。在这种情况下,服务将为每个 bay 存储服务器的信息并生成唯一的 URL。

fixed_network

为 bay/cluster 的内部网络提供连接的网络名称或 ID。

fixed_subnet

在 bay/cluster 中为节点分配网络地址时使用的固定子网。

flavor_id

启动节点服务器时使用的风味名称或 ID。默认为 m1.small。

is_floating_ip_enabled

是否启用云提供商的浮动 IP。一些云提供商使用浮动 IP,而另一些云提供商使用公共 IP。设置为 true 时,将使用浮动 IP。如果未提供此值,则将使用模板中提供的 floating_ip_enabled 的值。

is_master_lb_enabled

是否启用主负载均衡器。由于 bay/cluster 中可能存在多个 master,因此会创建一个 Neutron 负载均衡器,以提供 bay/cluster 的 API 端点并将其请求定向到 master。在某些情况下,例如当 LBaaS 服务不可用时,可以将此选项设置为 false 以创建没有负载均衡器的 bay/cluster。在这种情况下,其中一个 master 将作为 API 端点。默认值为 true,即为 bay 创建负载均衡器。

keypair

要在 bay/cluster 服务器上配置的 SSH 密钥对的名称,用于 SSH 访问。用户需要密钥才能 SSH 到 bay/cluster 中的服务器。登录名特定于 bay/cluster 驱动程序。例如,对于 fedora-atomic 镜像,默认登录名是 fedora。

labels

任意标签。接受的键和有效值由 bay/cluster 驱动程序定义。它们用作传递特定于 bay/cluster 驱动程序的附加参数的一种方式。

master_addresses

所有 master 节点的浮动 IP 列表。

master_count

将作为 bay/cluster 的 master 的服务器数量。设置为多个 master 以启用高可用性。如果模板中指定了 master-lb-enabled 选项,则 master 服务器将放置在负载均衡器池中。默认为 1。

master_flavor_id

此 baymodel/cluster 模板的 master 节点的风味。

name

资源的名称。

node_count

将作为 bay/cluster 中节点使用的服务器数量。默认为 1。

node_addresses

所有充当节点的服务器的浮动 IP 列表。

stack_id

来自 Heat 编排服务的编排堆栈的引用 UUID。

status

bay/cluster 的当前状态。

status_reason

bay/cluster 当前状态的原因。

updated_at

更新资源的时间。日期和时间戳格式为 ISO 8601

CCYY-MM-DDThh:mm:ss±hh:mm

例如,2015-08-27T09:49:58-05:00。如果包含在内,则 ±hh:mm 值是与 UTC 的时区偏移量。如果未设置 updated_at 日期和时间戳,则其值为 null。

uuid

集群的 UUID。

resize(session, *, node_count, nodes_to_remove=None)

调整集群大小。

参数:
  • node_count – 将作为 bay/cluster 中节点的服务器数量。默认值为 1。

  • nodes_to_remove – 如果缩小集群大小,则将删除的服务器 ID 列表。

返回值:

调整大小后的集群的 UUID。

引发:

NotFoundException 如果未找到资源。

upgrade(session, *, cluster_template, max_batch_size=None)

升级集群。

参数:
  • cluster_template – 集群模板的 UUID。

  • max_batch_size – 每次执行升级时的最大批处理大小。默认值为 1

返回值:

更新后的集群的 UUID。

引发:

NotFoundException 如果未找到资源。