class Google::Apis::NotebooksV1::Instance

The definition of a notebook instance.

Attributes

accelerator_config[RW]

Definition of a hardware accelerator. Note that not all combinations of `type` and `core_count` are valid. Check [GPUs on Compute Engine](/compute/docs/gpus/# gpus-list) to find a valid combination. TPUs are not supported. Corresponds to the JSON property `acceleratorConfig` @return [Google::Apis::NotebooksV1::AcceleratorConfig]

boot_disk_size_gb[RW]

Input only. The size of the boot disk in GB attached to this instance, up to a maximum of 64000 GB (64 TB). The minimum recommended value is 100 GB. If not specified, this defaults to 100. Corresponds to the JSON property `bootDiskSizeGb` @return [Fixnum]

boot_disk_type[RW]

Input only. The type of the boot disk attached to this instance, defaults to standard persistent disk (`PD_STANDARD`). Corresponds to the JSON property `bootDiskType` @return [String]

container_image[RW]

Definition of a container image for starting a notebook instance with the environment installed in a container. Corresponds to the JSON property `containerImage` @return [Google::Apis::NotebooksV1::ContainerImage]

create_time[RW]

Output only. Instance creation time. Corresponds to the JSON property `createTime` @return [String]

custom_gpu_driver_path[RW]

Specify a custom Cloud Storage path where the GPU driver is stored. If not specified, we'll automatically choose from official GPU drivers. Corresponds to the JSON property `customGpuDriverPath` @return [String]

data_disk_size_gb[RW]

Input only. The size of the data disk in GB attached to this instance, up to a maximum of 64000 GB (64 TB). You can choose the size of the data disk based on how big your notebooks and data are. If not specified, this defaults to 100. Corresponds to the JSON property `dataDiskSizeGb` @return [Fixnum]

data_disk_type[RW]

Input only. The type of the data disk attached to this instance, defaults to standard persistent disk (`PD_STANDARD`). Corresponds to the JSON property `dataDiskType` @return [String]

disk_encryption[RW]

Input only. Disk encryption method used on the boot and data disks, defaults to GMEK. Corresponds to the JSON property `diskEncryption` @return [String]

disks[RW]

Output only. Attached disks to notebook instance. Corresponds to the JSON property `disks` @return [Array<Google::Apis::NotebooksV1::Disk>]

install_gpu_driver[RW]

Whether the end user authorizes Google Cloud to install GPU driver on this instance. If this field is empty or set to false, the GPU driver won't be installed. Only applicable to instances with GPUs. Corresponds to the JSON property `installGpuDriver` @return [Boolean]

install_gpu_driver?[RW]

Whether the end user authorizes Google Cloud to install GPU driver on this instance. If this field is empty or set to false, the GPU driver won't be installed. Only applicable to instances with GPUs. Corresponds to the JSON property `installGpuDriver` @return [Boolean]

instance_owners[RW]

Input only. The owner of this instance after creation. Format: `alias@example. com` Currently supports one owner only. If not specified, all of the service account users of your VM instance's service account can use the instance. Corresponds to the JSON property `instanceOwners` @return [Array<String>]

kms_key[RW]

Input only. The KMS key used to encrypt the disks, only applicable if disk_encryption is CMEK. Format: `projects/`project_id`/locations/`location`/ keyRings/`key_ring_id`/cryptoKeys/`key_id“ Learn more about [using your own encryption keys](/kms/docs/quickstart). Corresponds to the JSON property `kmsKey` @return [String]

labels[RW]

Labels to apply to this instance. These can be later modified by the setLabels method. Corresponds to the JSON property `labels` @return [Hash<String,String>]

machine_type[RW]

Required. The [Compute Engine machine type](/compute/docs/machine-types) of this instance. Corresponds to the JSON property `machineType` @return [String]

metadata[RW]

Custom metadata to apply to this instance. Corresponds to the JSON property `metadata` @return [Hash<String,String>]

name[RW]

Output only. The name of this notebook instance. Format: `projects/`project_id` /locations/`location`/instances/`instance_id“ Corresponds to the JSON property `name` @return [String]

network[RW]

The name of the VPC that this instance is in. Format: `projects/`project_id`/ global/networks/`network_id“ Corresponds to the JSON property `network` @return [String]

nic_type[RW]

Optional. The type of vNIC to be used on this interface. This may be gVNIC or VirtioNet. Corresponds to the JSON property `nicType` @return [String]

no_proxy_access[RW]

If true, the notebook instance will not register with the proxy. Corresponds to the JSON property `noProxyAccess` @return [Boolean]

no_proxy_access?[RW]

If true, the notebook instance will not register with the proxy. Corresponds to the JSON property `noProxyAccess` @return [Boolean]

no_public_ip[RW]

If true, no public IP will be assigned to this instance. Corresponds to the JSON property `noPublicIp` @return [Boolean]

no_public_ip?[RW]

If true, no public IP will be assigned to this instance. Corresponds to the JSON property `noPublicIp` @return [Boolean]

no_remove_data_disk[RW]

Input only. If true, the data disk will not be auto deleted when deleting the instance. Corresponds to the JSON property `noRemoveDataDisk` @return [Boolean]

no_remove_data_disk?[RW]

Input only. If true, the data disk will not be auto deleted when deleting the instance. Corresponds to the JSON property `noRemoveDataDisk` @return [Boolean]

post_startup_script[RW]

Path to a Bash script that automatically runs after a notebook instance fully boots up. The path must be a URL or Cloud Storage path (gs://path-to-file/file- name). Corresponds to the JSON property `postStartupScript` @return [String]

proxy_uri[RW]

Output only. The proxy endpoint that is used to access the Jupyter notebook. Corresponds to the JSON property `proxyUri` @return [String]

reservation_affinity[RW]

Reservation Affinity for consuming Zonal reservation. Corresponds to the JSON property `reservationAffinity` @return [Google::Apis::NotebooksV1::ReservationAffinity]

service_account[RW]

The service account on this instance, giving access to other Google Cloud services. You can use any service account within the same project, but you must have the service account user permission to use the instance. If not specified, the [Compute Engine default service account](cloud.google. com/compute/docs/access/service-accounts#default_service_account) is used. Corresponds to the JSON property `serviceAccount` @return [String]

service_account_scopes[RW]

Optional. The URIs of service account scopes to be included in Compute Engine instances. If not specified, the following [scopes](cloud.google.com/ compute/docs/access/service-accounts#accesscopesiam) are defined: - https:// www.googleapis.com/auth/cloud-platform - www.googleapis.com/auth/ userinfo.email If not using default scopes, you need at least: www. googleapis.com/auth/compute Corresponds to the JSON property `serviceAccountScopes` @return [Array<String>]

shielded_instance_config[RW]

A set of Shielded Instance options. Check [Images using supported Shielded VM features] Not all combinations are valid. Corresponds to the JSON property `shieldedInstanceConfig` @return [Google::Apis::NotebooksV1::ShieldedInstanceConfig]

state[RW]

Output only. The state of this instance. Corresponds to the JSON property `state` @return [String]

subnet[RW]

The name of the subnet that this instance is in. Format: `projects/`project_id` /regions/`region`/subnetworks/`subnetwork_id“ Corresponds to the JSON property `subnet` @return [String]

tags[RW]

Optional. The Compute Engine tags to add to runtime (see [Tagging instances]( cloud.google.com/compute/docs/label-or-tag-resources#tags)). Corresponds to the JSON property `tags` @return [Array<String>]

update_time[RW]

Output only. Instance update time. Corresponds to the JSON property `updateTime` @return [String]

upgrade_history[RW]

The upgrade history of this instance. Corresponds to the JSON property `upgradeHistory` @return [Array<Google::Apis::NotebooksV1::UpgradeHistoryEntry>]

vm_image[RW]

Definition of a custom Compute Engine virtual machine image for starting a notebook instance with the environment installed directly on the VM. Corresponds to the JSON property `vmImage` @return [Google::Apis::NotebooksV1::VmImage]

Public Class Methods

new(**args) click to toggle source
# File lib/google/apis/notebooks_v1/classes.rb, line 921
def initialize(**args)
   update!(**args)
end

Public Instance Methods

update!(**args) click to toggle source

Update properties of this object

# File lib/google/apis/notebooks_v1/classes.rb, line 926
def update!(**args)
  @accelerator_config = args[:accelerator_config] if args.key?(:accelerator_config)
  @boot_disk_size_gb = args[:boot_disk_size_gb] if args.key?(:boot_disk_size_gb)
  @boot_disk_type = args[:boot_disk_type] if args.key?(:boot_disk_type)
  @container_image = args[:container_image] if args.key?(:container_image)
  @create_time = args[:create_time] if args.key?(:create_time)
  @custom_gpu_driver_path = args[:custom_gpu_driver_path] if args.key?(:custom_gpu_driver_path)
  @data_disk_size_gb = args[:data_disk_size_gb] if args.key?(:data_disk_size_gb)
  @data_disk_type = args[:data_disk_type] if args.key?(:data_disk_type)
  @disk_encryption = args[:disk_encryption] if args.key?(:disk_encryption)
  @disks = args[:disks] if args.key?(:disks)
  @install_gpu_driver = args[:install_gpu_driver] if args.key?(:install_gpu_driver)
  @instance_owners = args[:instance_owners] if args.key?(:instance_owners)
  @kms_key = args[:kms_key] if args.key?(:kms_key)
  @labels = args[:labels] if args.key?(:labels)
  @machine_type = args[:machine_type] if args.key?(:machine_type)
  @metadata = args[:metadata] if args.key?(:metadata)
  @name = args[:name] if args.key?(:name)
  @network = args[:network] if args.key?(:network)
  @nic_type = args[:nic_type] if args.key?(:nic_type)
  @no_proxy_access = args[:no_proxy_access] if args.key?(:no_proxy_access)
  @no_public_ip = args[:no_public_ip] if args.key?(:no_public_ip)
  @no_remove_data_disk = args[:no_remove_data_disk] if args.key?(:no_remove_data_disk)
  @post_startup_script = args[:post_startup_script] if args.key?(:post_startup_script)
  @proxy_uri = args[:proxy_uri] if args.key?(:proxy_uri)
  @reservation_affinity = args[:reservation_affinity] if args.key?(:reservation_affinity)
  @service_account = args[:service_account] if args.key?(:service_account)
  @service_account_scopes = args[:service_account_scopes] if args.key?(:service_account_scopes)
  @shielded_instance_config = args[:shielded_instance_config] if args.key?(:shielded_instance_config)
  @state = args[:state] if args.key?(:state)
  @subnet = args[:subnet] if args.key?(:subnet)
  @tags = args[:tags] if args.key?(:tags)
  @update_time = args[:update_time] if args.key?(:update_time)
  @upgrade_history = args[:upgrade_history] if args.key?(:upgrade_history)
  @vm_image = args[:vm_image] if args.key?(:vm_image)
end