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.



5812
5813
5814
# File 'lib/google/apis/gkeonprem_v1/classes.rb', line 5812

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)


5783
5784
5785
# File 'lib/google/apis/gkeonprem_v1/classes.rb', line 5783

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)


5790
5791
5792
# File 'lib/google/apis/gkeonprem_v1/classes.rb', line 5790

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



5795
5796
5797
# File 'lib/google/apis/gkeonprem_v1/classes.rb', line 5795

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)


5800
5801
5802
# File 'lib/google/apis/gkeonprem_v1/classes.rb', line 5800

def master_ip
  @master_ip
end

#stackdriver_nameString

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

Returns:

  • (String)


5805
5806
5807
# File 'lib/google/apis/gkeonprem_v1/classes.rb', line 5805

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


5810
5811
5812
# File 'lib/google/apis/gkeonprem_v1/classes.rb', line 5810

def vms
  @vms
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



5817
5818
5819
5820
5821
5822
5823
5824
# File 'lib/google/apis/gkeonprem_v1/classes.rb', line 5817

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