Orchestration API¶
有关如何使用编排的详细信息,请参阅 使用 OpenStack 编排
Orchestration 类¶
编排高级接口可通过 Connection 对象的 orchestration 成员获得。只有检测到服务时,才会添加 orchestration 成员。
堆栈操作¶
- class openstack.orchestration.v1._proxy.Proxy(session, *, service_type=None, service_name=None, interface=None, region_name=None, endpoint_override=None, version=None, auth=None, user_agent=None, connect_retries=None, logger=None, allow=None, additional_headers=None, client_name=None, client_version=None, allow_version_hack=None, global_request_id=None, min_version=None, max_version=None, default_microversion=None, status_code_retries=None, retriable_status_codes=None, raise_exc=None, rate_limit=None, concurrency=None, connect_retry_delay=None, status_code_retry_delay=None, statsd_client=None, statsd_prefix=None, prometheus_counter=None, prometheus_histogram=None, influxdb_config=None, influxdb_client=None)
- create_stack(preview=False, **attrs)
从属性创建新的堆栈
- find_stack(name_or_id, ignore_missing=True, resolve_outputs=True)
查找单个堆栈
- 参数:
name_or_id – 堆栈的名称或 ID。
ignore_missing (bool) – 当设置为
False时,如果资源不存在,将引发NotFoundException。当设置为True时,尝试查找不存在的资源时将返回 None。
- 返回值:
一个
Stack或 None
- stacks(**query)
返回堆栈生成器
- 参数:
query (kwargs) – 可选查询参数,用于发送到服务器以限制返回的资源。
- 返回值:
一个堆栈对象生成器
- 返回类型:
- get_stack(stack, resolve_outputs=True)
获取单个堆栈
- 参数:
stack – 该值可以是堆栈的 ID 或
Stack实例。resolve_outputs – 是否应该包含已解析的输出的堆栈。
- 返回值:
一个
Stack- 引发:
NotFoundException,当找不到资源时。
- update_stack(stack, **attrs, preview=False)
更新堆栈
- 参数:
stack – 该值可以是堆栈的 ID 或
Stack实例。attrs (kwargs) – 要更新由
value表示的堆栈的属性。
- 返回值:
更新后的堆栈
- 返回类型:
- 引发:
NotFoundException,当找不到资源时。
- delete_stack(stack, ignore_missing=True)
删除堆栈
- 参数:
stack – 该值可以是堆栈的 ID 或
Stack实例。ignore_missing (bool) – 当设置为
False时,如果堆栈不存在,将引发NotFoundException。当设置为True时,尝试删除不存在的堆栈时不会设置任何异常。
- 返回值:
无
- export_stack(stack)
以 JSON 格式获取堆栈数据
- 参数:
stack – 该值可以是 ID、名称或
Stack的实例- 返回值:
包含堆栈数据的字典。
- 引发:
NotFoundException,当找不到资源时。
- get_stack_template(stack)
获取堆栈使用的模板
- 参数:
stack – 该值可以是堆栈的 ID 或
Stack的实例- 返回值:
一个
StackTemplate对象- 引发:
NotFoundException,当找不到资源时。
- get_stack_environment(stack)
获取堆栈使用的环境
- 参数:
stack – 该值可以是堆栈的 ID 或
Stack的实例- 返回值:
一个
StackEnvironment对象- 引发:
NotFoundException,当找不到资源时。
堆栈资源操作¶
- class openstack.orchestration.v1._proxy.Proxy(session, *, service_type=None, service_name=None, interface=None, region_name=None, endpoint_override=None, version=None, auth=None, user_agent=None, connect_retries=None, logger=None, allow=None, additional_headers=None, client_name=None, client_version=None, allow_version_hack=None, global_request_id=None, min_version=None, max_version=None, default_microversion=None, status_code_retries=None, retriable_status_codes=None, raise_exc=None, rate_limit=None, concurrency=None, connect_retry_delay=None, status_code_retry_delay=None, statsd_client=None, statsd_prefix=None, prometheus_counter=None, prometheus_histogram=None, influxdb_config=None, influxdb_client=None)
- resources(stack, **query)
返回资源生成器
- 参数:
stack – 这可以是堆栈对象,也可以是资源要列出的堆栈的名称。
query (kwargs) – 可选查询参数,用于发送到服务器以限制返回的资源。
- 返回值:
如果堆栈存在并且其中包含资源,则返回资源对象生成器。如果找不到堆栈,则会引发异常。
- 返回类型:
一个
Resource生成器- 引发:
NotFoundException,当找不到堆栈时。
堆栈操作操作¶
- class openstack.orchestration.v1._proxy.Proxy(session, *, service_type=None, service_name=None, interface=None, region_name=None, endpoint_override=None, version=None, auth=None, user_agent=None, connect_retries=None, logger=None, allow=None, additional_headers=None, client_name=None, client_version=None, allow_version_hack=None, global_request_id=None, min_version=None, max_version=None, default_microversion=None, status_code_retries=None, retriable_status_codes=None, raise_exc=None, rate_limit=None, concurrency=None, connect_retry_delay=None, status_code_retry_delay=None, statsd_client=None, statsd_prefix=None, prometheus_counter=None, prometheus_histogram=None, influxdb_config=None, influxdb_client=None)
- check_stack(stack)
检查堆栈状态
由于这是一个异步操作,因此只能通过跟踪堆栈状态来检查结果。
- 参数:
stack – 该值可以是堆栈的 ID 或
Stack的实例。- 返回值:
无
- suspend_stack(stack)
暂停堆栈状态
- 参数:
stack – 该值可以是堆栈的 ID 或
Stack的实例。- 返回值:
无
- resume_stack(stack)
恢复堆栈状态
- 参数:
stack – 该值可以是堆栈的 ID 或
Stack的实例。- 返回值:
无
堆栈事件操作¶
- class openstack.orchestration.v1._proxy.Proxy(session, *, service_type=None, service_name=None, interface=None, region_name=None, endpoint_override=None, version=None, auth=None, user_agent=None, connect_retries=None, logger=None, allow=None, additional_headers=None, client_name=None, client_version=None, allow_version_hack=None, global_request_id=None, min_version=None, max_version=None, default_microversion=None, status_code_retries=None, retriable_status_codes=None, raise_exc=None, rate_limit=None, concurrency=None, connect_retry_delay=None, status_code_retry_delay=None, statsd_client=None, statsd_prefix=None, prometheus_counter=None, prometheus_histogram=None, influxdb_config=None, influxdb_client=None)
- stack_events(stack, resource_name=None, **attr)
获取堆栈事件
- 参数:
stack – 该值可以是堆栈的 ID 或
Stack的实例resource_name – 资源的名称。如果resource_name不为None,则base_path会发生变化。
- 返回值:
一个堆栈事件对象生成器
- 返回类型:
堆栈模板操作¶
- class openstack.orchestration.v1._proxy.Proxy(session, *, service_type=None, service_name=None, interface=None, region_name=None, endpoint_override=None, version=None, auth=None, user_agent=None, connect_retries=None, logger=None, allow=None, additional_headers=None, client_name=None, client_version=None, allow_version_hack=None, global_request_id=None, min_version=None, max_version=None, default_microversion=None, status_code_retries=None, retriable_status_codes=None, raise_exc=None, rate_limit=None, concurrency=None, connect_retry_delay=None, status_code_retry_delay=None, statsd_client=None, statsd_prefix=None, prometheus_counter=None, prometheus_histogram=None, influxdb_config=None, influxdb_client=None)
- validate_template(template, environment=None, template_url=None, ignore_errors=None)
验证模板。
- 参数:
template – 执行验证的堆栈模板。
environment – 堆栈的 JSON 环境(如果提供)。
template_url – 包含用于验证的堆栈模板的 URI。如果
template参数为 None,则需要此参数。如果指定了template,则忽略此参数。ignore_errors – 包含要忽略的逗号分隔的错误代码的字符串。当前唯一的有效错误代码是 ‘99001’。
- 返回值:
模板验证的结果。
- 引发:
InvalidRequest如果既未提供 template 也未提供 template_url。- 引发:
HttpException如果模板验证失败。
软件配置操作¶
- class openstack.orchestration.v1._proxy.Proxy(session, *, service_type=None, service_name=None, interface=None, region_name=None, endpoint_override=None, version=None, auth=None, user_agent=None, connect_retries=None, logger=None, allow=None, additional_headers=None, client_name=None, client_version=None, allow_version_hack=None, global_request_id=None, min_version=None, max_version=None, default_microversion=None, status_code_retries=None, retriable_status_codes=None, raise_exc=None, rate_limit=None, concurrency=None, connect_retry_delay=None, status_code_retry_delay=None, statsd_client=None, statsd_prefix=None, prometheus_counter=None, prometheus_histogram=None, influxdb_config=None, influxdb_client=None)
- create_software_config(**attrs)
从属性创建新的软件配置
- 参数:
attrs (dict) – 关键字参数,将用于创建一个
SoftwareConfig,包含 SoftwareConfig 类上的属性。- 返回值:
软件配置创建的结果
- 返回类型:
- software_configs(**query)
返回软件配置生成器
- 参数:
query (dict) – 可选查询参数,用于限制返回的软件配置。
- 返回值:
软件配置对象生成器。
- 返回类型:
- get_software_config(software_config)
获取特定软件配置的详细信息。
- 参数:
software_config – 该值可以是软件配置的 ID,也可以是
SoftwareConfig的实例。- 返回值:
类型为
SoftwareConfig的对象
- delete_software_config(software_config, ignore_missing=True)
删除软件配置
- 参数:
software_config – 该值可以是软件配置的 ID,也可以是
SoftwareConfig的实例ignore_missing (bool) – 当设置为
False时,如果软件配置不存在,将引发NotFoundException。当设置为True时,尝试删除不存在的软件配置时不会引发任何异常。
- 返回值:
无
软件部署操作¶
- class openstack.orchestration.v1._proxy.Proxy(session, *, service_type=None, service_name=None, interface=None, region_name=None, endpoint_override=None, version=None, auth=None, user_agent=None, connect_retries=None, logger=None, allow=None, additional_headers=None, client_name=None, client_version=None, allow_version_hack=None, global_request_id=None, min_version=None, max_version=None, default_microversion=None, status_code_retries=None, retriable_status_codes=None, raise_exc=None, rate_limit=None, concurrency=None, connect_retry_delay=None, status_code_retry_delay=None, statsd_client=None, statsd_prefix=None, prometheus_counter=None, prometheus_histogram=None, influxdb_config=None, influxdb_client=None)
- create_software_deployment(**attrs)
从属性创建新的软件部署
- 参数:
attrs (dict) – 关键字参数,将用于创建一个
SoftwareDeployment,包含 SoftwareDeployment 类上的属性。- 返回值:
软件部署创建的结果
- 返回类型:
- software_deployments(**query)
返回软件部署生成器
- 参数:
query (dict) – 可选查询参数,用于限制返回的软件部署。
- 返回值:
软件部署对象生成器。
- 返回类型:
- get_software_deployment(software_deployment)
获取特定软件部署资源的详细信息
- 参数:
software_deployment – 该值可以是软件部署的 ID,也可以是
SoftwareDeployment的实例。- 返回值:
类型为
SoftwareDeployment的对象
- delete_software_deployment(software_deployment, ignore_missing=True)
删除软件部署
- 参数:
software_deployment – 该值可以是软件部署的 ID,也可以是
SoftwareDeployment的实例ignore_missing (bool) – 当设置为
False时,如果软件部署不存在,将引发NotFoundException。当设置为True时,尝试删除不存在的软件部署时不会引发任何异常。
- 返回值:
无
- update_software_deployment(software_deployment, **attrs)
更新软件部署
- 参数:
server – 软件部署的 ID 或
SoftwareDeployment的实例attrs (dict) – 要更新由
software_deployment表示的软件部署的属性。
- 返回值:
更新后的软件部署
- 返回类型: