openstack.compute.v2.server¶
服务器类¶
服务器类 Server 继承自 Resource。
- class openstack.compute.v2.server.Server(_synchronized=False, connection=None, **attrs)¶
基础资源
- 参数:
_synchronized (bool) – 这不打算直接使用。请参阅
new()和existing()。connection (openstack.connection.Connection) – 对正在使用的 Connection 的引用。默认为 None,允许在单元测试中等情况下使用不带活动 Connection 的 Resource 对象。Resource 代码中对
self._connection的使用应使用 None 检查进行保护。
- resource_key = 'server'¶
资源的单数形式的键。
- resources_key = 'servers'¶
资源的复数形式的键。
- base_path = '/servers'¶
此资源的 URI 的基本部分。
- allow_create = True¶
允许对此资源进行创建操作。
- allow_fetch = True¶
允许对此资源进行获取操作。
- allow_commit = True¶
允许对此资源进行更新操作。
- allow_delete = True¶
允许对此资源进行删除操作。
- allow_list = True¶
允许对此资源进行列表操作。
- links¶
与此服务器相关的链接列表。
- addresses¶
可以通过此服务器访问的地址字典。字典包含诸如
private和public之类的键,每个键包含该类型地址的字典列表。地址包含在具有addr和version键的字典中,该版本为 4 或 6,具体取决于 IP 地址的协议。类型: dict
- admin_password¶
当首次创建服务器时,它会提供管理员密码。
- attached_volumes¶
已附加卷的列表。列表中的每个项目至少包含一个“id”键来标识特定的卷。
- availability_zone¶
此服务器所属的可用区名称。
- block_device_mapping¶
启用实例的块设备映射的精细控制。这通常用于从卷启动服务器。
- config_drive¶
指示是否为此服务器使用了配置驱动器。
- compute_host¶
此实例正在运行的计算主机名称。仅对管理用户在响应中出现。
- created_at¶
服务器创建的时间戳。
- description¶
服务器的描述。在 microversion 2.19 之前,此描述设置为服务器名称。
- disk_config¶
磁盘配置。可以是 AUTO 或 MANUAL。
- flavor_id¶
风味引用,作为 ID 或完整的 URL,用于此服务器的风味。
- flavor¶
从服务器返回的风味属性。
- has_config_drive¶
指示配置驱动器是否启用元数据注入。并非所有云提供商都启用此功能。
- host_id¶
此服务器的主机 ID。
- fault¶
一个故障对象。仅当服务器状态为 ERROR 或 DELETED 并且发生故障时可用。
- host¶
启动服务器的主机。
- host_status¶
主机状态。
- hostname¶
在实例启动时设置的主机名。默认情况下,它仅对管理用户在响应中出现。
- hypervisor_hostname¶
超visor 主机名。仅对管理用户在响应中出现。
- image_id¶
镜像引用,作为 ID 或完整的 URL,用于此服务器的镜像。
- image¶
从服务器返回的镜像属性。
- instance_name¶
实例名称。计算 API 从实例名称模板生成实例名称。默认情况下,它仅对管理用户在响应中出现。
- interface_ip¶
用于从当前调用上下文连接到此服务器的地址。如果调用主机具有可路由的 IPv6 地址,则将其设置为 public_ipv6,如果 Connection 是使用 private=True 创建的,则将其设置为 private_ipv4。否则,它将设置为 public_ipv4。
- kernel_id¶
在使用 AMI 时内核镜像的 UUID。如果未使用,则为 null。默认情况下,它仅对管理用户在响应中出现。
- key_name¶
关联密钥对的名称
- launch_index¶
当通过多重创建启动服务器时,这是服务器启动的顺序。默认情况下,它仅对管理用户在响应中出现。
- launched_at¶
服务器启动的时间戳。
- locked_reason¶
服务器被锁定的原因(如果有)。
- max_count¶
要创建的最大服务器数。
- min_count¶
要创建的最小服务器数。
- networks¶
一个网络对象。当租户定义了多个网络时,这是必需的参数。如果您未指定网络参数,服务器将附加到为当前租户创建的唯一网络。
- personality¶
个性化文件。这应该是一个字典列表,每个字典包含一个文件名(“name”)和一个 base64 编码的文件内容(“contents”)
- pinned_availability_zone¶
在服务器创建期间请求的可用区或使用 default_schedule_zone 配置选项配置的固定可用区。
- power_state¶
此服务器的电源状态。
- progress¶
当服务器正在构建时,此值表示完成的百分比。完成之后,它将为 100。类型: int
- project_id¶
服务器关联的项目 ID。
- private_v4¶
此服务器的私有 IPv4 地址
- private_v6¶
此服务器的私有 IPv6 地址
- public_v4¶
此服务器的公共 IPv4 地址
- public_v6¶
此服务器的公共 IPv6 地址
- ramdisk_id¶
在使用 AMI 时,ramdisk 镜像的 UUID。如果未使用,则为 null。默认情况下,它仅对管理用户在响应中出现。
- reservation_id¶
服务器的预留 ID。这是一种 ID,可用于跟踪使用多个创建创建的服务器组,所有服务器都将具有相同的预留 ID。默认情况下,它仅对管理用户在响应中出现。
- root_device_name¶
实例的根设备名称。默认情况下,它仅对管理用户在响应中出现。
- scheduler_hints¶
发送到调度器的字典数据。
- security_groups¶
适用的安全组列表。每个组包含描述、名称、id 和规则的键。
- server_groups¶
服务器所属的服务器组的 UUID。当前这最多可以包含一个条目。
- status¶
此服务器的状态。有效值包括
ACTIVE、BUILDING、DELETED、ERROR、HARD_REBOOT、PASSWORD、PAUSED、REBOOT、REBUILD、RESCUED、RESIZED、REVERT_RESIZE、SHUTOFF、SOFT_DELETED、STOPPED、SUSPENDED、UNKNOWN或VERIFY_RESIZE。
- task_state¶
此服务器的任务状态。
- terminated_at¶
服务器终止的时间戳(如果已终止)。
- trusted_image_certificates¶
用于在镜像签名验证期间验证签名证书的受信任证书 ID 列表。
- updated_at¶
上次更新此服务器的时间戳。
- user_data¶
启动时使用的配置信息或脚本。必须进行Base64编码。
- user_id¶
此服务器所有者的ID。
- vm_state¶
此服务器的VM状态。
- change_password(session, password, *, microversion=None)¶
将管理员密码更改为给定的密码。
- 参数:
session – 用于进行此请求的会话。
password – 新密码。
- 返回值:
无
- get_password(session, *, microversion=None)¶
获取加密的管理员密码。
- 参数:
session – 用于进行此请求的会话。
- 返回值:
加密的管理员密码。
- clear_password(session, *, microversion=None)¶
清除管理员密码。
这会从数据库中删除密码。它不会实际更改服务器密码。
- 参数:
session – 用于进行此请求的会话。
- 返回值:
无
- reboot(session, reboot_type)¶
重启服务器,其中 reboot_type 可能是 ‘SOFT’ 或 ‘HARD’。
- 参数:
session – 用于进行此请求的会话。
reboot_type – 重启类型。可以是以下之一:
SOFT、HARD。
- 返回值:
无
- force_delete(session)¶
强制删除服务器。
- 参数:
session – 用于进行此请求的会话。
- 返回值:
无
- rebuild(session, image, name=<openstack.types.Unset object>, admin_password=<openstack.types.Unset object>, preserve_ephemeral=<openstack.types.Unset object>, access_ipv4=<openstack.types.Unset object>, access_ipv6=<openstack.types.Unset object>, metadata=<openstack.types.Unset object>, user_data=<openstack.types.Unset object>, key_name=<openstack.types.Unset object>, description=<openstack.types.Unset object>, trusted_image_certificates=<openstack.types.Unset object>, hostname=<openstack.types.Unset object>)¶
使用给定的参数重建服务器。
- 参数:
session – 用于进行此请求的会话。
image – 要重建到的镜像。可以是ID或
Image实例。name – 要设置在重建服务器上的名称。(可选)
admin_password – 要设置在重建服务器上的管理员密码。(可选)
preserve_ephemeral – 是否在重建期间保留临时驱动器。(可选)
access_ipv4 – 用于访问重建服务器的IPv4地址。(可选)
access_ipv6 – 用于访问重建服务器的IPv6地址。(可选)
metadata – 要设置在更新服务器上的元数据。(可选)
user_data – 要设置在更新服务器上的用户数据。(可选)
key_name – 要设置在更新服务器上的密钥名称。(可选)
description – 要设置在更新服务器上的描述。(可选)(需要API微版本2.19)
trusted_image_certificates – 要设置在更新服务器上的受信任镜像证书。(可选)(需要API微版本2.78)
hostname – 要设置在更新服务器上的主机名。(可选)(需要API微版本2.90)
- 返回值:
更新后的服务器。
- resize(session, flavor)¶
调整服务器到flavor引用。
- 参数:
session – 用于进行此请求的会话。
flavor – 要调整到的服务器。
- 返回值:
无
- confirm_resize(session)¶
确认服务器的调整大小。
- 参数:
session – 用于进行此请求的会话。
- 返回值:
无
- revert_resize(session)¶
撤销服务器的调整大小。
- 参数:
session – 用于进行此请求的会话。
- 返回值:
无
- create_image(session, name, metadata=None)¶
从服务器创建镜像。
- 参数:
session – 用于进行此请求的会话。
name – 用于创建的镜像的名称。
metadata – 要设置在创建的镜像上的元数据。(可选)
- 返回值:
无
- add_security_group(session, security_group_name)¶
将安全组添加到服务器。
- 参数:
session – 用于进行此请求的会话。
security_group_name – 要添加到服务器的安全组。
- 返回值:
无
- remove_security_group(session, security_group_name)¶
从服务器删除安全组。
- 参数:
session – 用于进行此请求的会话。
security_group_name – 要从服务器删除的安全组。
- 返回值:
无
- reset_state(session, state)¶
重置服务器状态。
默认情况下,这仅限管理员使用。
- 参数:
session – 用于进行此请求的会话。
state – 要设置在服务器上的状态。
- 返回值:
无
- add_fixed_ip(session, network_id)¶
将固定IP添加到服务器。
实际上,这是添加网络的别名。
- 参数:
session – 用于进行此请求的会话。
network_id – 要连接服务器的网络。
- 返回值:
无
- remove_fixed_ip(session, address)¶
从服务器删除固定IP。
实际上,这是从服务器删除端口的别名。
- 参数:
session – 用于进行此请求的会话。
network_id – 要从服务器删除的地址。
- 返回值:
无
- add_floating_ip(session, address, fixed_address=None)¶
将浮动IP添加到服务器。
- 参数:
session – 用于进行此请求的会话。
address – 要与服务器关联的浮动IP地址。
fixed_address – 要与浮动IP关联的固定IP地址。(可选)
- 返回值:
无
- remove_floating_ip(session, address)¶
从服务器删除浮动IP。
- 参数:
session – 用于进行此请求的会话。
address – 要与服务器分离的浮动IP地址。
- 返回值:
无
- backup(session, name, backup_type, rotation)¶
创建服务器的备份。
- 参数:
session – 用于进行此请求的会话。
name – 用于备份镜像的名称。
backup_type – 备份类型。此属性的含义由用户定义,可用于区分不同类型的备份。例如,这可用于区分
daily和weekly备份。rotation – 要保留的备份数量。所有早于第 rotation 个镜像的镜像都将被删除。
- 返回值:
无
- pause(session)¶
暂停服务器。
- 参数:
session – 用于进行此请求的会话。
- 返回值:
无
- unpause(session)¶
取消暂停服务器。
- 参数:
session – 用于进行此请求的会话。
- 返回值:
无
- suspend(session)¶
挂起服务器。
- 参数:
session – 用于进行此请求的会话。
- 返回值:
无
- resume(session)¶
恢复服务器。
- 参数:
session – 用于进行此请求的会话。
- 返回值:
无
- lock(session, locked_reason=None)¶
锁定服务器。
- 参数:
session – 用于进行此请求的会话。
locked_reason – 锁定服务器的原因。
- 返回值:
无
- unlock(session)¶
解锁服务器。
- 参数:
session – 用于进行此请求的会话。
- 返回值:
无
- rescue(session, admin_pass=None, image_ref=None)¶
救援服务器。
默认情况下,这仅限管理员使用。
- 参数:
session – 用于进行此请求的会话。
admin_pass – 要设置在救援服务器上的管理员密码。(可选)
image_ref – 救援服务器时使用的镜像。如果未提供,服务器将使用现有镜像。(可选)
- 返回值:
无
- unrescue(session)¶
取消救援服务器。
默认情况下,这仅限管理员使用。
- 参数:
session – 用于进行此请求的会话。
- 返回值:
无
- evacuate(session, host=None, admin_pass=None, force=None, on_shared_storage=None)¶
疏散服务器。
- 参数:
session – 用于进行此请求的会话。
host – 要疏散实例到的主机。(可选)
admin_pass – 要设置在疏散实例上的管理员密码。(可选)
force – 是否强制疏散。
on_shared_storage – 主机是否使用共享存储。(可选)(仅在微版本2.14之前支持)
- 返回值:
无
- start(session)¶
启动服务器。
- 参数:
session – 用于进行此请求的会话。
- 返回值:
无
- stop(session)¶
停止服务器。
- 参数:
session – 用于进行此请求的会话。
- 返回值:
无
- restore(session)¶
恢复服务器。
仅当服务器处于软删除状态时才支持此操作。此功能特定于云平台。
- 参数:
session – 用于进行此请求的会话。
- 返回值:
无
- shelve(session)¶
将服务器置于搁置状态。
- 参数:
session – 用于进行此请求的会话。
- 返回值:
无
- shelve_offload(session)¶
将服务器置于卸载搁置状态。
- 参数:
session – 用于进行此请求的会话。
- 返回值:
无
- unshelve(session, availability_zone=<openstack.types.Unset object>, host=None)¶
将服务器从搁置状态恢复。
- 参数:
session – 用于进行此请求的会话。
availability_zone – 如果指定,实例将被恢复到指定的可用区。如果传递 None,则实例定义的可用区将被取消固定,实例将被调度到任何可用区(自由调度)。如果未指定,实例将被恢复到其定义的可用区或任何可用区(自由调度)。
host – 如果指定,则将实例恢复到指定的主机。
- migrate(session, *, host=None)¶
迁移服务器。
- 参数:
session – 用于进行此请求的会话。
host – 要迁移服务器到的主机。(可选)
- 返回值:
无
- trigger_crash_dump(session)¶
为服务器触发崩溃转储。
- 参数:
session – 用于进行此请求的会话。
- 返回值:
无
- get_console_output(session, length=None)¶
获取服务器的控制台输出。
- 参数:
session – 用于进行此请求的会话。
length – 要返回的控制台输出的最大长度。(可选)
- 返回值:
无
- get_console_url(session, console_type)¶
获取服务器的控制台 URL。
- 参数:
session – 用于进行此请求的会话。
console_type – 要返回的控制台类型。此功能特定于云平台。可以是:
novnc、xvpvnc、spice-html5、spice-direct(Nova 微版本 2.99 之后)、rdp-html5或serial。
- 返回值:
无
- live_migrate(session, host, force, block_migration, disk_over_commit=False)¶
实时迁移服务器。
- 参数:
session – 用于进行此请求的会话。
host – 要实时迁移服务器到的主机。(可选)
force – 是否强制迁移。(可选)
block_migration – 是否执行块迁移。可以是:
True、False、'auto'。(可选)disk_over_commit – 是否允许在目标主机上进行磁盘过度承诺。(可选)
- 返回值:
无
- fetch_topology(session)¶
获取服务器的拓扑信息。
- 参数:
session – 用于进行此请求的会话。
- 返回值:
无
- fetch_security_groups(session)¶
获取服务器的安全组。
- 参数:
session – 用于进行此请求的会话。
- 返回值:
更新的 Server 实例。