Class: Google::Apis::TpuV2::Node

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
lib/google/apis/tpu_v2/classes.rb,
lib/google/apis/tpu_v2/representations.rb,
lib/google/apis/tpu_v2/representations.rb

Overview

A TPU instance.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ Node

Returns a new instance of Node.



962
963
964
# File 'lib/google/apis/tpu_v2/classes.rb', line 962

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#accelerator_configGoogle::Apis::TpuV2::AcceleratorConfig

A TPU accelerator configuration. Corresponds to the JSON property acceleratorConfig



815
816
817
# File 'lib/google/apis/tpu_v2/classes.rb', line 815

def accelerator_config
  @accelerator_config
end

#accelerator_typeString

Optional. The type of hardware accelerators associated with this node. Corresponds to the JSON property acceleratorType

Returns:

  • (String)


820
821
822
# File 'lib/google/apis/tpu_v2/classes.rb', line 820

def accelerator_type
  @accelerator_type
end

#api_versionString

Output only. The API version that created this Node. Corresponds to the JSON property apiVersion

Returns:

  • (String)


825
826
827
# File 'lib/google/apis/tpu_v2/classes.rb', line 825

def api_version
  @api_version
end

#boot_disk_configGoogle::Apis::TpuV2::BootDiskConfig

Sets the boot disk configuration for the TPU node. Corresponds to the JSON property bootDiskConfig



830
831
832
# File 'lib/google/apis/tpu_v2/classes.rb', line 830

def boot_disk_config
  @boot_disk_config
end

#cidr_blockString

The CIDR block that the TPU node will use when selecting an IP address. This CIDR block must be a /29 block; the Compute Engine networks API forbids a smaller block, and using a larger block would be wasteful (a node can only consume one IP address). Errors will occur if the CIDR block has already been used for a currently existing TPU node, the CIDR block conflicts with any subnetworks in the user's provided network, or the provided network is peered with another network that is using that CIDR block. Corresponds to the JSON property cidrBlock

Returns:

  • (String)


841
842
843
# File 'lib/google/apis/tpu_v2/classes.rb', line 841

def cidr_block
  @cidr_block
end

#create_timeString

Output only. The time when the node was created. Corresponds to the JSON property createTime

Returns:

  • (String)


846
847
848
# File 'lib/google/apis/tpu_v2/classes.rb', line 846

def create_time
  @create_time
end

#data_disksArray<Google::Apis::TpuV2::AttachedDisk>

The additional data disks for the Node. Corresponds to the JSON property dataDisks



851
852
853
# File 'lib/google/apis/tpu_v2/classes.rb', line 851

def data_disks
  @data_disks
end

#descriptionString

The user-supplied description of the TPU. Maximum of 512 characters. Corresponds to the JSON property description

Returns:

  • (String)


856
857
858
# File 'lib/google/apis/tpu_v2/classes.rb', line 856

def description
  @description
end

#healthString

The health status of the TPU node. Corresponds to the JSON property health

Returns:

  • (String)


861
862
863
# File 'lib/google/apis/tpu_v2/classes.rb', line 861

def health
  @health
end

#health_descriptionString

Output only. If this field is populated, it contains a description of why the TPU Node is unhealthy. Corresponds to the JSON property healthDescription

Returns:

  • (String)


867
868
869
# File 'lib/google/apis/tpu_v2/classes.rb', line 867

def health_description
  @health_description
end

#idFixnum

Output only. The unique identifier for the TPU Node. Corresponds to the JSON property id

Returns:

  • (Fixnum)


872
873
874
# File 'lib/google/apis/tpu_v2/classes.rb', line 872

def id
  @id
end

#labelsHash<String,String>

Resource labels to represent user-provided metadata. Corresponds to the JSON property labels

Returns:

  • (Hash<String,String>)


877
878
879
# File 'lib/google/apis/tpu_v2/classes.rb', line 877

def labels
  @labels
end

#metadataHash<String,String>

Custom metadata to apply to the TPU Node. Can set startup-script and shutdown- script Corresponds to the JSON property metadata

Returns:

  • (Hash<String,String>)


883
884
885
# File 'lib/google/apis/tpu_v2/classes.rb', line 883

def 
  @metadata
end

#multislice_nodeBoolean Also known as: multislice_node?

Output only. Whether the Node belongs to a Multislice group. Corresponds to the JSON property multisliceNode

Returns:

  • (Boolean)


888
889
890
# File 'lib/google/apis/tpu_v2/classes.rb', line 888

def multislice_node
  @multislice_node
end

#nameString

Output only. Immutable. The name of the TPU. Corresponds to the JSON property name

Returns:

  • (String)


894
895
896
# File 'lib/google/apis/tpu_v2/classes.rb', line 894

def name
  @name
end

#network_configGoogle::Apis::TpuV2::NetworkConfig

Network related configurations. Corresponds to the JSON property networkConfig



899
900
901
# File 'lib/google/apis/tpu_v2/classes.rb', line 899

def network_config
  @network_config
end

#network_configsArray<Google::Apis::TpuV2::NetworkConfig>

Optional. Repeated network configurations for the TPU node. This field is used to specify multiple networks configs for the TPU node. network_config and network_configs are mutually exclusive, you can only specify one of them. If both are specified, an error will be returned. Corresponds to the JSON property networkConfigs



907
908
909
# File 'lib/google/apis/tpu_v2/classes.rb', line 907

def network_configs
  @network_configs
end

#network_endpointsArray<Google::Apis::TpuV2::NetworkEndpoint>

Output only. The network endpoints where TPU workers can be accessed and sent work. It is recommended that runtime clients of the node reach out to the 0th entry in this map first. Corresponds to the JSON property networkEndpoints



914
915
916
# File 'lib/google/apis/tpu_v2/classes.rb', line 914

def network_endpoints
  @network_endpoints
end

#queued_resourceString

Output only. The qualified name of the QueuedResource that requested this Node. Corresponds to the JSON property queuedResource

Returns:

  • (String)


919
920
921
# File 'lib/google/apis/tpu_v2/classes.rb', line 919

def queued_resource
  @queued_resource
end

#runtime_versionString

Required. The runtime version running in the Node. Corresponds to the JSON property runtimeVersion

Returns:

  • (String)


924
925
926
# File 'lib/google/apis/tpu_v2/classes.rb', line 924

def runtime_version
  @runtime_version
end

#scheduling_configGoogle::Apis::TpuV2::SchedulingConfig

Sets the scheduling options for this node. Corresponds to the JSON property schedulingConfig



929
930
931
# File 'lib/google/apis/tpu_v2/classes.rb', line 929

def scheduling_config
  @scheduling_config
end

#service_accountGoogle::Apis::TpuV2::ServiceAccount

A service account. Corresponds to the JSON property serviceAccount



934
935
936
# File 'lib/google/apis/tpu_v2/classes.rb', line 934

def 
  @service_account
end

#shielded_instance_configGoogle::Apis::TpuV2::ShieldedInstanceConfig

A set of Shielded Instance options. Corresponds to the JSON property shieldedInstanceConfig



939
940
941
# File 'lib/google/apis/tpu_v2/classes.rb', line 939

def shielded_instance_config
  @shielded_instance_config
end

#stateString

Output only. The current state for the TPU Node. Corresponds to the JSON property state

Returns:

  • (String)


944
945
946
# File 'lib/google/apis/tpu_v2/classes.rb', line 944

def state
  @state
end

#symptomsArray<Google::Apis::TpuV2::Symptom>

Output only. The Symptoms that have occurred to the TPU Node. Corresponds to the JSON property symptoms

Returns:



949
950
951
# File 'lib/google/apis/tpu_v2/classes.rb', line 949

def symptoms
  @symptoms
end

#tagsArray<String>

Tags to apply to the TPU Node. Tags are used to identify valid sources or targets for network firewalls. Corresponds to the JSON property tags

Returns:

  • (Array<String>)


955
956
957
# File 'lib/google/apis/tpu_v2/classes.rb', line 955

def tags
  @tags
end

#upcoming_maintenanceGoogle::Apis::TpuV2::UpcomingMaintenance

Upcoming Maintenance notification information. Corresponds to the JSON property upcomingMaintenance



960
961
962
# File 'lib/google/apis/tpu_v2/classes.rb', line 960

def upcoming_maintenance
  @upcoming_maintenance
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
# File 'lib/google/apis/tpu_v2/classes.rb', line 967

def update!(**args)
  @accelerator_config = args[:accelerator_config] if args.key?(:accelerator_config)
  @accelerator_type = args[:accelerator_type] if args.key?(:accelerator_type)
  @api_version = args[:api_version] if args.key?(:api_version)
  @boot_disk_config = args[:boot_disk_config] if args.key?(:boot_disk_config)
  @cidr_block = args[:cidr_block] if args.key?(:cidr_block)
  @create_time = args[:create_time] if args.key?(:create_time)
  @data_disks = args[:data_disks] if args.key?(:data_disks)
  @description = args[:description] if args.key?(:description)
  @health = args[:health] if args.key?(:health)
  @health_description = args[:health_description] if args.key?(:health_description)
  @id = args[:id] if args.key?(:id)
  @labels = args[:labels] if args.key?(:labels)
  @metadata = args[:metadata] if args.key?(:metadata)
  @multislice_node = args[:multislice_node] if args.key?(:multislice_node)
  @name = args[:name] if args.key?(:name)
  @network_config = args[:network_config] if args.key?(:network_config)
  @network_configs = args[:network_configs] if args.key?(:network_configs)
  @network_endpoints = args[:network_endpoints] if args.key?(:network_endpoints)
  @queued_resource = args[:queued_resource] if args.key?(:queued_resource)
  @runtime_version = args[:runtime_version] if args.key?(:runtime_version)
  @scheduling_config = args[:scheduling_config] if args.key?(:scheduling_config)
  @service_account = args[:service_account] if args.key?(:service_account)
  @shielded_instance_config = args[:shielded_instance_config] if args.key?(:shielded_instance_config)
  @state = args[:state] if args.key?(:state)
  @symptoms = args[:symptoms] if args.key?(:symptoms)
  @tags = args[:tags] if args.key?(:tags)
  @upcoming_maintenance = args[:upcoming_maintenance] if args.key?(:upcoming_maintenance)
end