REST Resource: projects.locations.instances

资源:实例

笔记本实例的定义。

JSON 表示法
{
  "name": string,
  "postStartupScript": string,
  "proxyUri": string,
  "instanceOwners": [
    string
  ],
  "serviceAccount": string,
  "serviceAccountScopes": [
    string
  ],
  "machineType": string,
  "acceleratorConfig": {
    object (AcceleratorConfig)
  },
  "state": enum (State),
  "installGpuDriver": boolean,
  "customGpuDriverPath": string,
  "bootDiskType": enum (DiskType),
  "bootDiskSizeGb": string,
  "dataDiskType": enum (DiskType),
  "dataDiskSizeGb": string,
  "noRemoveDataDisk": boolean,
  "diskEncryption": enum (DiskEncryption),
  "kmsKey": string,
  "disks": [
    {
      object (Disk)
    }
  ],
  "shieldedInstanceConfig": {
    object (ShieldedInstanceConfig)
  },
  "noPublicIp": boolean,
  "noProxyAccess": boolean,
  "network": string,
  "subnet": string,
  "labels": {
    string: string,
    ...
  },
  "metadata": {
    string: string,
    ...
  },
  "tags": [
    string
  ],
  "upgradeHistory": [
    {
      object (UpgradeHistoryEntry)
    }
  ],
  "nicType": enum (NicType),
  "reservationAffinity": {
    object (ReservationAffinity)
  },
  "creator": string,
  "canIpForward": boolean,
  "createTime": string,
  "updateTime": string,
  "instanceMigrationEligibility": {
    object (InstanceMigrationEligibility)
  },

  // Union field environment can be only one of the following:
  "vmImage": {
    object (VmImage)
  },
  "containerImage": {
    object (ContainerImage)
  }
  // End of list of possible types for union field environment.
  "migrated": boolean
}
字段
name

string

仅限输出。相应笔记本实例的名称。格式:projects/{projectId}/locations/{location}/instances/{instanceId}

postStartupScript

string

在笔记本实例完全启动后自动运行的 Bash 脚本的路径。该路径必须是网址或 Cloud Storage 路径 (gs://path-to-file/file-name)。

proxyUri

string

仅限输出。用于访问 Jupyter 笔记本的代理端点。

instanceOwners[]

string

仅限输入。创建后相应实例的所有者。格式:alias@example.com

目前仅支持一位所有者。如果未指定,则虚拟机实例的服务账号的所有服务账号用户都可以使用该实例。

serviceAccount

string

此实例上的服务账号,用于授予对其他 Google Cloud 服务的访问权限。您可以使用同一项目中的任意服务账号,但您必须拥有服务账号用户权限才能使用实例。

如果未指定,则使用 Compute Engine 默认服务账号

serviceAccountScopes[]

string

可选。要包含在 Compute Engine 实例中的服务账号范围的 URI。

如果未指定,则定义以下范围:- https://www.googleapis.com/auth/cloud-platform- https://www.googleapis.com/auth/userinfo.email如果不使用默认范围,则至少需要:https://www.googleapis.com/auth/compute

machineType

string

必需。相应实例的 Compute Engine 机器类型

acceleratorConfig

object (AcceleratorConfig)

相应实例上使用的硬件加速器。如果您使用加速器,请确保您的配置具有足够的 vCPU 和内存来支持您选择的 machineType

state

enum (State)

仅限输出。相应实例的状态。

installGpuDriver

boolean

最终用户是否授权 Google Cloud 在此实例上安装 GPU 驱动程序。如果此字段为空或设置为 false,则不会安装 GPU 驱动程序。仅适用于具有 GPU 的实例。

customGpuDriverPath

string

指定存储 GPU 驱动程序的自定义 Cloud Storage 路径。如果未指定,我们将自动从官方 GPU 驱动程序中选择。

bootDiskType

enum (DiskType)

仅限输入。附加到此实例的启动磁盘的类型,默认为标准永久性磁盘 (PD_STANDARD)。

bootDiskSizeGb

string (int64 format)

仅限输入。附加到相应实例的启动磁盘的大小(以 GB 为单位),最大为 64000 GB (64 TB)。建议的最小值是 100 GB。如果未指定,则此值默认为 100。

dataDiskType

enum (DiskType)

仅限输入。附加到此实例的数据磁盘的类型,默认为标准永久性磁盘 (PD_STANDARD)。

dataDiskSizeGb

string (int64 format)

仅限输入。附加到此实例的数据磁盘的大小(以 GB 为单位),最大为 64000 GB (64 TB)。您可以根据笔记本和数据的大小选择数据磁盘的大小。如果未指定,则此值默认为 100。

noRemoveDataDisk

boolean

仅限输入。如果为 true,则在删除实例时不会自动删除数据磁盘。

diskEncryption

enum (DiskEncryption)

仅限输入。启动磁盘和数据磁盘上使用的磁盘加密方法,默认为 GMEK。

kmsKey

string

仅限输入。用于加密磁盘的 KMS 密钥,仅当 diskEncryption 为 CMEK 时适用。格式:projects/{projectId}/locations/{location}/keyRings/{key_ring_id}/cryptoKeys/{key_id}

详细了解如何使用自己的加密密钥

disks[]

object (Disk)

仅限输出。将磁盘挂接到笔记本实例。

shieldedInstanceConfig

object (ShieldedInstanceConfig)

可选。安全强化型虚拟机配置。使用受支持的安全强化型虚拟机功能的映像

noPublicIp

boolean

如果为 true,则不会为此实例分配任何外部 IP。

noProxyAccess

boolean

如果值为 true,笔记本实例将不会向代理注册。

network

string

相应实例所在的 VPC 的名称。格式:projects/{projectId}/global/networks/{network_id}

subnet

string

相应实例所在的子网的名称。格式:projects/{projectId}/regions/{region}/subnetworks/{subnetwork_id}

labels

map (key: string, value: string)

要应用于相应实例的标签。这些标签稍后可通过 setLabels 方法进行修改。

包含一系列 "key": value 对的对象。示例:{ "name": "wrench", "mass": "1.3kg", "count": "3" }

metadata

map (key: string, value: string)

要应用于相应实例的自定义元数据。例如,如需指定用于自动备份的 Cloud Storage 存储桶,您可以使用 gcs-data-bucket 元数据标记。格式:"--metadata=gcs-data-bucket=BUCKET"

包含一系列 "key": value 对的对象。示例:{ "name": "wrench", "mass": "1.3kg", "count": "3" }

tags[]

string

可选。要添加到运行时的 Compute Engine 网络标记(请参阅添加网络标记)。

upgradeHistory[]

object (UpgradeHistoryEntry)

相应实例的升级历史记录。

nicType

enum (NicType)

可选。此接口上要使用的 vNIC 类型。可以是 gVNIC 或 VirtioNet。

reservationAffinity

object (ReservationAffinity)

可选。可选的预留亲和性。设置此字段会将指定的可用区级计算预留应用于此笔记本实例。

creator

string

仅限输出。发送原始 instances.create 请求的实体的电子邮件地址。

canIpForward

boolean

可选。用于启用或停用 IP 转发的标志,默认值为 false/停用。https://cloud.google.com/vpc/docs/using-routes#canipforward

createTime

string (Timestamp format)

仅限输出。实例创建时间。

采用 RFC 3339 标准,生成的输出将始终进行 Z 规范化(即转换为 UTC 零时区格式并在末尾附加 Z),并使用 0、3、6 或 9 个小数位。不带“Z”的偏差时间也是可以接受的。示例:"2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z""2014-10-02T15:01:23+05:30"

updateTime

string (Timestamp format)

仅限输出。实例更新时间。

采用 RFC 3339 标准,生成的输出将始终进行 Z 规范化(即转换为 UTC 零时区格式并在末尾附加 Z),并使用 0、3、6 或 9 个小数位。不带“Z”的偏差时间也是可以接受的。示例:"2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z""2014-10-02T15:01:23+05:30"

instanceMigrationEligibility

object (InstanceMigrationEligibility)

仅限输出。检查从 UmN 到 WbI 的迁移可行性。

联合字段 environment。环境类型;可以是虚拟机映像,也可以是容器映像。environment 只能是下列其中一项:
vmImage

object (VmImage)

使用 Compute Engine 虚拟机映像启动笔记本实例。

containerImage

object (ContainerImage)

使用容器映像启动笔记本实例。

migrated

boolean

仅限输出。一个布尔值,用于指示相应笔记本是否已迁移到 Workbench 实例

AcceleratorConfig

硬件加速器的定义。请注意,并非所有 typecoreCount 的组合都是有效的。如需查找有效组合,请参阅 Compute Engine 上的 GPU。不支持 TPU。

JSON 表示法
{
  "type": enum (AcceleratorType),
  "coreCount": string
}
字段
type

enum (AcceleratorType)

相应加速器的类型。

coreCount

string (int64 format)

相应加速器的核心数。

AcceleratorType

可在此实例上使用的硬件加速器类型的定义。

枚举
ACCELERATOR_TYPE_UNSPECIFIED 未指定加速器类型。
NVIDIA_TESLA_K80 加速器类型为 Nvidia Tesla K80。
NVIDIA_TESLA_P100 加速器类型为 Nvidia Tesla P100。
NVIDIA_TESLA_V100 加速器类型为 Nvidia Tesla V100。
NVIDIA_TESLA_P4 加速器类型为 Nvidia Tesla P4。
NVIDIA_TESLA_T4 加速器类型为 Nvidia Tesla T4。
NVIDIA_TESLA_A100 加速器类型为 Nvidia Tesla A100。
NVIDIA_L4 加速器类型为 Nvidia Tesla L4。
NVIDIA_A100_80GB 加速器类型为 Nvidia Tesla A100 80GB。
NVIDIA_TESLA_T4_VWS 加速器类型为 NVIDIA Tesla T4 虚拟工作站。
NVIDIA_TESLA_P100_VWS 加速器类型为 NVIDIA Tesla P100 虚拟工作站。
NVIDIA_TESLA_P4_VWS 加速器类型为 NVIDIA Tesla P4 虚拟工作站。
NVIDIA_H100_80GB 加速器类型为 NVIDIA H100 80GB。
NVIDIA_H100_MEGA_80GB 加速器类型为 NVIDIA H100 Mega 80GB。
TPU_V2 (敬请期待)加速器类型为 TPU V2。
TPU_V3 (敬请期待)加速器类型为 TPU V3。

相应实例的状态定义。

枚举
STATE_UNSPECIFIED 未指定状态。
STARTING 控制逻辑正在启动实例。
PROVISIONING 控制逻辑是安装所需框架并将实例注册到笔记本代理
ACTIVE 实例正在运行。
STOPPING 控制逻辑正在停止实例。
STOPPED 实例已停止。
DELETED 实例已删除。
UPGRADING 实例正在升级。
INITIALIZING 正在创建此实例。
REGISTERING 实例正在注册。
SUSPENDING 实例正在暂停。
SUSPENDED 实例已暂停。

DiskType

笔记本实例的可能磁盘类型。

枚举
DISK_TYPE_UNSPECIFIED 未设置磁盘类型。
PD_STANDARD 标准永久性磁盘类型。
PD_SSD SSD 永久性磁盘类型。
PD_BALANCED 平衡永久性磁盘类型。
PD_EXTREME 至尊永久性磁盘类型。

DiskEncryption

磁盘加密选项的定义。

枚举
DISK_ENCRYPTION_UNSPECIFIED 未指定磁盘加密。
GMEK 使用 Google 管理的加密密钥对启动磁盘进行加密。
CMEK 使用客户管理的加密密钥来加密启动磁盘。

磁盘

附加到实例的磁盘资源。

JSON 表示法
{
  "autoDelete": boolean,
  "boot": boolean,
  "deviceName": string,
  "diskSizeGb": string,
  "guestOsFeatures": [
    {
      object (GuestOsFeature)
    }
  ],
  "index": string,
  "interface": string,
  "kind": string,
  "licenses": [
    string
  ],
  "mode": string,
  "source": string,
  "type": string
}
字段
autoDelete

boolean

指示在删除实例时是否会自动删除磁盘(但从实例分离磁盘时不会自动删除)。

boot

boolean

表示这是启动磁盘。虚拟机将使用磁盘的第一个分区作为其根文件系统。

deviceName

string

表示您选择的唯一设备名称,该名称会反映到实例内运行的 Linux 操作系统的 /dev/disk/by-id/google-* 树中。您可以使用此名称在实例中引用要装载、调整大小等的设备。

如果未指定,服务器将选择要应用于此磁盘的默认设备名称,格式为 persistent-disk-x,其中 x 是 Google Compute Engine 分配的号码。此字段仅适用于永久性磁盘。

diskSizeGb

string (int64 format)

以 2 为底的 GB 为单位表示磁盘的大小。

guestOsFeatures[]

object (GuestOsFeature)

表示要在客机操作系统上启用的一系列功能。仅适用于可启动的映像。请参阅“启用客机操作系统功能”以查看可用选项的列表。

index

string (int64 format)

相应磁盘的从零开始的索引,其中 0 保留给启动磁盘。如果您将多个磁盘挂接到一个实例,则每个磁盘都会有一个唯一的索引号。

interface

string

表示用于挂接相应磁盘的磁盘接口,可以是 SCSI 或 NVME。默认值为 SCSI。永久性磁盘必须始终使用 SCSI,如果您尝试以 SCSI 以外的任何其他格式附加永久性磁盘,请求都会失败。本地 SSD 可以使用 NVME 或 SCSI。如需了解 SCSI over NVMe 的性能特征,请参阅“本地 SSD 性能”。有效值:

  • NVME
  • SCSI
kind

string

资源的类型。对于已挂接的磁盘,始终为 compute#attachedDisk。

licenses[]

string

公开显示的许可列表。预留给 Google 使用。许可表示公开映像和 Marketplace 映像的结算和汇总使用情况数据。

mode

string

用于挂接相应磁盘的模式,可以是 READ_WRITEREAD_ONLY。如果未指定,则默认以 READ_WRITE 模式附加磁盘。有效值:

  • READ_ONLY
  • READ_WRITE
source

string

表示指向现有 Persistent Disk 资源的有效部分或完整网址。

type

string

表示磁盘的类型,即 SCRATCHPERSISTENT。有效值:

  • PERSISTENT
  • SCRATCH

GuestOsFeature

启动磁盘的客机操作系统功能。

JSON 表示法
{
  "type": string
}
字段
type

string

受支持功能的 ID。请参阅“启用客机操作系统功能”,查看可用选项的列表。有效值:

  • FEATURE_TYPE_UNSPECIFIED
  • MULTI_IP_SUBNET
  • SECURE_BOOT
  • UEFI_COMPATIBLE
  • VIRTIO_SCSI_MULTIQUEUE
  • WINDOWS

ShieldedInstanceConfig

一组安全强化型实例选项。请参阅使用支持的安全强化型虚拟机功能的映像。并非所有组合都有效。

JSON 表示法
{
  "enableSecureBoot": boolean,
  "enableVtpm": boolean,
  "enableIntegrityMonitoring": boolean
}
字段
enableSecureBoot

boolean

定义实例是否已启用安全启动。

安全启动可验证所有启动组件的数字签名,并在签名验证失败时停止启动过程,有助于确保系统仅运行正版软件。默认情况下,该环境处于停用状态。

enableVtpm

boolean

定义实例是否已启用 vTPM。默认处于启用状态。

enableIntegrityMonitoring

boolean

定义实例是否已启用完整性监控。

启用对实例启动完整性的监控和证明。证明是针对完整性政策基准执行的。此基准最初来源于创建实例时的隐式可信启动映像。默认处于启用状态。

UpgradeHistoryEntry

虚拟机映像升级历史记录的条目。

JSON 表示法
{
  "snapshot": string,
  "vmImage": string,
  "containerImage": string,
  "framework": string,
  "version": string,
  "state": enum (State),
  "createTime": string,
  "targetImage": string,
  "action": enum (Action),
  "targetVersion": string
}
字段
snapshot

string

相应笔记本实例在升级前的启动磁盘快照。

vmImage

string

此实例升级之前的虚拟机映像。

containerImage

string

相应实例升级之前的容器映像。

framework

string

相应笔记本实例的框架。

version

string

升级前的笔记本实例版本。

state

enum (State)

相应实例升级历史记录条目的状态。

createTime

string (Timestamp format)

相应实例升级历史记录条目的创建时间。

采用 RFC 3339 标准,生成的输出将始终进行 Z 规范化(即转换为 UTC 零时区格式并在末尾附加 Z),并使用 0、3、6 或 9 个小数位。不带“Z”的偏差时间也是可以接受的。示例:"2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z""2014-10-02T15:01:23+05:30"

targetImage
(deprecated)

string

目标虚拟机映像。格式:ainotebooks-vm/project/image-name/name

action

enum (Action)

操作。回滚或升级。

targetVersion

string

目标虚拟机版本,例如 m63。

相应升级历史记录条目的状态定义。

枚举
STATE_UNSPECIFIED 未指定状态。
STARTED 已开始升级实例。
SUCCEEDED 实例升级成功。
FAILED 实例升级失败。

操作

相应升级历史记录条目的操作定义。

枚举
ACTION_UNSPECIFIED 未指定操作。
UPGRADE 进行升级。
ROLLBACK 回滚。

NicType

vNIC 驱动程序的类型。默认值应为 UNSPECIFIED_NIC_TYPE。

枚举
UNSPECIFIED_NIC_TYPE 未指定类型。
VIRTIO_NET VIRTIO
GVNIC GVNIC

ReservationAffinity

用于使用可用区级预留的预留亲和性。

JSON 表示法
{
  "consumeReservationType": enum (Type),
  "key": string,
  "values": [
    string
  ]
}
字段
consumeReservationType

enum (Type)

可选。要使用的预留类型

key

string

可选。对应于预留资源的标签键。

values[]

string

可选。与预留资源的标签值相对应。

类型

指示是否从预留中消耗容量。

枚举
TYPE_UNSPECIFIED 默认类型。
NO_RESERVATION 不使用任何分配的容量。
ANY_RESERVATION 使用任何可用的预留。
SPECIFIC_RESERVATION 必须使用特定预留中的资源。必须指定用于指定预留的键值字段。

InstanceMigrationEligibility

InstanceMigrationEligibility 表示从 UmN 到 WbI 的迁移可行性信息。

JSON 表示法
{
  "warnings": [
    enum (Warning)
  ],
  "errors": [
    enum (Error)
  ]
}
字段
warnings[]

enum (Warning)

仅限输出。迁移期间,某些配置将采用默认设置。

errors[]

enum (Error)

仅限输出。某些配置会导致 UmN 不符合自动迁移的条件。需要手动迁移。

警告

迁移警告消息表示,在迁移期间,某些配置将采用默认设置。

枚举
WARNING_UNSPECIFIED 默认类型。
UNSUPPORTED_MACHINE_TYPE UmN 使用的机器类型在 WbI 中不受支持。它将使用默认机器类型 e2-standard-4 进行迁移。用户可以在迁移后更改机器类型。
UNSUPPORTED_ACCELERATOR_TYPE Umn 使用的加速器类型在 WbI 中不受支持。它将在没有加速器的情况下进行迁移。用户可以在迁移后连接加速器。
UNSUPPORTED_OS Umn 使用的操作系统在 WbI 中不受支持(例如 Debian 10、Ubuntu)。在 WbI 中,它将被 Debian 11 取代。
NO_REMOVE_DATA_DISK 此 UmN 配置了 noRemoveDataDisk,但该设置在 WbI 中已不再可用。
GCS_BACKUP 此 UmN 配置了 Cloud Storage 备份功能,但该功能在 WbI 中不再可用。
POST_STARTUP_SCRIPT 此 UmN 配置了启动后脚本。请选择性地提供迁移的 postStartupScriptOption

错误

迁移错误消息表示,某些配置会导致 UmN 不符合自动迁移的条件,因此需要手动迁移。

枚举
ERROR_UNSPECIFIED 默认类型。
DATAPROC_HUB UmN 使用 Dataproc Hub,无法迁移。

方法

create

在给定的项目和位置中创建一个新实例。

delete

删除单个实例。

diagnose

根据给定的实例创建诊断文件并运行诊断工具。

get

获取单个实例的详细信息。

getIamPolicy

获取资源的访问权限控制政策。

getInstanceHealth

检查笔记本实例的运行状况是否良好。

isUpgradeable

检查笔记本实例是否可升级。

list

列出给定项目和位置中的实例。

migrate

将现有的用户管理的笔记本迁移到 Workbench 实例。

register

向 Notebooks API 服务器注册现有的旧版笔记本实例。

report

允许笔记本实例向 Notebooks API 服务器报告其最新的实例信息。

reset

重置笔记本实例。

rollback

将笔记本实例回滚到先前版本。

setAccelerator

更新单个实例的 guest 加速器。

setIamPolicy

针对指定资源设置访问权限控制政策。

setLabels

替换实例的所有标签。

setMachineType

更新单个实例的机器类型。

start

启动笔记本实例。

stop

停止笔记本实例。

testIamPermissions

返回调用者对指定资源拥有的权限。

updateConfig

更新了笔记本实例配置。

updateMetadataItems

为实例添加/更新元数据项。

updateShieldedInstanceConfig

更新单个实例的受防护的实例配置。

upgrade

将笔记本实例升级到最新版本。