kubeone

package
v1.0.4 Latest Latest
Warning

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

Go to latest
Published: Oct 16, 2020 License: Apache-2.0 Imports: 7 Imported by: 0

Documentation

Overview

Package kubeone is the implementation of KubeOneCluster API

Index

Constants

View Source
const GroupName = "kubeone.io"

GroupName is the name of the group used by this API

Variables

View Source
var (
	// SchemeBuilder points to a list of functions added to Scheme
	SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes)
	// AddToScheme applies all the stored functions to the Scheme
	AddToScheme = SchemeBuilder.AddToScheme
)
View Source
var SchemeGroupVersion = schema.GroupVersion{Group: GroupName, Version: runtime.APIVersionInternal}

SchemeGroupVersion is group version used to register API objects

Functions

func Kind

func Kind(kind string) schema.GroupKind

Kind takes an unqualified kind and returns GroupKind

func Resource

func Resource(resource string) schema.GroupResource

Resource takes an unqualified resource and returns GroupResource

Types

type APIEndpoint

type APIEndpoint struct {
	// Host is the hostname on which API is running
	Host string `json:"host"`

	// Port is the port used to reach to the API
	Port int `json:"port"`
}

APIEndpoint is the endpoint used to communicate with the Kubernetes API

func (*APIEndpoint) DeepCopy

func (in *APIEndpoint) DeepCopy() *APIEndpoint

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

func (*APIEndpoint) DeepCopyInto

func (in *APIEndpoint) DeepCopyInto(out *APIEndpoint)

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

type AWSSpec added in v1.0.0

type AWSSpec struct{}

AWSSpec defines the AWS cloud provider

func (*AWSSpec) DeepCopy added in v1.0.0

func (in *AWSSpec) DeepCopy() *AWSSpec

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

func (*AWSSpec) DeepCopyInto added in v1.0.0

func (in *AWSSpec) DeepCopyInto(out *AWSSpec)

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

type Addons added in v1.0.0

type Addons struct {
	Enable bool `json:"enable"`
	// Path on the local file system to the directory with addons manifests.
	Path string `json:"path"`
}

Addons config

func (*Addons) DeepCopy added in v1.0.0

func (in *Addons) DeepCopy() *Addons

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

func (*Addons) DeepCopyInto added in v1.0.0

func (in *Addons) DeepCopyInto(out *Addons)

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

type AzureSpec added in v1.0.0

type AzureSpec struct{}

AzureSpec defines the Azure cloud provider

func (*AzureSpec) DeepCopy added in v1.0.0

func (in *AzureSpec) DeepCopy() *AzureSpec

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

func (*AzureSpec) DeepCopyInto added in v1.0.0

func (in *AzureSpec) DeepCopyInto(out *AzureSpec)

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

type CNI added in v0.7.0

type CNI struct {
	Canal    *CanalSpec       `json:"canal"`
	WeaveNet *WeaveNetSpec    `json:"weaveNet"`
	External *ExternalCNISpec `json:"external"`
}

CNI config. Only one CNI provider must be used at the single time.

func (*CNI) DeepCopy added in v0.7.0

func (in *CNI) DeepCopy() *CNI

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

func (*CNI) DeepCopyInto added in v0.7.0

func (in *CNI) DeepCopyInto(out *CNI)

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

type CanalSpec added in v1.0.0

type CanalSpec struct {
	MTU int `json:"mtu"`
}

CanalSpec defines the Canal CNI plugin

func (*CanalSpec) DeepCopy added in v1.0.0

func (in *CanalSpec) DeepCopy() *CanalSpec

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

func (*CanalSpec) DeepCopyInto added in v1.0.0

func (in *CanalSpec) DeepCopyInto(out *CanalSpec)

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

type CloudProviderSpec

type CloudProviderSpec struct {
	External     bool              `json:"external"`
	CloudConfig  string            `json:"cloudConfig"`
	AWS          *AWSSpec          `json:"aws"`
	Azure        *AzureSpec        `json:"azure"`
	DigitalOcean *DigitalOceanSpec `json:"digitalocean"`
	GCE          *GCESpec          `json:"gce"`
	Hetzner      *HetznerSpec      `json:"hetzner"`
	Openstack    *OpenstackSpec    `json:"openstack"`
	Packet       *PacketSpec       `json:"packet"`
	Vsphere      *VsphereSpec      `json:"vsphere"`
	None         *NoneSpec         `json:"none"`
}

CloudProviderSpec describes the cloud provider that is running the machines. Only one cloud provider must be defined at the single time.

func (CloudProviderSpec) CloudProivderName added in v1.0.0

func (p CloudProviderSpec) CloudProivderName() string

CloudProviderName returns name of the cloud provider

func (CloudProviderSpec) CloudProviderInTree

func (p CloudProviderSpec) CloudProviderInTree() bool

CloudProviderInTree detects is there in-tree cloud provider implementation for specified provider. List of in-tree provider can be found here: https://github.com/kubernetes/kubernetes/tree/master/pkg/cloudprovider

func (*CloudProviderSpec) DeepCopy

func (in *CloudProviderSpec) DeepCopy() *CloudProviderSpec

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

func (*CloudProviderSpec) DeepCopyInto

func (in *CloudProviderSpec) DeepCopyInto(out *CloudProviderSpec)

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

type ClusterNetworkConfig

type ClusterNetworkConfig struct {
	PodSubnet         string `json:"podSubnet"`
	ServiceSubnet     string `json:"serviceSubnet"`
	ServiceDomainName string `json:"serviceDomainName"`
	NodePortRange     string `json:"nodePortRange"`
	CNI               *CNI   `json:"cni,omitempty"`
}

ClusterNetworkConfig describes the cluster network

func (*ClusterNetworkConfig) DeepCopy

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

func (*ClusterNetworkConfig) DeepCopyInto

func (in *ClusterNetworkConfig) DeepCopyInto(out *ClusterNetworkConfig)

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

type ControlPlaneConfig added in v1.0.0

type ControlPlaneConfig struct {
	Hosts []HostConfig `json:"hosts"`
}

ControlPlaneConfig defines control plane nodes

func (*ControlPlaneConfig) DeepCopy added in v1.0.0

func (in *ControlPlaneConfig) DeepCopy() *ControlPlaneConfig

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

func (*ControlPlaneConfig) DeepCopyInto added in v1.0.0

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

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

type DNSConfig added in v0.9.0

type DNSConfig struct {
	Servers []string `json:"servers"`
}

DNSConfig contains a machine's DNS configuration

func (*DNSConfig) DeepCopy added in v0.9.0

func (in *DNSConfig) DeepCopy() *DNSConfig

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

func (*DNSConfig) DeepCopyInto added in v0.9.0

func (in *DNSConfig) DeepCopyInto(out *DNSConfig)

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

type DigitalOceanSpec added in v1.0.0

type DigitalOceanSpec struct{}

DigitalOceanSpec defines the DigitalOcean cloud provider

func (*DigitalOceanSpec) DeepCopy added in v1.0.0

func (in *DigitalOceanSpec) DeepCopy() *DigitalOceanSpec

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

func (*DigitalOceanSpec) DeepCopyInto added in v1.0.0

func (in *DigitalOceanSpec) DeepCopyInto(out *DigitalOceanSpec)

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

type DynamicAuditLog

type DynamicAuditLog struct {
	Enable bool `json:"enable"`
}

DynamicAuditLog feature flag

func (*DynamicAuditLog) DeepCopy

func (in *DynamicAuditLog) DeepCopy() *DynamicAuditLog

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

func (*DynamicAuditLog) DeepCopyInto

func (in *DynamicAuditLog) DeepCopyInto(out *DynamicAuditLog)

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

type DynamicWorkerConfig added in v1.0.0

type DynamicWorkerConfig struct {
	Name     string       `json:"name"`
	Replicas *int         `json:"replicas"`
	Config   ProviderSpec `json:"providerSpec"`
}

DynamicWorkerConfig describes a set of worker machines

func (*DynamicWorkerConfig) DeepCopy added in v1.0.0

func (in *DynamicWorkerConfig) DeepCopy() *DynamicWorkerConfig

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

func (*DynamicWorkerConfig) DeepCopyInto added in v1.0.0

func (in *DynamicWorkerConfig) DeepCopyInto(out *DynamicWorkerConfig)

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

type ExternalCNISpec added in v1.0.0

type ExternalCNISpec struct{}

ExternalCNISpec defines the external CNI plugin. It's up to the user's responsibility to deploy the external CNI plugin manually or as an addon

func (*ExternalCNISpec) DeepCopy added in v1.0.0

func (in *ExternalCNISpec) DeepCopy() *ExternalCNISpec

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

func (*ExternalCNISpec) DeepCopyInto added in v1.0.0

func (in *ExternalCNISpec) DeepCopyInto(out *ExternalCNISpec)

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

type Features

type Features struct {
	PodNodeSelector   *PodNodeSelector   `json:"podNodeSelector"`
	PodPresets        *PodPresets        `json:"podPresets"`
	PodSecurityPolicy *PodSecurityPolicy `json:"podSecurityPolicy"`
	StaticAuditLog    *StaticAuditLog    `json:"staticAuditLog"`
	DynamicAuditLog   *DynamicAuditLog   `json:"dynamicAuditLog"`
	MetricsServer     *MetricsServer     `json:"metricsServer"`
	OpenIDConnect     *OpenIDConnect     `json:"openidConnect"`
}

Features controls what features will be enabled on the cluster

func (*Features) DeepCopy

func (in *Features) DeepCopy() *Features

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

func (*Features) DeepCopyInto

func (in *Features) DeepCopyInto(out *Features)

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

type GCESpec added in v1.0.0

type GCESpec struct{}

GCESpec defines the GCE cloud provider

func (*GCESpec) DeepCopy added in v1.0.0

func (in *GCESpec) DeepCopy() *GCESpec

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

func (*GCESpec) DeepCopyInto added in v1.0.0

func (in *GCESpec) DeepCopyInto(out *GCESpec)

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

type HetznerSpec added in v1.0.0

type HetznerSpec struct {
	NetworkID string `json:"networkID"`
}

HetznerSpec defines the Hetzner cloud provider

func (*HetznerSpec) DeepCopy added in v1.0.0

func (in *HetznerSpec) DeepCopy() *HetznerSpec

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

func (*HetznerSpec) DeepCopyInto added in v1.0.0

func (in *HetznerSpec) DeepCopyInto(out *HetznerSpec)

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

type HostConfig

type HostConfig struct {
	ID                int    `json:"-"`
	PublicAddress     string `json:"publicAddress"`
	PrivateAddress    string `json:"privateAddress"`
	SSHPort           int    `json:"sshPort"`
	SSHUsername       string `json:"sshUsername"`
	SSHPrivateKeyFile string `json:"sshPrivateKeyFile"`
	SSHAgentSocket    string `json:"sshAgentSocket"`
	Bastion           string `json:"bastion"`
	BastionPort       int    `json:"bastionPort"`
	BastionUser       string `json:"bastionUser"`
	Hostname          string `json:"hostname"`
	IsLeader          bool   `json:"isLeader"`

	// If not provided (i.e. nil) defaults to TaintEffectNoSchedule, with key
	// node-role.kubernetes.io/master for control plane nodes.
	//
	// Explicitly empty (i.e. []corev1.Taint{}) means no taints will be applied
	// (this is default for worker nodes).
	Taints []corev1.Taint `json:"taints,omitempty"`

	// Information populated at the runtime
	OperatingSystem OperatingSystemName `json:"-"`
}

HostConfig describes a single control plane node.

func (*HostConfig) DeepCopy

func (in *HostConfig) DeepCopy() *HostConfig

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

func (*HostConfig) DeepCopyInto

func (in *HostConfig) DeepCopyInto(out *HostConfig)

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

func (*HostConfig) SetHostname

func (h *HostConfig) SetHostname(hostname string)

SetHostname sets the hostname for the given host

func (*HostConfig) SetLeader

func (h *HostConfig) SetLeader(leader bool)

SetLeader sets is the given host leader

func (*HostConfig) SetOperatingSystem

func (h *HostConfig) SetOperatingSystem(os OperatingSystemName)

SetOperatingSystem sets the operating system for the given host

type KubeOneCluster

type KubeOneCluster struct {
	metav1.TypeMeta `json:",inline"`

	// Name is the name of the cluster
	Name string `json:"name"`
	// ControlPlane describes the control plane nodes and how to access them
	ControlPlane ControlPlaneConfig `json:"controlPlane,omitempty"`
	// APIEndpoint are pairs of address and port used to communicate with the Kubernetes API
	APIEndpoint APIEndpoint `json:"apiEndpoint,omitempty"`
	// CloudProvider configures the cloud provider specific features
	CloudProvider CloudProviderSpec `json:"cloudProvider,omitempty"`
	// Versions defines which Kubernetes version will be installed
	Versions VersionConfig `json:"versions,omitempty"`
	// ClusterNetwork configures the in-cluster networking
	ClusterNetwork ClusterNetworkConfig `json:"clusterNetwork,omitempty"`
	// Proxy configures proxy used while installing Kubernetes and by the Docker daemon
	Proxy ProxyConfig `json:"proxy,omitempty"`
	// StaticWorkers describes the worker nodes that are managed by KubeOne/kubeadm
	StaticWorkers StaticWorkersConfig `json:"staticWorkers,omitempty"`
	// DynamicWorkers describes the worker nodes that are managed by
	// Kubermatic machine-controller/Cluster-API
	DynamicWorkers []DynamicWorkerConfig `json:"dynamicWorkers,omitempty"`
	// MachineController configures the Kubermatic machine-controller component
	MachineController *MachineControllerConfig `json:"machineController,omitempty"`
	// Features enables and configures additional cluster features
	Features Features `json:"features,omitempty"`
	// Addons are used to deploy additional manifests
	Addons *Addons `json:"addons,omitempty"`
	// SystemPackages configure kubeone behaviour regarding OS packages
	SystemPackages *SystemPackages `json:"systemPackages,omitempty"`
}

KubeOneCluster is KubeOne Cluster API Schema

func (*KubeOneCluster) DeepCopy

func (in *KubeOneCluster) DeepCopy() *KubeOneCluster

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

func (*KubeOneCluster) DeepCopyInto

func (in *KubeOneCluster) DeepCopyInto(out *KubeOneCluster)

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

func (*KubeOneCluster) DeepCopyObject

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

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

func (KubeOneCluster) Followers

func (c KubeOneCluster) Followers() []HostConfig

Followers returns all but the first configured host. Only call this after validating the cluster config to ensure hosts exist.

func (KubeOneCluster) Leader

func (c KubeOneCluster) Leader() (HostConfig, error)

Leader returns the first configured host. Only call this after validating the cluster config to ensure a leader exists.

func (KubeOneCluster) RandomHost added in v1.0.0

func (c KubeOneCluster) RandomHost() HostConfig

type MachineControllerConfig

type MachineControllerConfig struct {
	Deploy bool `json:"deploy"`
}

MachineControllerConfig configures kubermatic machine-controller deployment

func (*MachineControllerConfig) DeepCopy

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

func (*MachineControllerConfig) DeepCopyInto

func (in *MachineControllerConfig) DeepCopyInto(out *MachineControllerConfig)

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

type MetricsServer

type MetricsServer struct {
	Enable bool `json:"enable"`
}

MetricsServer feature flag

func (*MetricsServer) DeepCopy

func (in *MetricsServer) DeepCopy() *MetricsServer

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

func (*MetricsServer) DeepCopyInto

func (in *MetricsServer) DeepCopyInto(out *MetricsServer)

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

type NoneSpec added in v1.0.0

type NoneSpec struct{}

NoneSpec defines a none provider

func (*NoneSpec) DeepCopy added in v1.0.0

func (in *NoneSpec) DeepCopy() *NoneSpec

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

func (*NoneSpec) DeepCopyInto added in v1.0.0

func (in *NoneSpec) DeepCopyInto(out *NoneSpec)

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

type OpenIDConnect

type OpenIDConnect struct {
	Enable bool                `json:"enable"`
	Config OpenIDConnectConfig `json:"config"`
}

OpenIDConnect feature flag

func (*OpenIDConnect) DeepCopy

func (in *OpenIDConnect) DeepCopy() *OpenIDConnect

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

func (*OpenIDConnect) DeepCopyInto

func (in *OpenIDConnect) DeepCopyInto(out *OpenIDConnect)

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

type OpenIDConnectConfig

type OpenIDConnectConfig struct {
	IssuerURL      string `json:"issuerUrl"`
	ClientID       string `json:"clientId"`
	UsernameClaim  string `json:"usernameClaim"`
	UsernamePrefix string `json:"usernamePrefix"`
	GroupsClaim    string `json:"groupsClaim"`
	GroupsPrefix   string `json:"groupsPrefix"`
	RequiredClaim  string `json:"requiredClaim"`
	SigningAlgs    string `json:"signingAlgs"`
	CAFile         string `json:"caFile"`
}

OpenIDConnectConfig config

func (*OpenIDConnectConfig) DeepCopy

func (in *OpenIDConnectConfig) DeepCopy() *OpenIDConnectConfig

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

func (*OpenIDConnectConfig) DeepCopyInto

func (in *OpenIDConnectConfig) DeepCopyInto(out *OpenIDConnectConfig)

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

type OpenstackSpec added in v1.0.0

type OpenstackSpec struct{}

OpenstackSpec defines the Openstack provider

func (*OpenstackSpec) DeepCopy added in v1.0.0

func (in *OpenstackSpec) DeepCopy() *OpenstackSpec

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

func (*OpenstackSpec) DeepCopyInto added in v1.0.0

func (in *OpenstackSpec) DeepCopyInto(out *OpenstackSpec)

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

type OperatingSystemName added in v1.0.0

type OperatingSystemName string

OperatingSystemName defines the operating system used on instances

var (
	OperatingSystemNameUbuntu  OperatingSystemName = "ubuntu"
	OperatingSystemNameCentOS  OperatingSystemName = "centos"
	OperatingSystemNameRHEL    OperatingSystemName = "rhel"
	OperatingSystemNameCoreOS  OperatingSystemName = "coreos"
	OperatingSystemNameFlatcar OperatingSystemName = "flatcar"
	OperatingSystemNameUnknown OperatingSystemName = ""
)

type PacketSpec added in v1.0.0

type PacketSpec struct{}

PacketSpec defines the Packet cloud provider

func (*PacketSpec) DeepCopy added in v1.0.0

func (in *PacketSpec) DeepCopy() *PacketSpec

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

func (*PacketSpec) DeepCopyInto added in v1.0.0

func (in *PacketSpec) DeepCopyInto(out *PacketSpec)

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

type PodNodeSelector added in v1.0.0

type PodNodeSelector struct {
	Enable bool                  `json:"enable"`
	Config PodNodeSelectorConfig `json:"config"`
}

PodNodeSelector feature flag

func (*PodNodeSelector) DeepCopy added in v1.0.0

func (in *PodNodeSelector) DeepCopy() *PodNodeSelector

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

func (*PodNodeSelector) DeepCopyInto added in v1.0.0

func (in *PodNodeSelector) DeepCopyInto(out *PodNodeSelector)

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

type PodNodeSelectorConfig added in v1.0.0

type PodNodeSelectorConfig struct {
	// ConfigFilePath is a path on the local file system to the PodNodeSelector
	// configuration file.
	// ConfigFilePath is a required field.
	// More info: https://kubernetes.io/docs/reference/access-authn-authz/admission-controllers/#podnodeselector
	ConfigFilePath string `json:"configFilePath"`
}

PodNodeSelectorConfig config

func (*PodNodeSelectorConfig) DeepCopy added in v1.0.0

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

func (*PodNodeSelectorConfig) DeepCopyInto added in v1.0.0

func (in *PodNodeSelectorConfig) DeepCopyInto(out *PodNodeSelectorConfig)

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

type PodPresets added in v1.0.0

type PodPresets struct {
	Enable bool `json:"enable"`
}

PodPresets feature flag

func (*PodPresets) DeepCopy added in v1.0.0

func (in *PodPresets) DeepCopy() *PodPresets

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

func (*PodPresets) DeepCopyInto added in v1.0.0

func (in *PodPresets) DeepCopyInto(out *PodPresets)

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

type PodSecurityPolicy

type PodSecurityPolicy struct {
	Enable bool `json:"enable"`
}

PodSecurityPolicy feature flag

func (*PodSecurityPolicy) DeepCopy

func (in *PodSecurityPolicy) DeepCopy() *PodSecurityPolicy

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

func (*PodSecurityPolicy) DeepCopyInto

func (in *PodSecurityPolicy) DeepCopyInto(out *PodSecurityPolicy)

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

type ProviderSpec

type ProviderSpec struct {
	CloudProviderSpec   json.RawMessage   `json:"cloudProviderSpec"`
	Labels              map[string]string `json:"labels,omitempty"`
	Taints              []corev1.Taint    `json:"taints,omitempty"`
	SSHPublicKeys       []string          `json:"sshPublicKeys,omitempty"`
	OperatingSystem     string            `json:"operatingSystem"`
	OperatingSystemSpec json.RawMessage   `json:"operatingSystemSpec"`

	// +optional
	Network *ProviderStaticNetworkConfig `json:"network,omitempty"`

	// +optional
	OverwriteCloudConfig *string `json:"overwriteCloudConfig,omitempty"`
}

ProviderSpec describes a worker node

func (*ProviderSpec) DeepCopy

func (in *ProviderSpec) DeepCopy() *ProviderSpec

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

func (*ProviderSpec) DeepCopyInto

func (in *ProviderSpec) DeepCopyInto(out *ProviderSpec)

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

type ProviderStaticNetworkConfig added in v1.0.0

type ProviderStaticNetworkConfig struct {
	CIDR    string    `json:"cidr"`
	Gateway string    `json:"gateway"`
	DNS     DNSConfig `json:"dns"`
}

ProviderStaticNetworkConfig contains a machine's static network configuration

func (*ProviderStaticNetworkConfig) DeepCopy added in v1.0.0

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

func (*ProviderStaticNetworkConfig) DeepCopyInto added in v1.0.0

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

type ProxyConfig

type ProxyConfig struct {
	HTTP    string `json:"http"`
	HTTPS   string `json:"https"`
	NoProxy string `json:"noProxy"`
}

ProxyConfig configures proxy for the Docker daemon and is used by KubeOne scripts

func (*ProxyConfig) DeepCopy

func (in *ProxyConfig) DeepCopy() *ProxyConfig

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

func (*ProxyConfig) DeepCopyInto

func (in *ProxyConfig) DeepCopyInto(out *ProxyConfig)

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

type StaticAuditLog added in v1.0.0

type StaticAuditLog struct {
	Enable bool                 `json:"enable"`
	Config StaticAuditLogConfig `json:"config"`
}

StaticAuditLog feature flag

func (*StaticAuditLog) DeepCopy added in v1.0.0

func (in *StaticAuditLog) DeepCopy() *StaticAuditLog

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

func (*StaticAuditLog) DeepCopyInto added in v1.0.0

func (in *StaticAuditLog) DeepCopyInto(out *StaticAuditLog)

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

type StaticAuditLogConfig added in v1.0.0

type StaticAuditLogConfig struct {
	// PolicyFilePath is a path on local file system to the audit policy manifest
	// which defines what events should be recorded and what data they should include.
	// PolicyFilePath is a required field.
	// More info: https://kubernetes.io/docs/tasks/debug-application-cluster/audit/#audit-policy
	PolicyFilePath string `json:"policyFilePath"`
	// LogPath is path on control plane instances where audit log files are stored.
	// Default value is /var/log/kubernetes/audit.log
	LogPath string `json:"logPath"`
	// LogMaxAge is maximum number of days to retain old audit log files.
	// Default value is 30
	LogMaxAge int `json:"logMaxAge"`
	// LogMaxBackup is maximum number of audit log files to retain.
	// Default value is 3
	LogMaxBackup int `json:"logMaxBackup"`
	// LogMaxSize is maximum size in megabytes of audit log file before it gets rotated.
	// Default value is 100
	LogMaxSize int `json:"logMaxSize"`
}

StaticAuditLogConfig config

func (*StaticAuditLogConfig) DeepCopy added in v1.0.0

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

func (*StaticAuditLogConfig) DeepCopyInto added in v1.0.0

func (in *StaticAuditLogConfig) DeepCopyInto(out *StaticAuditLogConfig)

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

type StaticWorkersConfig added in v1.0.0

type StaticWorkersConfig struct {
	Hosts []HostConfig `json:"hosts"`
}

StaticWorkersConfig defines static worker nodes provisioned by KubeOne and kubeadm

func (*StaticWorkersConfig) DeepCopy added in v1.0.0

func (in *StaticWorkersConfig) DeepCopy() *StaticWorkersConfig

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

func (*StaticWorkersConfig) DeepCopyInto added in v1.0.0

func (in *StaticWorkersConfig) DeepCopyInto(out *StaticWorkersConfig)

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

type SystemPackages added in v1.0.0

type SystemPackages struct {
	// ConfigureRepositories (true by default) is a flag to control automatic
	// configuration of kubeadm / docker repositories.
	ConfigureRepositories bool `json:"configureRepositories"`
}

SystemPackages controls configurations of APT/YUM

func (*SystemPackages) DeepCopy added in v1.0.0

func (in *SystemPackages) DeepCopy() *SystemPackages

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

func (*SystemPackages) DeepCopyInto added in v1.0.0

func (in *SystemPackages) DeepCopyInto(out *SystemPackages)

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

type VersionConfig

type VersionConfig struct {
	Kubernetes string `json:"kubernetes"`
}

VersionConfig describes the versions of components that are installed on the machines

func (*VersionConfig) DeepCopy

func (in *VersionConfig) DeepCopy() *VersionConfig

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

func (*VersionConfig) DeepCopyInto

func (in *VersionConfig) DeepCopyInto(out *VersionConfig)

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

type VsphereSpec added in v1.0.0

type VsphereSpec struct{}

VsphereSpec defines the vSphere provider

func (*VsphereSpec) DeepCopy added in v1.0.0

func (in *VsphereSpec) DeepCopy() *VsphereSpec

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

func (*VsphereSpec) DeepCopyInto added in v1.0.0

func (in *VsphereSpec) DeepCopyInto(out *VsphereSpec)

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

type WeaveNetSpec added in v1.0.0

type WeaveNetSpec struct {
	Encrypted bool `json:"encrypted"`
}

WeaveNetSpec defines the WeaveNet CNI plugin

func (*WeaveNetSpec) DeepCopy added in v1.0.0

func (in *WeaveNetSpec) DeepCopy() *WeaveNetSpec

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

func (*WeaveNetSpec) DeepCopyInto added in v1.0.0

func (in *WeaveNetSpec) DeepCopyInto(out *WeaveNetSpec)

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

Directories

Path Synopsis
Package v1alpha1 defines the v1alpha1 version of KubeOneCluster API
Package v1alpha1 defines the v1alpha1 version of KubeOneCluster API
Package v1beta1 defines the v1beta1 version of KubeOneCluster API
Package v1beta1 defines the v1beta1 version of KubeOneCluster API

Jump to

Keyboard shortcuts

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