vsphere

package
v0.12.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 3, 2022 License: Apache-2.0, MIT Imports: 3 Imported by: 0

Documentation

Index

Constants

View Source
const (
	Ensurer_Version1_NSXT25 = "1"
	Ensurer_Version2_NSXT30 = "2"
)
View Source
const GroupName = "vsphere.provider.extensions.gardener.cloud"

GroupName is the group name use in this package

View Source
const (
	LoadBalancerDefaultClassName = "default"
)

Variables

View Source
var (
	// SchemeBuilder used to register the Shoot resource.
	SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes)
	// AddToScheme is a pointer to SchemeBuilder.AddToScheme.
	AddToScheme = SchemeBuilder.AddToScheme
)
View Source
var SchemeGroupVersion = schema.GroupVersion{Group: GroupName, Version: runtime.APIVersionInternal}

SchemeGroupVersion is group version used to register these objects

Functions

func Kind

func Kind(kind string) schema.GroupKind

Kind takes an unqualified kind and returns a Group qualified GroupKind

func Resource

func Resource(resource string) schema.GroupResource

Resource takes an unqualified resource and returns a Group qualified GroupResource

Types

type AdvancedDHCPState

type AdvancedDHCPState struct {
	LogicalSwitchID *string
	ProfileID       *string
	ServerID        *string
	PortID          *string
	IPPoolID        *string
}

AdvancedDHCPState holds IDs of objects managed with the NSX-T Advanced API

func (*AdvancedDHCPState) DeepCopy

func (in *AdvancedDHCPState) DeepCopy() *AdvancedDHCPState

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AdvancedDHCPState.

func (*AdvancedDHCPState) DeepCopyInto

func (in *AdvancedDHCPState) DeepCopyInto(out *AdvancedDHCPState)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type CPLoadBalancerClass

type CPLoadBalancerClass struct {
	Name string
	// IPPoolName is the name of the NSX-T IP pool.
	IPPoolName *string
	// TCPAppProfileName is the profile name of the load balaner profile for TCP
	TCPAppProfileName *string
	// UDPAppProfileName is the profile name of the load balaner profile for UDP
	UDPAppProfileName *string
}

CPLoadBalancerClass provides the name of a load balancer

func (*CPLoadBalancerClass) DeepCopy

func (in *CPLoadBalancerClass) DeepCopy() *CPLoadBalancerClass

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CPLoadBalancerClass.

func (*CPLoadBalancerClass) DeepCopyInto

func (in *CPLoadBalancerClass) DeepCopyInto(out *CPLoadBalancerClass)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type CloudControllerManagerConfig

type CloudControllerManagerConfig struct {
	// FeatureGates contains information about enabled feature gates.
	FeatureGates map[string]bool
}

CloudControllerManagerConfig contains configuration settings for the cloud-controller-manager.

func (*CloudControllerManagerConfig) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CloudControllerManagerConfig.

func (*CloudControllerManagerConfig) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type CloudProfileConfig

type CloudProfileConfig struct {
	metav1.TypeMeta
	// NamePrefix is used for naming NSX-T resources
	NamePrefix string
	// Folder is the vSphere folder name to store the cloned machine VM (worker nodes)
	Folder string
	// Regions is the specification of regions and zones topology
	Regions []RegionSpec
	// DefaultClassStoragePolicyName is the name of the vSphere storage policy to use for the 'default-class' storage class
	DefaultClassStoragePolicyName string
	// FailureDomainLabels are the tag categories used for regions and zones.
	FailureDomainLabels *FailureDomainLabels
	// DNSServers is a list of IPs of DNS servers used while creating subnets.
	DNSServers []string
	// DHCPOptions contains optional options for DHCP like Domain name, NTP server,...
	DHCPOptions []DHCPOption

	// MachineImages is the list of machine images that are understood by the controller. It maps
	// logical names and versions to provider-specific identifiers.
	MachineImages []MachineImages
	// Constraints is an object containing constraints for certain values in the control plane config.
	Constraints Constraints
	// CSIResizerDisabled is a flag to disable the CSI resizer (e.g. resizer is not supported for vSphere 6.7)
	CSIResizerDisabled *bool
	// MachineTypeOptions is the list of machine type options to set additional options for individual machine types.
	MachineTypeOptions []MachineTypeOptions
	// DockerDaemonOptions contains configuration options for docker daemon service
	DockerDaemonOptions *DockerDaemonOptions
}

CloudProfileConfig contains provider-specific configuration that is embedded into Gardener's `CloudProfile` resource.

func (*CloudProfileConfig) DeepCopy

func (in *CloudProfileConfig) DeepCopy() *CloudProfileConfig

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CloudProfileConfig.

func (*CloudProfileConfig) DeepCopyInto

func (in *CloudProfileConfig) DeepCopyInto(out *CloudProfileConfig)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*CloudProfileConfig) DeepCopyObject

func (in *CloudProfileConfig) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type Constraints

type Constraints struct {
	// LoadBalancerConfig contains constraints regarding allowed values of the 'Lo' block in the control plane config.
	LoadBalancerConfig LoadBalancerConfig
}

Constraints is an object containing constraints for the shoots.

func (*Constraints) DeepCopy

func (in *Constraints) DeepCopy() *Constraints

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Constraints.

func (*Constraints) DeepCopyInto

func (in *Constraints) DeepCopyInto(out *Constraints)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ControlPlaneConfig

type ControlPlaneConfig struct {
	metav1.TypeMeta

	// CloudControllerManager contains configuration settings for the cloud-controller-manager.
	CloudControllerManager *CloudControllerManagerConfig
	// LoadBalancerClasses lists the load balancer classes to be used.
	LoadBalancerClasses []CPLoadBalancerClass
	// LoadBalancerSize can override the default of the NSX-T load balancer size ("SMALL", "MEDIUM", or "LARGE") defined in the cloud profile.
	LoadBalancerSize *string
}

ControlPlaneConfig contains configuration settings for the control plane.

func (*ControlPlaneConfig) DeepCopy

func (in *ControlPlaneConfig) DeepCopy() *ControlPlaneConfig

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ControlPlaneConfig.

func (*ControlPlaneConfig) DeepCopyInto

func (in *ControlPlaneConfig) DeepCopyInto(out *ControlPlaneConfig)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*ControlPlaneConfig) DeepCopyObject

func (in *ControlPlaneConfig) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type DHCPOption added in v0.3.0

type DHCPOption struct {
	// Code is the tag according to the BOOTP Vendor Extensions and DHCP Options (see https://www.iana.org/assignments/bootp-dhcp-parameters/bootp-dhcp-parameters.xhtml)
	// most important codes: 'Domain Name'=15 (only allowed for NSX-T 2.5, use code 119 for NSX-T >= 3.0), 'NTP server'=42, 'Domain Search': 119
	Code int
	// Values are the values for the given code
	Values []string
}

DHCPOption contains a DHCP option by code

func (*DHCPOption) DeepCopy added in v0.3.0

func (in *DHCPOption) DeepCopy() *DHCPOption

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DHCPOption.

func (*DHCPOption) DeepCopyInto added in v0.3.0

func (in *DHCPOption) DeepCopyInto(out *DHCPOption)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type DockerDaemonOptions added in v0.3.0

type DockerDaemonOptions struct {
	// HTTPProxyConf contains HTTP/HTTPS proxy configuration for Docker daemon
	HTTPProxyConf *string
	// InsecureRegistries adds the given registries to Docker on the worker nodes
	// (see https://docs.docker.com/registry/insecure/)
	InsecureRegistries []string
}

DockerDaemonOptions contains configuration options for Docker daemon service

func (*DockerDaemonOptions) DeepCopy added in v0.3.0

func (in *DockerDaemonOptions) DeepCopy() *DockerDaemonOptions

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DockerDaemonOptions.

func (*DockerDaemonOptions) DeepCopyInto added in v0.3.0

func (in *DockerDaemonOptions) DeepCopyInto(out *DockerDaemonOptions)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type FailureDomainLabels

type FailureDomainLabels struct {
	// Region is the tag category used for region on vSphere data centers and/or clusters.
	Region string
	// Zone is the tag category used for zones on vSphere data centers and/or clusters.
	Zone string
}

FailureDomainLabels are the tag categories used for regions and zones in vSphere CSI driver and cloud controller. See Cloud Native Storage: Set Up Zones in the vSphere CNS Environment (https://docs.vmware.com/en/VMware-vSphere/6.7/Cloud-Native-Storage/GUID-9BD8CD12-CB24-4DF4-B4F0-A862D0C82C3B.html)

func (*FailureDomainLabels) DeepCopy

func (in *FailureDomainLabels) DeepCopy() *FailureDomainLabels

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FailureDomainLabels.

func (*FailureDomainLabels) DeepCopyInto

func (in *FailureDomainLabels) DeepCopyInto(out *FailureDomainLabels)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type InfrastructureConfig

type InfrastructureConfig struct {
	metav1.TypeMeta
	// Networks contains optional existing network infrastructure to use.
	// If not defined, NSX-T Tier-1 gateway and load balancer are created for the shoot cluster.
	Networks *Networks
	// OverwriteNSXTInfraVersion allows to fix the ensurer version used to create the NSXT-T infrastructure.
	// This is an advanced configuration to overwrite the automatic version selection.
	OverwriteNSXTInfraVersion *string
}

InfrastructureConfig infrastructure configuration resource

func (*InfrastructureConfig) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InfrastructureConfig.

func (*InfrastructureConfig) DeepCopyInto

func (in *InfrastructureConfig) DeepCopyInto(out *InfrastructureConfig)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*InfrastructureConfig) DeepCopyObject

func (in *InfrastructureConfig) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type InfrastructureStatus

type InfrastructureStatus struct {
	metav1.TypeMeta

	VsphereConfig VsphereConfig

	CreationStarted *bool
	NSXTInfraState  *NSXTInfraState
}

InfrastructureStatus contains information about created infrastructure resources.

func (*InfrastructureStatus) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InfrastructureStatus.

func (*InfrastructureStatus) DeepCopyInto

func (in *InfrastructureStatus) DeepCopyInto(out *InfrastructureStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*InfrastructureStatus) DeepCopyObject

func (in *InfrastructureStatus) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type LoadBalancerClass

type LoadBalancerClass struct {
	// Name is the name of the LB class
	Name string
	// IPPoolName is the name of the NSX-T IP pool (must be set for the default load balancer class).
	IPPoolName *string
	// TCPAppProfileName is the profile name of the load balaner profile for TCP
	TCPAppProfileName *string
	// UDPAppProfileName is the profile name of the load balaner profile for UDP
	UDPAppProfileName *string
}

LoadBalancerClass defines a restricted network setting for generic LoadBalancer classes.

func (*LoadBalancerClass) DeepCopy

func (in *LoadBalancerClass) DeepCopy() *LoadBalancerClass

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LoadBalancerClass.

func (*LoadBalancerClass) DeepCopyInto

func (in *LoadBalancerClass) DeepCopyInto(out *LoadBalancerClass)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type LoadBalancerConfig

type LoadBalancerConfig struct {
	// Size is the NSX-T load balancer size ("SMALL", "MEDIUM", or "LARGE")
	Size string
	// Classes are the defined load balancer classes
	Classes []LoadBalancerClass
}

LoadBalancerConfig contains the constraints for usable load balancer classes

func (*LoadBalancerConfig) DeepCopy

func (in *LoadBalancerConfig) DeepCopy() *LoadBalancerConfig

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LoadBalancerConfig.

func (*LoadBalancerConfig) DeepCopyInto

func (in *LoadBalancerConfig) DeepCopyInto(out *LoadBalancerConfig)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type MachineImage

type MachineImage struct {
	// Name is the logical name of the machine image.
	Name string
	// Version is the logical version of the machine image.
	Version string
	// Path is the path of the VM template.
	Path string
	// GuestID is the optional guestId to overwrite the guestId of the VM template.
	GuestID string
}

MachineImage is a mapping from logical names and versions to provider-specific machine image data.

func (*MachineImage) DeepCopy

func (in *MachineImage) DeepCopy() *MachineImage

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MachineImage.

func (*MachineImage) DeepCopyInto

func (in *MachineImage) DeepCopyInto(out *MachineImage)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type MachineImageVersion

type MachineImageVersion struct {
	// Version is the version of the image.
	Version string
	// Path is the path of the VM template.
	Path string
	// GuestID is the optional guestId to overwrite the guestId of the VM template.
	GuestID *string
}

MachineImageVersion contains a version and a provider-specific identifier.

func (*MachineImageVersion) DeepCopy

func (in *MachineImageVersion) DeepCopy() *MachineImageVersion

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MachineImageVersion.

func (*MachineImageVersion) DeepCopyInto

func (in *MachineImageVersion) DeepCopyInto(out *MachineImageVersion)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type MachineImages

type MachineImages struct {
	// Name is the logical name of the machine image.
	Name string
	// Versions contains versions and a provider-specific identifier.
	Versions []MachineImageVersion
}

MachineImages is a mapping from logical names and versions to provider-specific identifiers.

func (*MachineImages) DeepCopy

func (in *MachineImages) DeepCopy() *MachineImages

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MachineImages.

func (*MachineImages) DeepCopyInto

func (in *MachineImages) DeepCopyInto(out *MachineImages)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type MachineTypeOptions

type MachineTypeOptions struct {
	// Name is the name of the machine type
	Name string
	// MemoryReservationLockedToMax is flag to reserve all guest OS memory (no swapping in ESXi host)
	MemoryReservationLockedToMax *bool
	// ExtraConfig allows to specify additional VM options.
	// e.g. sched.swap.vmxSwapEnabled=false to disable the VMX process swap file
	ExtraConfig map[string]string
}

MachineTypeOptions defines additional VM options for an machine type given by name

func (*MachineTypeOptions) DeepCopy

func (in *MachineTypeOptions) DeepCopy() *MachineTypeOptions

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MachineTypeOptions.

func (*MachineTypeOptions) DeepCopyInto

func (in *MachineTypeOptions) DeepCopyInto(out *MachineTypeOptions)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NSXTInfraState

type NSXTInfraState struct {
	Version               *string
	EdgeClusterRef        *Reference
	TransportZoneRef      *Reference
	Tier0GatewayRef       *Reference
	SNATIPPoolRef         *Reference
	Tier1GatewayRef       *Reference
	ExternalTier1Gateway  *bool
	LocaleServiceRef      *Reference
	SegmentRef            *Reference
	SNATIPAddressAllocRef *Reference
	SNATRuleRef           *Reference
	SNATIPAddress         *string
	SegmentName           *string
	DHCPServerConfigRef   *Reference
	AdvancedDHCP          AdvancedDHCPState
}

NSXTInfraState holds the state of the infrastructure created with NSX-T

func (*NSXTInfraState) DeepCopy

func (in *NSXTInfraState) DeepCopy() *NSXTInfraState

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NSXTInfraState.

func (*NSXTInfraState) DeepCopyInto

func (in *NSXTInfraState) DeepCopyInto(out *NSXTInfraState)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type Networks

type Networks struct {
	// Tier1GatewayPath is the path of the existing NSX-T Tier-1 Gateway to use.
	Tier1GatewayPath string
	// LoadBalancerServicePath is the path of the existing NSX-T load balancer service assigned to the Tier-1 Gateway
	LoadBalancerServicePath string
}

Networks contains existing NSX-T network infrastructure to use.

func (*Networks) DeepCopy

func (in *Networks) DeepCopy() *Networks

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Networks.

func (*Networks) DeepCopyInto

func (in *Networks) DeepCopyInto(out *Networks)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type Reference

type Reference struct {
	ID   string
	Path string
}

Reference holds a NSXT object reference managed with the NSX-T simplified / intent-based API

func (*Reference) DeepCopy

func (in *Reference) DeepCopy() *Reference

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Reference.

func (*Reference) DeepCopyInto

func (in *Reference) DeepCopyInto(out *Reference)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionSpec

type RegionSpec struct {
	// Name is the name of the region
	Name string
	// VsphereHost is the vSphere host
	VsphereHost string
	// VsphereInsecureSSL is a flag if insecure HTTPS is allowed for VsphereHost
	VsphereInsecureSSL bool
	// NSXTHost is the NSX-T host
	NSXTHost string
	// NSXTInsecureSSL is a flag if insecure HTTPS is allowed for NSXTHost
	NSXTInsecureSSL bool
	// NSXTRemoteAuth is a flag if NSX-T uses remote authentication (authentication done through the vIDM).
	NSXTRemoteAuth bool
	// TransportZone is the NSX-T transport zone
	TransportZone string
	// LogicalTier0Router is the NSX-T logical tier 0 router
	LogicalTier0Router string
	// EdgeCluster is the NSX-T edge cluster
	EdgeCluster string
	// SNATIPPool is the NSX-T IP pool to allocate the SNAT ip address
	SNATIPPool string

	// Datacenter is the name of the vSphere data center (data center can either be defined at region or zone level)
	Datacenter *string

	// Datastore is the vSphere datastore to store the cloned machine VM. Either Datastore or DatastoreCluster must be specified at region or zones level.
	Datastore *string
	// DatastoreCluster is the vSphere  datastore cluster to store the cloned machine VM. Either Datastore or DatastoreCluster must be specified at region or zones level.
	DatastoreCluster *string

	// Zones is the list of zone specifications of the region.
	Zones []ZoneSpec

	// CaFile is the optional CA file to be trusted when connecting to vCenter. If not set, the node's CA certificates will be used. Only relevant if InsecureFlag=0
	CaFile *string
	// Thumbprint is the optional vCenter certificate thumbprint, this ensures the correct certificate is used
	Thumbprint *string

	// DNSServers is a optional list of IPs of DNS servers used while creating subnets. If provided, it overwrites the global
	// DNSServers of the CloudProfileConfig
	DNSServers []string
	// DHCPOptions contains optional options for DHCP like Domain name, NTP server,...
	// If provided, it overwrites the global DHCPOptions of the CloudProfileConfig
	DHCPOptions []DHCPOption
	// MachineImages is the list of machine images that are understood by the controller. If provided, it overwrites the global
	// MachineImages of the CloudProfileConfig
	MachineImages []MachineImages
}

RegionSpec specifies the topology of a region and its zones. A region consists of a Vcenter host, transport zone and optionally a data center. A zone in a region consists of a data center (if not specified in the region), a computer cluster, and optionally a resource zone or host system.

func (*RegionSpec) DeepCopy

func (in *RegionSpec) DeepCopy() *RegionSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionSpec.

func (*RegionSpec) DeepCopyInto

func (in *RegionSpec) DeepCopyInto(out *RegionSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type VsphereConfig

type VsphereConfig struct {
	// Folder is the folder name to store the cloned machine VM
	Folder string
	// Region is the vSphere region
	Region string
	// ZoneConfig holds information about zone
	ZoneConfigs map[string]ZoneConfig
}

VsphereConfig holds information about vSphere resources to use.

func (*VsphereConfig) DeepCopy

func (in *VsphereConfig) DeepCopy() *VsphereConfig

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VsphereConfig.

func (*VsphereConfig) DeepCopyInto

func (in *VsphereConfig) DeepCopyInto(out *VsphereConfig)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WorkerStatus

type WorkerStatus struct {
	metav1.TypeMeta

	// MachineImages is a list of machine images that have been used in this worker. Usually, the extension controller
	// gets the mapping from name/version to the provider-specific machine image data in its componentconfig. However, if
	// a version that is still in use gets removed from this componentconfig it cannot reconcile anymore existing `Worker`
	// resources that are still using this version. Hence, it stores the used versions in the provider status to ensure
	// reconciliation is possible.
	MachineImages []MachineImage
}

WorkerStatus contains information about created worker resources.

func (*WorkerStatus) DeepCopy

func (in *WorkerStatus) DeepCopy() *WorkerStatus

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WorkerStatus.

func (*WorkerStatus) DeepCopyInto

func (in *WorkerStatus) DeepCopyInto(out *WorkerStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*WorkerStatus) DeepCopyObject

func (in *WorkerStatus) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type ZoneConfig

type ZoneConfig struct {
	// Datacenter is the name of the data center
	Datacenter string
	// ComputeCluster is the name of the compute cluster. Either ComputeCluster or ResourcePool or HostSystem must be specified
	ComputeCluster string
	// ResourcePool is the name of the resource pool. Either ComputeCluster or ResourcePool or HostSystem must be specified
	ResourcePool string
	// HostSystem is the name of the host system. Either ComputeCluster or ResourcePool or HostSystem must be specified
	HostSystem string
	// Datastore is the datastore to store the cloned machine VM. Either Datastore or DatastoreCluster must be specified
	Datastore string
	// DatastoreCluster is the datastore cluster to store the cloned machine VM. Either Datastore or DatastoreCluster must be specified
	DatastoreCluster string
	// SwitchUUID is the UUID of the virtual distributed switch the network is assigned to (only needed if there are multiple vds)
	SwitchUUID string
}

ZoneConfig holds zone specific information about vSphere resources to use.

func (*ZoneConfig) DeepCopy

func (in *ZoneConfig) DeepCopy() *ZoneConfig

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ZoneConfig.

func (*ZoneConfig) DeepCopyInto

func (in *ZoneConfig) DeepCopyInto(out *ZoneConfig)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ZoneSpec

type ZoneSpec struct {
	// Name is the name of the zone
	Name string
	// Datacenter is the name of the vSphere data center (data center can either be defined at region or zone level)
	Datacenter *string

	// ComputeCluster is the name of the vSphere compute cluster. Either ComputeCluster or ResourcePool or HostSystem must be specified
	ComputeCluster *string
	// ResourcePool is the name of the vSphere resource pool. Either ComputeCluster or ResourcePool or HostSystem must be specified
	ResourcePool *string
	// HostSystem is the name of the vSphere host system. Either ComputeCluster or ResourcePool or HostSystem must be specified
	HostSystem *string

	// Datastore is the vSphere datastore to store the cloned machine VM. Either Datastore or DatastoreCluster must be specified at region or zones level.
	Datastore *string
	// DatastoreCluster is the vSphere  datastore cluster to store the cloned machine VM. Either Datastore or DatastoreCluster must be specified at region or zones level.
	DatastoreCluster *string

	// SwitchUUID is the UUID of the virtual distributed switch the network is assigned to (only needed if there are multiple vds)
	SwitchUUID *string
}

ZoneSpec specifies a zone of a region. A zone in a region consists of a data center (if not specified in the region), a computer cluster, and optionally a resource zone or host system.

func (*ZoneSpec) DeepCopy

func (in *ZoneSpec) DeepCopy() *ZoneSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ZoneSpec.

func (*ZoneSpec) DeepCopyInto

func (in *ZoneSpec) DeepCopyInto(out *ZoneSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

Directories

Path Synopsis
Package v1alpha1 contains the vSphere provider API resources.
Package v1alpha1 contains the vSphere provider API resources.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL