Class: Google::Apis::GkeonpremV1::VmwareSeesawConfig

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

Overview

VmwareSeesawConfig represents configuration parameters for an already existing Seesaw load balancer. IMPORTANT: Please note that the Anthos On-Prem API will not generate or update Seesaw configurations it can only bind a pre-existing configuration to a new user cluster. IMPORTANT: When attempting to create a user cluster with a pre-existing Seesaw load balancer you will need to follow some preparation steps before calling the 'CreateVmwareCluster' API method. First you will need to create the user cluster's namespace via kubectl. The namespace will need to use the following naming convention : -gke-onprem-mgmt or -gke-onprem-mgmt depending on whether you used the 'VmwareCluster. local_name' to disambiguate collisions; for more context see the documentation of 'VmwareCluster.local_name'. Once the namespace is created you will need to create a secret resource via kubectl. This secret will contain copies of your Seesaw credentials. The Secret must be called 'user-cluster-creds' and contain Seesaw's SSH and Cert credentials. The credentials must be keyed with the following names: 'seesaw-ssh-private-key', 'seesaw-ssh-public-key', 'seesaw- ssh-ca-key', 'seesaw-ssh-ca-cert'.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ VmwareSeesawConfig

Returns a new instance of VmwareSeesawConfig.

[View source]

5522
5523
5524
# File 'lib/google/apis/gkeonprem_v1/classes.rb', line 5522

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

Instance Attribute Details

#enable_haBoolean Also known as: enable_ha?

Enable two load balancer VMs to achieve a highly-available Seesaw load balancer. Corresponds to the JSON property enableHa

Returns:

  • (Boolean)

5493
5494
5495
# File 'lib/google/apis/gkeonprem_v1/classes.rb', line 5493

def enable_ha
  @enable_ha
end

#groupString

Required. In general the following format should be used for the Seesaw group name: seesaw-for-[cluster_name]. Corresponds to the JSON property group

Returns:

  • (String)

5500
5501
5502
# File 'lib/google/apis/gkeonprem_v1/classes.rb', line 5500

def group
  @group
end

#ip_blocksArray<Google::Apis::GkeonpremV1::VmwareIpBlock>

Required. The IP Blocks to be used by the Seesaw load balancer Corresponds to the JSON property ipBlocks


5505
5506
5507
# File 'lib/google/apis/gkeonprem_v1/classes.rb', line 5505

def ip_blocks
  @ip_blocks
end

#master_ipString

Required. MasterIP is the IP announced by the master of Seesaw group. Corresponds to the JSON property masterIp

Returns:

  • (String)

5510
5511
5512
# File 'lib/google/apis/gkeonprem_v1/classes.rb', line 5510

def master_ip
  @master_ip
end

#stackdriver_nameString

Name to be used by Stackdriver. Corresponds to the JSON property stackdriverName

Returns:

  • (String)

5515
5516
5517
# File 'lib/google/apis/gkeonprem_v1/classes.rb', line 5515

def stackdriver_name
  @stackdriver_name
end

#vmsArray<String>

Names of the VMs created for this Seesaw group. Corresponds to the JSON property vms

Returns:

  • (Array<String>)

5520
5521
5522
# File 'lib/google/apis/gkeonprem_v1/classes.rb', line 5520

def vms
  @vms
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object

[View source]

5527
5528
5529
5530
5531
5532
5533
5534
# File 'lib/google/apis/gkeonprem_v1/classes.rb', line 5527

def update!(**args)
  @enable_ha = args[:enable_ha] if args.key?(:enable_ha)
  @group = args[:group] if args.key?(:group)
  @ip_blocks = args[:ip_blocks] if args.key?(:ip_blocks)
  @master_ip = args[:master_ip] if args.key?(:master_ip)
  @stackdriver_name = args[:stackdriver_name] if args.key?(:stackdriver_name)
  @vms = args[:vms] if args.key?(:vms)
end