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.



5342
5343
5344
# File 'lib/google/apis/gkeonprem_v1/classes.rb', line 5342

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)


5313
5314
5315
# File 'lib/google/apis/gkeonprem_v1/classes.rb', line 5313

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)


5320
5321
5322
# File 'lib/google/apis/gkeonprem_v1/classes.rb', line 5320

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



5325
5326
5327
# File 'lib/google/apis/gkeonprem_v1/classes.rb', line 5325

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)


5330
5331
5332
# File 'lib/google/apis/gkeonprem_v1/classes.rb', line 5330

def master_ip
  @master_ip
end

#stackdriver_nameString

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

Returns:

  • (String)


5335
5336
5337
# File 'lib/google/apis/gkeonprem_v1/classes.rb', line 5335

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


5340
5341
5342
# File 'lib/google/apis/gkeonprem_v1/classes.rb', line 5340

def vms
  @vms
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



5347
5348
5349
5350
5351
5352
5353
5354
# File 'lib/google/apis/gkeonprem_v1/classes.rb', line 5347

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