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

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.



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

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)


5486
5487
5488
# File 'lib/google/apis/gkeonprem_v1/classes.rb', line 5486

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)


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

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



5498
5499
5500
# File 'lib/google/apis/gkeonprem_v1/classes.rb', line 5498

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)


5503
5504
5505
# File 'lib/google/apis/gkeonprem_v1/classes.rb', line 5503

def master_ip
  @master_ip
end

#stackdriver_nameString

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

Returns:

  • (String)


5508
5509
5510
# File 'lib/google/apis/gkeonprem_v1/classes.rb', line 5508

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


5513
5514
5515
# File 'lib/google/apis/gkeonprem_v1/classes.rb', line 5513

def vms
  @vms
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



5520
5521
5522
5523
5524
5525
5526
5527
# File 'lib/google/apis/gkeonprem_v1/classes.rb', line 5520

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