Class: Google::Apis::BaremetalsolutionV2::Instance

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

Overview

A server.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ Instance

Returns a new instance of Instance.



440
441
442
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 440

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

Instance Attribute Details

#create_timeString

Output only. Create a time stamp. Corresponds to the JSON property createTime

Returns:

  • (String)


317
318
319
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 317

def create_time
  @create_time
end

#firmware_versionString

Output only. The firmware version for the instance. Corresponds to the JSON property firmwareVersion

Returns:

  • (String)


322
323
324
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 322

def firmware_version
  @firmware_version
end

#hyperthreading_enabledBoolean Also known as: hyperthreading_enabled?

True if you enable hyperthreading for the server, otherwise false. The default value is false. Corresponds to the JSON property hyperthreadingEnabled

Returns:

  • (Boolean)


328
329
330
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 328

def hyperthreading_enabled
  @hyperthreading_enabled
end

#idString

Output only. An identifier for the Instance, generated by the backend. Corresponds to the JSON property id

Returns:

  • (String)


334
335
336
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 334

def id
  @id
end

#interactive_serial_console_enabledBoolean Also known as: interactive_serial_console_enabled?

Output only. True if the interactive serial console feature is enabled for the instance, false otherwise. The default value is false. Corresponds to the JSON property interactiveSerialConsoleEnabled

Returns:

  • (Boolean)


340
341
342
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 340

def interactive_serial_console_enabled
  @interactive_serial_console_enabled
end

#kms_key_versionString

Optional. Name of the KMS crypto key version used to encrypt the initial passwords. The key has to have ASYMMETRIC_DECRYPT purpose. Format is projects/ project/locations/location/keyRings/keyring/cryptoKeys/key/ cryptoKeyVersions/version`. Corresponds to the JSON propertykmsKeyVersion`

Returns:

  • (String)


349
350
351
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 349

def kms_key_version
  @kms_key_version
end

#labelsHash<String,String>

Labels as key value pairs. Corresponds to the JSON property labels

Returns:

  • (Hash<String,String>)


354
355
356
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 354

def labels
  @labels
end

#logical_interfacesArray<Google::Apis::BaremetalsolutionV2::GoogleCloudBaremetalsolutionV2LogicalInterface>

List of logical interfaces for the instance. The number of logical interfaces will be the same as number of hardware bond/nic on the chosen network template. For the non-multivlan configurations (for eg, existing servers) that use existing default network template (bondaa-bondaa), both the Instance.networks field and the Instance.logical_interfaces fields will be filled to ensure backward compatibility. For the others, only Instance.logical_interfaces will be filled. Corresponds to the JSON property logicalInterfaces



365
366
367
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 365

def logical_interfaces
  @logical_interfaces
end

#login_infoString

Output only. Text field about info for logging in. Corresponds to the JSON property loginInfo

Returns:

  • (String)


370
371
372
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 370

def 
  @login_info
end

#lunsArray<Google::Apis::BaremetalsolutionV2::Lun>

Immutable. List of LUNs associated with this server. Corresponds to the JSON property luns



375
376
377
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 375

def luns
  @luns
end

#machine_typeString

Immutable. The server type. Available server types Corresponds to the JSON property machineType

Returns:

  • (String)


381
382
383
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 381

def machine_type
  @machine_type
end

#nameString

Immutable. The resource name of this Instance. Resource names are schemeless URIs that follow the conventions in https://cloud.google.com/apis/design/ resource_names. Format: projects/project/locations/location/instances/ instance` Corresponds to the JSON propertyname`

Returns:

  • (String)


389
390
391
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 389

def name
  @name
end

#network_templateString

Instance network template name. For eg, bondaa-bondaa, bondab-nic, etc. Generally, the template name follows the syntax of "bond" or "nic". Corresponds to the JSON property networkTemplate

Returns:

  • (String)


395
396
397
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 395

def network_template
  @network_template
end

#networksArray<Google::Apis::BaremetalsolutionV2::Network>

Output only. List of networks associated with this server. Corresponds to the JSON property networks



400
401
402
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 400

def networks
  @networks
end

#os_imageString

The OS image currently installed on the server. Corresponds to the JSON property osImage

Returns:

  • (String)


405
406
407
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 405

def os_image
  @os_image
end

#podString

Immutable. Pod name. Pod is an independent part of infrastructure. Instance can only be connected to the assets (networks, volumes) allocated in the same pod. Corresponds to the JSON property pod

Returns:

  • (String)


412
413
414
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 412

def pod
  @pod
end

#ssh_keysArray<String>

Optional. List of SSH Keys used during instance provisioning. Corresponds to the JSON property sshKeys

Returns:

  • (Array<String>)


417
418
419
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 417

def ssh_keys
  @ssh_keys
end

#stateString

Output only. The state of the server. Corresponds to the JSON property state

Returns:

  • (String)


422
423
424
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 422

def state
  @state
end

#update_timeString

Output only. Update a time stamp. Corresponds to the JSON property updateTime

Returns:

  • (String)


427
428
429
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 427

def update_time
  @update_time
end

#volumesArray<Google::Apis::BaremetalsolutionV2::Volume>

Input only. List of Volumes to attach to this Instance on creation. This field won't be populated in Get/List responses. Corresponds to the JSON property volumes



433
434
435
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 433

def volumes
  @volumes
end

#workload_profileString

The workload profile for the instance. Corresponds to the JSON property workloadProfile

Returns:

  • (String)


438
439
440
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 438

def workload_profile
  @workload_profile
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 445

def update!(**args)
  @create_time = args[:create_time] if args.key?(:create_time)
  @firmware_version = args[:firmware_version] if args.key?(:firmware_version)
  @hyperthreading_enabled = args[:hyperthreading_enabled] if args.key?(:hyperthreading_enabled)
  @id = args[:id] if args.key?(:id)
  @interactive_serial_console_enabled = args[:interactive_serial_console_enabled] if args.key?(:interactive_serial_console_enabled)
  @kms_key_version = args[:kms_key_version] if args.key?(:kms_key_version)
  @labels = args[:labels] if args.key?(:labels)
  @logical_interfaces = args[:logical_interfaces] if args.key?(:logical_interfaces)
  @login_info = args[:login_info] if args.key?(:login_info)
  @luns = args[:luns] if args.key?(:luns)
  @machine_type = args[:machine_type] if args.key?(:machine_type)
  @name = args[:name] if args.key?(:name)
  @network_template = args[:network_template] if args.key?(:network_template)
  @networks = args[:networks] if args.key?(:networks)
  @os_image = args[:os_image] if args.key?(:os_image)
  @pod = args[:pod] if args.key?(:pod)
  @ssh_keys = args[:ssh_keys] if args.key?(:ssh_keys)
  @state = args[:state] if args.key?(:state)
  @update_time = args[:update_time] if args.key?(:update_time)
  @volumes = args[:volumes] if args.key?(:volumes)
  @workload_profile = args[:workload_profile] if args.key?(:workload_profile)
end