agent

package
v1.0.19 Latest Latest
Warning

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

Go to latest
Published: Feb 17, 2021 License: Apache-2.0 Imports: 1 Imported by: 0

Documentation

Overview

Package agent contains API Schema definitions for assisted agent based installations. +k8s:deepcopy-gen=package,register +k8s:conversion-gen=github.com/openshift/hive/pkg/apis/hive

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type BareMetalPlatform

type BareMetalPlatform struct {
	// APIVIP is the virtual IP used to reach the OpenShift cluster's API.
	APIVIP string `json:"apiVIP"`

	// APIVIPDNSName is the domain name used to reach the OpenShift cluster API.
	// +optional
	APIVIPDNSName string `json:"apiVIPDNSName,omitempty"`

	// IngressVIP is the virtual IP used for cluster ingress traffic.
	IngressVIP string `json:"ingressVIP"`

	// VIPDHCPAllocation indicates if virtual IP DHCP allocation mode is enabled.
	// +optional
	VIPDHCPAllocation VIPDHCPAllocationType `json:"vipDHCPAllocation"`
}

BareMetalPlatform defines agent based install configuration specific to bare metal clusters. Can only be used with spec.installStrategy.agent.

func (*BareMetalPlatform) DeepCopy

func (in *BareMetalPlatform) DeepCopy() *BareMetalPlatform

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

func (*BareMetalPlatform) DeepCopyInto

func (in *BareMetalPlatform) DeepCopyInto(out *BareMetalPlatform)

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

type ClusterNetworkEntry

type ClusterNetworkEntry struct {
	// CIDR is the IP block address pool.
	CIDR string `json:"cidr"`

	// HostPrefix is the prefix size to allocate to each node from the CIDR.
	// For example, 24 would allocate 2^8=256 adresses to each node. If this
	// field is not used by the plugin, it can be left unset.
	// +optional
	HostPrefix int32 `json:"hostPrefix,omitempty"`
}

ClusterNetworkEntry is a single IP address block for pod IP blocks. IP blocks are allocated with size 2^HostSubnetLength.

func (*ClusterNetworkEntry) DeepCopy

func (in *ClusterNetworkEntry) DeepCopy() *ClusterNetworkEntry

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

func (*ClusterNetworkEntry) DeepCopyInto

func (in *ClusterNetworkEntry) DeepCopyInto(out *ClusterNetworkEntry)

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

type InstallStrategy

type InstallStrategy struct {
	// Networking is the configuration for the pod network provider in
	// the cluster.
	Networking Networking `json:"networking"`

	// SSHPublicKey will be added to all cluster hosts for use in debugging.
	// +optional
	SSHPublicKey string `json:"sshPublicKey,omitempty"`

	// AgentSelector is a label selector used for associating relevant custom resources with this cluster.
	// (Agent, BareMetalHost, etc)
	AgentSelector metav1.LabelSelector `json:"agentSelector"`

	// ProvisionRequirements defines configuration for when the installation is ready to be launched automatically.
	ProvisionRequirements ProvisionRequirements `json:"provisionRequirements"`
}

InstallStrategy is the install strategy configuration for provisioning a cluster with the Agent based assisted installer.

func (*InstallStrategy) DeepCopy

func (in *InstallStrategy) DeepCopy() *InstallStrategy

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

func (*InstallStrategy) DeepCopyInto

func (in *InstallStrategy) DeepCopyInto(out *InstallStrategy)

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

type InstallStrategyStatus

type InstallStrategyStatus struct {

	// ControlPlaneAgentsDiscovered is the number of Agents currently linked to this ClusterDeployment.
	// +optional
	ControlPlaneAgentsDiscovered int `json:"controlPlaneAgentsDiscovered,omitempty"`
	// ControlPlaneAgentsDiscovered is the number of Agents currently linked to this ClusterDeployment that are ready for use.
	// +optional
	ControlPlaneAgentsReady int `json:"controlPlaneAgentsReady,omitempty"`
	// WorkerAgentsDiscovered is the number of worker Agents currently linked to this ClusterDeployment.
	// +optional
	WorkerAgentsDiscovered int `json:"workerAgentsDiscovered,omitempty"`
	// WorkerAgentsDiscovered is the number of worker Agents currently linked to this ClusterDeployment that are ready for use.
	// +optional
	WorkerAgentsReady int `json:"workerAgentsReady,omitempty"`

	ConnectivityMajorityGroups string `json:"connectivityMajorityGroups,omitempty"`
}

InstallStrategyStatus defines the observed state of the Agent install strategy for this cluster.

func (*InstallStrategyStatus) DeepCopy

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

func (*InstallStrategyStatus) DeepCopyInto

func (in *InstallStrategyStatus) DeepCopyInto(out *InstallStrategyStatus)

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

type MachineNetworkEntry

type MachineNetworkEntry struct {
	// CIDR is the IP block address pool for machines within the cluster.
	CIDR string `json:"cidr"`
}

MachineNetworkEntry is a single IP address block for node IP blocks.

func (*MachineNetworkEntry) DeepCopy

func (in *MachineNetworkEntry) DeepCopy() *MachineNetworkEntry

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

func (*MachineNetworkEntry) DeepCopyInto

func (in *MachineNetworkEntry) DeepCopyInto(out *MachineNetworkEntry)

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

type Networking

type Networking struct {
	// MachineNetwork is the list of IP address pools for machines.
	// +optional
	MachineNetwork []MachineNetworkEntry `json:"machineNetwork,omitempty"`

	// ClusterNetwork is the list of IP address pools for pods.
	// Default is 10.128.0.0/14 and a host prefix of /23.
	//
	// +optional
	ClusterNetwork []ClusterNetworkEntry `json:"clusterNetwork,omitempty"`

	// ServiceNetwork is the list of IP address pools for services.
	// Default is 172.30.0.0/16.
	// NOTE: currently only one entry is supported.
	//
	// +kubebuilder:validation:MaxItems=1
	// +optional
	ServiceNetwork []string `json:"serviceNetwork,omitempty"`
}

Networking defines the pod network provider in the cluster.

func (*Networking) DeepCopy

func (in *Networking) DeepCopy() *Networking

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

func (*Networking) DeepCopyInto

func (in *Networking) DeepCopyInto(out *Networking)

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

type ProvisionRequirements

type ProvisionRequirements struct {

	// ControlPlaneAgents is the number of matching approved and ready Agents with the control plane role
	// required to launch the install. Must be either 1 or 3.
	ControlPlaneAgents int `json:"controlPlaneAgents"`

	// WorkerAgents is the minimum number of matching approved and ready Agents with the worker role
	// required to launch the install.
	// +kubebuilder:validation:Minimum=0
	// +optional
	WorkerAgents int `json:"workerAgents,omitempty"`
}

ProvisionRequirements defines configuration for when the installation is ready to be launched automatically.

func (*ProvisionRequirements) DeepCopy

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

func (*ProvisionRequirements) DeepCopyInto

func (in *ProvisionRequirements) DeepCopyInto(out *ProvisionRequirements)

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

type VIPDHCPAllocationType

type VIPDHCPAllocationType string

VIPDHCPAllocationType is a valid value for bareMetalPlatform.vipDHCPAllocation. +kubebuilder:validation:Enum="";"Enabled"

const (
	VIPDHCPAllocationDisabled VIPDHCPAllocationType = ""
	VIPDHCPAllocationEnabled  VIPDHCPAllocationType = "Enabled"
)

Jump to

Keyboard shortcuts

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