Class: Google::Apis::TpuV2alpha1::Node

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
lib/google/apis/tpu_v2alpha1/classes.rb,
lib/google/apis/tpu_v2alpha1/representations.rb,
lib/google/apis/tpu_v2alpha1/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.



876
877
878
# File 'lib/google/apis/tpu_v2alpha1/classes.rb', line 876

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

Instance Attribute Details

#accelerator_configGoogle::Apis::TpuV2alpha1::AcceleratorConfig

A TPU accelerator configuration. Corresponds to the JSON property acceleratorConfig



747
748
749
# File 'lib/google/apis/tpu_v2alpha1/classes.rb', line 747

def accelerator_config
  @accelerator_config
end

#accelerator_typeString

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

Returns:

  • (String)


752
753
754
# File 'lib/google/apis/tpu_v2alpha1/classes.rb', line 752

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)


757
758
759
# File 'lib/google/apis/tpu_v2alpha1/classes.rb', line 757

def api_version
  @api_version
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)


768
769
770
# File 'lib/google/apis/tpu_v2alpha1/classes.rb', line 768

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)


773
774
775
# File 'lib/google/apis/tpu_v2alpha1/classes.rb', line 773

def create_time
  @create_time
end

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

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



778
779
780
# File 'lib/google/apis/tpu_v2alpha1/classes.rb', line 778

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)


783
784
785
# File 'lib/google/apis/tpu_v2alpha1/classes.rb', line 783

def description
  @description
end

#healthString

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

Returns:

  • (String)


788
789
790
# File 'lib/google/apis/tpu_v2alpha1/classes.rb', line 788

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)


794
795
796
# File 'lib/google/apis/tpu_v2alpha1/classes.rb', line 794

def health_description
  @health_description
end

#idFixnum

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

Returns:

  • (Fixnum)


799
800
801
# File 'lib/google/apis/tpu_v2alpha1/classes.rb', line 799

def id
  @id
end

#labelsHash<String,String>

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

Returns:

  • (Hash<String,String>)


804
805
806
# File 'lib/google/apis/tpu_v2alpha1/classes.rb', line 804

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>)


810
811
812
# File 'lib/google/apis/tpu_v2alpha1/classes.rb', line 810

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)


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

def multislice_node
  @multislice_node
end

#nameString

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

Returns:

  • (String)


821
822
823
# File 'lib/google/apis/tpu_v2alpha1/classes.rb', line 821

def name
  @name
end

#network_configGoogle::Apis::TpuV2alpha1::NetworkConfig

Network related configurations. Corresponds to the JSON property networkConfig



826
827
828
# File 'lib/google/apis/tpu_v2alpha1/classes.rb', line 826

def network_config
  @network_config
end

#network_endpointsArray<Google::Apis::TpuV2alpha1::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



833
834
835
# File 'lib/google/apis/tpu_v2alpha1/classes.rb', line 833

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)


838
839
840
# File 'lib/google/apis/tpu_v2alpha1/classes.rb', line 838

def queued_resource
  @queued_resource
end

#runtime_versionString

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

Returns:

  • (String)


843
844
845
# File 'lib/google/apis/tpu_v2alpha1/classes.rb', line 843

def runtime_version
  @runtime_version
end

#scheduling_configGoogle::Apis::TpuV2alpha1::SchedulingConfig

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



848
849
850
# File 'lib/google/apis/tpu_v2alpha1/classes.rb', line 848

def scheduling_config
  @scheduling_config
end

#service_accountGoogle::Apis::TpuV2alpha1::ServiceAccount

A service account. Corresponds to the JSON property serviceAccount



853
854
855
# File 'lib/google/apis/tpu_v2alpha1/classes.rb', line 853

def 
  @service_account
end

#shielded_instance_configGoogle::Apis::TpuV2alpha1::ShieldedInstanceConfig

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



858
859
860
# File 'lib/google/apis/tpu_v2alpha1/classes.rb', line 858

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)


863
864
865
# File 'lib/google/apis/tpu_v2alpha1/classes.rb', line 863

def state
  @state
end

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

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



868
869
870
# File 'lib/google/apis/tpu_v2alpha1/classes.rb', line 868

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>)


874
875
876
# File 'lib/google/apis/tpu_v2alpha1/classes.rb', line 874

def tags
  @tags
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
# File 'lib/google/apis/tpu_v2alpha1/classes.rb', line 881

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)
  @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_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)
end