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.



5442
5443
5444
# File 'lib/google/apis/gkeonprem_v1/classes.rb', line 5442

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)


5413
5414
5415
# File 'lib/google/apis/gkeonprem_v1/classes.rb', line 5413

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)


5420
5421
5422
# File 'lib/google/apis/gkeonprem_v1/classes.rb', line 5420

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



5425
5426
5427
# File 'lib/google/apis/gkeonprem_v1/classes.rb', line 5425

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)


5430
5431
5432
# File 'lib/google/apis/gkeonprem_v1/classes.rb', line 5430

def master_ip
  @master_ip
end

#stackdriver_nameString

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

Returns:

  • (String)


5435
5436
5437
# File 'lib/google/apis/gkeonprem_v1/classes.rb', line 5435

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


5440
5441
5442
# File 'lib/google/apis/gkeonprem_v1/classes.rb', line 5440

def vms
  @vms
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



5447
5448
5449
5450
5451
5452
5453
5454
# File 'lib/google/apis/gkeonprem_v1/classes.rb', line 5447

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