Documentation ¶
Overview ¶
Package v1alpha2 is the package that contains the libraries that drive the kubeadm binary. +k8s:defaulter-gen=TypeMeta +groupName=kubeadm.k8s.io +k8s:deepcopy-gen=package +k8s:conversion-gen=k8s.io/kubernetes/cmd/kubeadm/app/apis/kubeadm
Index ¶
- Constants
- Variables
- func Convert_kubeadm_API_To_v1alpha2_API(in *kubeadm.API, out *API, s conversion.Scope) error
- func Convert_kubeadm_AuditPolicyConfiguration_To_v1alpha2_AuditPolicyConfiguration(in *kubeadm.AuditPolicyConfiguration, out *AuditPolicyConfiguration, ...) error
- func Convert_kubeadm_Etcd_To_v1alpha2_Etcd(in *kubeadm.Etcd, out *Etcd, s conversion.Scope) error
- func Convert_kubeadm_HostPathMount_To_v1alpha2_HostPathMount(in *kubeadm.HostPathMount, out *HostPathMount, s conversion.Scope) error
- func Convert_kubeadm_KubeProxy_To_v1alpha2_KubeProxy(in *kubeadm.KubeProxy, out *KubeProxy, s conversion.Scope) error
- func Convert_kubeadm_KubeletConfiguration_To_v1alpha2_KubeletConfiguration(in *kubeadm.KubeletConfiguration, out *KubeletConfiguration, ...) error
- func Convert_kubeadm_MasterConfiguration_To_v1alpha2_MasterConfiguration(in *kubeadm.MasterConfiguration, out *MasterConfiguration, s conversion.Scope) error
- func Convert_kubeadm_Networking_To_v1alpha2_Networking(in *kubeadm.Networking, out *Networking, s conversion.Scope) error
- func Convert_kubeadm_NodeConfiguration_To_v1alpha2_NodeConfiguration(in *kubeadm.NodeConfiguration, out *NodeConfiguration, s conversion.Scope) error
- func Convert_kubeadm_SelfHostedEtcd_To_v1alpha2_SelfHostedEtcd(in *kubeadm.SelfHostedEtcd, out *SelfHostedEtcd, s conversion.Scope) error
- func Convert_kubeadm_TokenDiscovery_To_v1alpha2_TokenDiscovery(in *kubeadm.TokenDiscovery, out *TokenDiscovery, s conversion.Scope) error
- func Convert_v1alpha2_API_To_kubeadm_API(in *API, out *kubeadm.API, s conversion.Scope) error
- func Convert_v1alpha2_AuditPolicyConfiguration_To_kubeadm_AuditPolicyConfiguration(in *AuditPolicyConfiguration, out *kubeadm.AuditPolicyConfiguration, ...) error
- func Convert_v1alpha2_Etcd_To_kubeadm_Etcd(in *Etcd, out *kubeadm.Etcd, s conversion.Scope) error
- func Convert_v1alpha2_HostPathMount_To_kubeadm_HostPathMount(in *HostPathMount, out *kubeadm.HostPathMount, s conversion.Scope) error
- func Convert_v1alpha2_KubeProxy_To_kubeadm_KubeProxy(in *KubeProxy, out *kubeadm.KubeProxy, s conversion.Scope) error
- func Convert_v1alpha2_KubeletConfiguration_To_kubeadm_KubeletConfiguration(in *KubeletConfiguration, out *kubeadm.KubeletConfiguration, ...) error
- func Convert_v1alpha2_MasterConfiguration_To_kubeadm_MasterConfiguration(in *MasterConfiguration, out *kubeadm.MasterConfiguration, s conversion.Scope) error
- func Convert_v1alpha2_Networking_To_kubeadm_Networking(in *Networking, out *kubeadm.Networking, s conversion.Scope) error
- func Convert_v1alpha2_NodeConfiguration_To_kubeadm_NodeConfiguration(in *NodeConfiguration, out *kubeadm.NodeConfiguration, s conversion.Scope) error
- func Convert_v1alpha2_SelfHostedEtcd_To_kubeadm_SelfHostedEtcd(in *SelfHostedEtcd, out *kubeadm.SelfHostedEtcd, s conversion.Scope) error
- func Convert_v1alpha2_TokenDiscovery_To_kubeadm_TokenDiscovery(in *TokenDiscovery, out *kubeadm.TokenDiscovery, s conversion.Scope) error
- func Kind(kind string) schema.GroupKind
- func RegisterConversions(scheme *runtime.Scheme) error
- func RegisterDefaults(scheme *runtime.Scheme) error
- func Resource(resource string) schema.GroupResource
- func SetDefaultsEtcdSelfHosted(obj *MasterConfiguration)
- func SetDefaults_AuditPolicyConfiguration(obj *MasterConfiguration)
- func SetDefaults_KubeletConfiguration(obj *MasterConfiguration)
- func SetDefaults_MasterConfiguration(obj *MasterConfiguration)
- func SetDefaults_NodeConfiguration(obj *NodeConfiguration)
- func SetDefaults_ProxyConfiguration(obj *MasterConfiguration)
- func SetObjectDefaults_MasterConfiguration(in *MasterConfiguration)
- func SetObjectDefaults_NodeConfiguration(in *NodeConfiguration)
- type API
- type AuditPolicyConfiguration
- type Etcd
- type HostPathMount
- type KubeProxy
- type KubeletConfiguration
- type MasterConfiguration
- type Networking
- type NodeConfiguration
- type SelfHostedEtcd
- type TokenDiscovery
Constants ¶
const ( // DefaultServiceDNSDomain defines default cluster-internal domain name for Services and Pods DefaultServiceDNSDomain = "cluster.local" // DefaultServicesSubnet defines default service subnet range DefaultServicesSubnet = "10.96.0.0/12" // DefaultClusterDNSIP defines default DNS IP DefaultClusterDNSIP = "10.96.0.10" // DefaultKubernetesVersion defines default kubernetes version DefaultKubernetesVersion = "stable-1.10" // DefaultAPIBindPort defines default API port DefaultAPIBindPort = 6443 // DefaultAuthorizationModes defines default authorization modes DefaultAuthorizationModes = "Node,RBAC" // DefaultCertificatesDir defines default certificate directory DefaultCertificatesDir = "/etc/kubernetes/pki" // DefaultImageRepository defines default image registry DefaultImageRepository = "k8s.gcr.io" // DefaultManifestsDir defines default manifests directory DefaultManifestsDir = "/etc/kubernetes/manifests" // DefaultCRISocket defines the default cri socket DefaultCRISocket = "/var/run/dockershim.sock" // DefaultClusterName defines the default cluster name DefaultClusterName = "kubernetes" // DefaultEtcdDataDir defines default location of etcd where static pods will save data to DefaultEtcdDataDir = "/var/lib/etcd" // DefaultEtcdClusterSize defines the default cluster size when using the etcd-operator DefaultEtcdClusterSize = 3 // DefaultEtcdOperatorVersion defines the default version of the etcd-operator to use DefaultEtcdOperatorVersion = "v0.6.0" // DefaultEtcdCertDir represents the directory where PKI assets are stored for self-hosted etcd DefaultEtcdCertDir = "/etc/kubernetes/pki/etcd" // DefaultEtcdClusterServiceName is the default name of the service backing the etcd cluster DefaultEtcdClusterServiceName = "etcd-cluster" // DefaultProxyBindAddressv4 is the default bind address when the advertise address is v4 DefaultProxyBindAddressv4 = "0.0.0.0" // DefaultProxyBindAddressv6 is the default bind address when the advertise address is v6 DefaultProxyBindAddressv6 = "::" // KubeproxyKubeConfigFileName defines the file name for the kube-proxy's KubeConfig file KubeproxyKubeConfigFileName = "/var/lib/kube-proxy/kubeconfig.conf" // DefaultDiscoveryTimeout specifies the default discovery timeout for kubeadm (used unless one is specified in the NodeConfiguration) DefaultDiscoveryTimeout = 5 * time.Minute )
const DefaultCACertPath = "/etc/kubernetes/pki/ca.crt"
DefaultCACertPath defines default location of CA certificate on Linux
const GroupName = "kubeadm.k8s.io"
GroupName is the group name use in this package
Variables ¶
var ( // SchemeBuilder points to a list of functions added to Scheme. SchemeBuilder runtime.SchemeBuilder // AddToScheme applies all the stored functions to the scheme. AddToScheme = localSchemeBuilder.AddToScheme )
var ( // DefaultAuditPolicyLogMaxAge is defined as a var so its address can be taken // It is the number of days to store audit logs DefaultAuditPolicyLogMaxAge = int32(2) )
var SchemeGroupVersion = schema.GroupVersion{Group: GroupName, Version: "v1alpha2"}
SchemeGroupVersion is group version used to register these objects
Functions ¶
func Convert_kubeadm_API_To_v1alpha2_API ¶
Convert_kubeadm_API_To_v1alpha2_API is an autogenerated conversion function.
func Convert_kubeadm_AuditPolicyConfiguration_To_v1alpha2_AuditPolicyConfiguration ¶
func Convert_kubeadm_AuditPolicyConfiguration_To_v1alpha2_AuditPolicyConfiguration(in *kubeadm.AuditPolicyConfiguration, out *AuditPolicyConfiguration, s conversion.Scope) error
Convert_kubeadm_AuditPolicyConfiguration_To_v1alpha2_AuditPolicyConfiguration is an autogenerated conversion function.
func Convert_kubeadm_Etcd_To_v1alpha2_Etcd ¶
Convert_kubeadm_Etcd_To_v1alpha2_Etcd is an autogenerated conversion function.
func Convert_kubeadm_HostPathMount_To_v1alpha2_HostPathMount ¶
func Convert_kubeadm_HostPathMount_To_v1alpha2_HostPathMount(in *kubeadm.HostPathMount, out *HostPathMount, s conversion.Scope) error
Convert_kubeadm_HostPathMount_To_v1alpha2_HostPathMount is an autogenerated conversion function.
func Convert_kubeadm_KubeProxy_To_v1alpha2_KubeProxy ¶
func Convert_kubeadm_KubeProxy_To_v1alpha2_KubeProxy(in *kubeadm.KubeProxy, out *KubeProxy, s conversion.Scope) error
Convert_kubeadm_KubeProxy_To_v1alpha2_KubeProxy is an autogenerated conversion function.
func Convert_kubeadm_KubeletConfiguration_To_v1alpha2_KubeletConfiguration ¶
func Convert_kubeadm_KubeletConfiguration_To_v1alpha2_KubeletConfiguration(in *kubeadm.KubeletConfiguration, out *KubeletConfiguration, s conversion.Scope) error
Convert_kubeadm_KubeletConfiguration_To_v1alpha2_KubeletConfiguration is an autogenerated conversion function.
func Convert_kubeadm_MasterConfiguration_To_v1alpha2_MasterConfiguration ¶
func Convert_kubeadm_MasterConfiguration_To_v1alpha2_MasterConfiguration(in *kubeadm.MasterConfiguration, out *MasterConfiguration, s conversion.Scope) error
Convert_kubeadm_MasterConfiguration_To_v1alpha2_MasterConfiguration is an autogenerated conversion function.
func Convert_kubeadm_Networking_To_v1alpha2_Networking ¶
func Convert_kubeadm_Networking_To_v1alpha2_Networking(in *kubeadm.Networking, out *Networking, s conversion.Scope) error
Convert_kubeadm_Networking_To_v1alpha2_Networking is an autogenerated conversion function.
func Convert_kubeadm_NodeConfiguration_To_v1alpha2_NodeConfiguration ¶
func Convert_kubeadm_NodeConfiguration_To_v1alpha2_NodeConfiguration(in *kubeadm.NodeConfiguration, out *NodeConfiguration, s conversion.Scope) error
Convert_kubeadm_NodeConfiguration_To_v1alpha2_NodeConfiguration is an autogenerated conversion function.
func Convert_kubeadm_SelfHostedEtcd_To_v1alpha2_SelfHostedEtcd ¶
func Convert_kubeadm_SelfHostedEtcd_To_v1alpha2_SelfHostedEtcd(in *kubeadm.SelfHostedEtcd, out *SelfHostedEtcd, s conversion.Scope) error
Convert_kubeadm_SelfHostedEtcd_To_v1alpha2_SelfHostedEtcd is an autogenerated conversion function.
func Convert_kubeadm_TokenDiscovery_To_v1alpha2_TokenDiscovery ¶
func Convert_kubeadm_TokenDiscovery_To_v1alpha2_TokenDiscovery(in *kubeadm.TokenDiscovery, out *TokenDiscovery, s conversion.Scope) error
Convert_kubeadm_TokenDiscovery_To_v1alpha2_TokenDiscovery is an autogenerated conversion function.
func Convert_v1alpha2_API_To_kubeadm_API ¶
Convert_v1alpha2_API_To_kubeadm_API is an autogenerated conversion function.
func Convert_v1alpha2_AuditPolicyConfiguration_To_kubeadm_AuditPolicyConfiguration ¶
func Convert_v1alpha2_AuditPolicyConfiguration_To_kubeadm_AuditPolicyConfiguration(in *AuditPolicyConfiguration, out *kubeadm.AuditPolicyConfiguration, s conversion.Scope) error
Convert_v1alpha2_AuditPolicyConfiguration_To_kubeadm_AuditPolicyConfiguration is an autogenerated conversion function.
func Convert_v1alpha2_Etcd_To_kubeadm_Etcd ¶
Convert_v1alpha2_Etcd_To_kubeadm_Etcd is an autogenerated conversion function.
func Convert_v1alpha2_HostPathMount_To_kubeadm_HostPathMount ¶
func Convert_v1alpha2_HostPathMount_To_kubeadm_HostPathMount(in *HostPathMount, out *kubeadm.HostPathMount, s conversion.Scope) error
Convert_v1alpha2_HostPathMount_To_kubeadm_HostPathMount is an autogenerated conversion function.
func Convert_v1alpha2_KubeProxy_To_kubeadm_KubeProxy ¶
func Convert_v1alpha2_KubeProxy_To_kubeadm_KubeProxy(in *KubeProxy, out *kubeadm.KubeProxy, s conversion.Scope) error
Convert_v1alpha2_KubeProxy_To_kubeadm_KubeProxy is an autogenerated conversion function.
func Convert_v1alpha2_KubeletConfiguration_To_kubeadm_KubeletConfiguration ¶
func Convert_v1alpha2_KubeletConfiguration_To_kubeadm_KubeletConfiguration(in *KubeletConfiguration, out *kubeadm.KubeletConfiguration, s conversion.Scope) error
Convert_v1alpha2_KubeletConfiguration_To_kubeadm_KubeletConfiguration is an autogenerated conversion function.
func Convert_v1alpha2_MasterConfiguration_To_kubeadm_MasterConfiguration ¶
func Convert_v1alpha2_MasterConfiguration_To_kubeadm_MasterConfiguration(in *MasterConfiguration, out *kubeadm.MasterConfiguration, s conversion.Scope) error
Convert_v1alpha2_MasterConfiguration_To_kubeadm_MasterConfiguration is an autogenerated conversion function.
func Convert_v1alpha2_Networking_To_kubeadm_Networking ¶
func Convert_v1alpha2_Networking_To_kubeadm_Networking(in *Networking, out *kubeadm.Networking, s conversion.Scope) error
Convert_v1alpha2_Networking_To_kubeadm_Networking is an autogenerated conversion function.
func Convert_v1alpha2_NodeConfiguration_To_kubeadm_NodeConfiguration ¶
func Convert_v1alpha2_NodeConfiguration_To_kubeadm_NodeConfiguration(in *NodeConfiguration, out *kubeadm.NodeConfiguration, s conversion.Scope) error
Convert_v1alpha2_NodeConfiguration_To_kubeadm_NodeConfiguration is an autogenerated conversion function.
func Convert_v1alpha2_SelfHostedEtcd_To_kubeadm_SelfHostedEtcd ¶
func Convert_v1alpha2_SelfHostedEtcd_To_kubeadm_SelfHostedEtcd(in *SelfHostedEtcd, out *kubeadm.SelfHostedEtcd, s conversion.Scope) error
Convert_v1alpha2_SelfHostedEtcd_To_kubeadm_SelfHostedEtcd is an autogenerated conversion function.
func Convert_v1alpha2_TokenDiscovery_To_kubeadm_TokenDiscovery ¶
func Convert_v1alpha2_TokenDiscovery_To_kubeadm_TokenDiscovery(in *TokenDiscovery, out *kubeadm.TokenDiscovery, s conversion.Scope) error
Convert_v1alpha2_TokenDiscovery_To_kubeadm_TokenDiscovery is an autogenerated conversion function.
func RegisterConversions ¶
RegisterConversions adds conversion functions to the given scheme. Public to allow building arbitrary schemes.
func RegisterDefaults ¶
RegisterDefaults adds defaulters functions to the given scheme. Public to allow building arbitrary schemes. All generated defaulters are covering - they call all nested defaulters.
func Resource ¶
func Resource(resource string) schema.GroupResource
Resource takes an unqualified resource and returns a Group qualified GroupResource
func SetDefaultsEtcdSelfHosted ¶
func SetDefaultsEtcdSelfHosted(obj *MasterConfiguration)
SetDefaultsEtcdSelfHosted sets defaults for self-hosted etcd if used
func SetDefaults_AuditPolicyConfiguration ¶
func SetDefaults_AuditPolicyConfiguration(obj *MasterConfiguration)
SetDefaults_AuditPolicyConfiguration sets default values for the AuditPolicyConfiguration
func SetDefaults_KubeletConfiguration ¶
func SetDefaults_KubeletConfiguration(obj *MasterConfiguration)
SetDefaults_KubeletConfiguration assigns default values to kubelet
func SetDefaults_MasterConfiguration ¶
func SetDefaults_MasterConfiguration(obj *MasterConfiguration)
SetDefaults_MasterConfiguration assigns default values to Master node
func SetDefaults_NodeConfiguration ¶
func SetDefaults_NodeConfiguration(obj *NodeConfiguration)
SetDefaults_NodeConfiguration assigns default values to a regular node
func SetDefaults_ProxyConfiguration ¶
func SetDefaults_ProxyConfiguration(obj *MasterConfiguration)
SetDefaults_ProxyConfiguration assigns default values for the Proxy
func SetObjectDefaults_MasterConfiguration ¶
func SetObjectDefaults_MasterConfiguration(in *MasterConfiguration)
func SetObjectDefaults_NodeConfiguration ¶
func SetObjectDefaults_NodeConfiguration(in *NodeConfiguration)
Types ¶
type API ¶
type API struct { // AdvertiseAddress sets the IP address for the API server to advertise. AdvertiseAddress string `json:"advertiseAddress"` // ControlPlaneEndpoint sets a stable IP address or DNS name for the control plane; it // can be a valid IP address or a RFC-1123 DNS subdomain, both with optional TCP port. // In case the ControlPlaneEndpoint is not specified, the AdvertiseAddress + BindPort // are used; in case the ControlPlaneEndpoint is specified but without a TCP port, // the BindPort is used. // Possible usages are: // e.g. In an cluster with more than one control plane instances, this field should be // assigned the address of the external load balancer in front of the // control plane instances. // e.g. in environments with enforced node recycling, the ControlPlaneEndpoint // could be used for assigning a stable DNS to the control plane. ControlPlaneEndpoint string `json:"controlPlaneEndpoint"` // BindPort sets the secure port for the API Server to bind to. // Defaults to 6443. BindPort int32 `json:"bindPort"` }
API struct contains elements of API server address.
func (*API) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new API.
func (*API) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AuditPolicyConfiguration ¶
type AuditPolicyConfiguration struct { // Path is the local path to an audit policy. Path string `json:"path"` // LogDir is the local path to the directory where logs should be stored. LogDir string `json:"logDir"` // LogMaxAge is the number of days logs will be stored for. 0 indicates forever. LogMaxAge *int32 `json:"logMaxAge,omitempty"` }
AuditPolicyConfiguration holds the options for configuring the api server audit policy.
func (*AuditPolicyConfiguration) DeepCopy ¶
func (in *AuditPolicyConfiguration) DeepCopy() *AuditPolicyConfiguration
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AuditPolicyConfiguration.
func (*AuditPolicyConfiguration) DeepCopyInto ¶
func (in *AuditPolicyConfiguration) DeepCopyInto(out *AuditPolicyConfiguration)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Etcd ¶
type Etcd struct { // Endpoints of etcd members. Useful for using external etcd. // If not provided, kubeadm will run etcd in a static pod. Endpoints []string `json:"endpoints"` // CAFile is an SSL Certificate Authority file used to secure etcd communication. CAFile string `json:"caFile"` // CertFile is an SSL certification file used to secure etcd communication. CertFile string `json:"certFile"` // KeyFile is an SSL key file used to secure etcd communication. KeyFile string `json:"keyFile"` // DataDir is the directory etcd will place its data. // Defaults to "/var/lib/etcd". DataDir string `json:"dataDir"` // ExtraArgs are extra arguments provided to the etcd binary // when run inside a static pod. ExtraArgs map[string]string `json:"extraArgs,omitempty"` // Image specifies which container image to use for running etcd. // If empty, automatically populated by kubeadm using the image // repository and default etcd version. Image string `json:"image"` // SelfHosted holds configuration for self-hosting etcd. SelfHosted *SelfHostedEtcd `json:"selfHosted,omitempty"` // ServerCertSANs sets extra Subject Alternative Names for the etcd server signing cert. ServerCertSANs []string `json:"serverCertSANs,omitempty"` // PeerCertSANs sets extra Subject Alternative Names for the etcd peer signing cert. PeerCertSANs []string `json:"peerCertSANs,omitempty"` }
Etcd contains elements describing Etcd configuration.
func (*Etcd) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Etcd.
func (*Etcd) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type HostPathMount ¶
type HostPathMount struct { // Name of the volume inside the pod template. Name string `json:"name"` // HostPath is the path in the host that will be mounted inside // the pod. HostPath string `json:"hostPath"` // MountPath is the path inside the pod where hostPath will be mounted. MountPath string `json:"mountPath"` // Writable controls write access to the volume Writable bool `json:"writable,omitempty"` // PathType is the type of the HostPath. PathType v1.HostPathType `json:"pathType,omitempty"` }
HostPathMount contains elements describing volumes that are mounted from the host.
func (*HostPathMount) DeepCopy ¶
func (in *HostPathMount) DeepCopy() *HostPathMount
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HostPathMount.
func (*HostPathMount) DeepCopyInto ¶
func (in *HostPathMount) DeepCopyInto(out *HostPathMount)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type KubeProxy ¶
type KubeProxy struct {
Config *kubeproxyconfigv1alpha1.KubeProxyConfiguration `json:"config,omitempty"`
}
KubeProxy contains elements describing the proxy configuration.
func (*KubeProxy) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KubeProxy.
func (*KubeProxy) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type KubeletConfiguration ¶
type KubeletConfiguration struct {
BaseConfig *kubeletconfigv1beta1.KubeletConfiguration `json:"baseConfig,omitempty"`
}
KubeletConfiguration contains elements describing initial remote configuration of kubelet.
func (*KubeletConfiguration) DeepCopy ¶
func (in *KubeletConfiguration) DeepCopy() *KubeletConfiguration
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KubeletConfiguration.
func (*KubeletConfiguration) DeepCopyInto ¶
func (in *KubeletConfiguration) DeepCopyInto(out *KubeletConfiguration)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MasterConfiguration ¶
type MasterConfiguration struct { metav1.TypeMeta `json:",inline"` // API holds configuration for the k8s apiserver. API API `json:"api"` // KubeProxy holds configuration for the k8s service proxy. KubeProxy KubeProxy `json:"kubeProxy"` // Etcd holds configuration for etcd. Etcd Etcd `json:"etcd"` // KubeletConfiguration holds configuration for the kubelet. KubeletConfiguration KubeletConfiguration `json:"kubeletConfiguration"` // Networking holds configuration for the networking topology of the cluster. Networking Networking `json:"networking"` // KubernetesVersion is the target version of the control plane. KubernetesVersion string `json:"kubernetesVersion"` // NodeName is the name of the node that will host the k8s control plane. // Defaults to the hostname if not provided. NodeName string `json:"nodeName"` // AuthorizationModes is a set of authorization modes used inside the cluster. // If not specified, defaults to Node and RBAC, meaning both the node // authorizer and RBAC are enabled. AuthorizationModes []string `json:"authorizationModes,omitempty"` // NoTaintMaster will, if set, suppress the tainting of the // master node allowing workloads to be run on it (e.g. in // single node configurations). NoTaintMaster bool `json:"noTaintMaster,omitempty"` // Token is used for establishing bidirectional trust between nodes and masters. // Used for joining nodes in the cluster. Token string `json:"token"` // TokenTTL defines the ttl for Token. Defaults to 24h. TokenTTL *metav1.Duration `json:"tokenTTL,omitempty"` // TokenUsages describes the ways in which this token can be used. TokenUsages []string `json:"tokenUsages,omitempty"` // Extra groups that this token will authenticate as when used for authentication TokenGroups []string `json:"tokenGroups,omitempty"` // CRISocket is used to retrieve container runtime info. CRISocket string `json:"criSocket,omitempty"` // APIServerExtraArgs is a set of extra flags to pass to the API Server or override // default ones in form of <flagname>=<value>. // TODO: This is temporary and ideally we would like to switch all components to // use ComponentConfig + ConfigMaps. APIServerExtraArgs map[string]string `json:"apiServerExtraArgs,omitempty"` // ControllerManagerExtraArgs is a set of extra flags to pass to the Controller Manager // or override default ones in form of <flagname>=<value> // TODO: This is temporary and ideally we would like to switch all components to // use ComponentConfig + ConfigMaps. ControllerManagerExtraArgs map[string]string `json:"controllerManagerExtraArgs,omitempty"` // SchedulerExtraArgs is a set of extra flags to pass to the Scheduler or override // default ones in form of <flagname>=<value> // TODO: This is temporary and ideally we would like to switch all components to // use ComponentConfig + ConfigMaps. SchedulerExtraArgs map[string]string `json:"schedulerExtraArgs,omitempty"` // APIServerExtraVolumes is an extra set of host volumes mounted to the API server. APIServerExtraVolumes []HostPathMount `json:"apiServerExtraVolumes,omitempty"` // ControllerManagerExtraVolumes is an extra set of host volumes mounted to the // Controller Manager. ControllerManagerExtraVolumes []HostPathMount `json:"controllerManagerExtraVolumes,omitempty"` // SchedulerExtraVolumes is an extra set of host volumes mounted to the scheduler. SchedulerExtraVolumes []HostPathMount `json:"schedulerExtraVolumes,omitempty"` // APIServerCertSANs sets extra Subject Alternative Names for the API Server signing cert. APIServerCertSANs []string `json:"apiServerCertSANs,omitempty"` // CertificatesDir specifies where to store or look for all required certificates. CertificatesDir string `json:"certificatesDir"` // ImageRepository what container registry to pull control plane images from ImageRepository string `json:"imageRepository"` // ImagePullPolicy that control plane images. Can be Always, IfNotPresent or Never. ImagePullPolicy v1.PullPolicy `json:"imagePullPolicy,omitempty"` // UnifiedControlPlaneImage specifies if a specific container image should // be used for all control plane components. UnifiedControlPlaneImage string `json:"unifiedControlPlaneImage"` // AuditPolicyConfiguration defines the options for the api server audit system AuditPolicyConfiguration AuditPolicyConfiguration `json:"auditPolicy"` // FeatureGates enabled by the user. FeatureGates map[string]bool `json:"featureGates,omitempty"` // The cluster name ClusterName string `json:"clusterName,omitempty"` }
MasterConfiguration contains a list of elements which make up master's configuration object.
func (*MasterConfiguration) DeepCopy ¶
func (in *MasterConfiguration) DeepCopy() *MasterConfiguration
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MasterConfiguration.
func (*MasterConfiguration) DeepCopyInto ¶
func (in *MasterConfiguration) DeepCopyInto(out *MasterConfiguration)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*MasterConfiguration) DeepCopyObject ¶
func (in *MasterConfiguration) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type Networking ¶
type Networking struct { // ServiceSubnet is the subnet used by k8s services. Defaults to "10.96.0.0/12". ServiceSubnet string `json:"serviceSubnet"` // PodSubnet is the subnet used by pods. PodSubnet string `json:"podSubnet"` // DNSDomain is the dns domain used by k8s services. Defaults to "cluster.local". DNSDomain string `json:"dnsDomain"` }
Networking contains elements describing cluster's networking configuration
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 NodeConfiguration ¶
type NodeConfiguration struct { metav1.TypeMeta `json:",inline"` // CACertPath is the path to the SSL certificate authority used to // secure comunications between node and master. // Defaults to "/etc/kubernetes/pki/ca.crt". CACertPath string `json:"caCertPath"` // DiscoveryFile is a file or url to a kubeconfig file from which to // load cluster information. DiscoveryFile string `json:"discoveryFile"` // DiscoveryToken is a token used to validate cluster information // fetched from the master. DiscoveryToken string `json:"discoveryToken"` // DiscoveryTokenAPIServers is a set of IPs to API servers from which info // will be fetched. Currently we only pay attention to one API server but // hope to support >1 in the future. DiscoveryTokenAPIServers []string `json:"discoveryTokenAPIServers,omitempty"` // DiscoveryTimeout modifies the discovery timeout DiscoveryTimeout *metav1.Duration `json:"discoveryTimeout,omitempty"` // NodeName is the name of the node to join the cluster. Defaults // to the name of the host. NodeName string `json:"nodeName"` // TLSBootstrapToken is a token used for TLS bootstrapping. // Defaults to Token. TLSBootstrapToken string `json:"tlsBootstrapToken"` // Token is used for both discovery and TLS bootstrapping. Token string `json:"token"` // CRISocket is used to retrieve container runtime info. CRISocket string `json:"criSocket,omitempty"` // ClusterName is the name for the cluster in kubeconfig. ClusterName string `json:"clusterName,omitempty"` // DiscoveryTokenCACertHashes specifies a set of public key pins to verify // when token-based discovery is used. The root CA found during discovery // must match one of these values. Specifying an empty set disables root CA // pinning, which can be unsafe. Each hash is specified as "<type>:<value>", // where the only currently supported type is "sha256". This is a hex-encoded // SHA-256 hash of the Subject Public Key Info (SPKI) object in DER-encoded // ASN.1. These hashes can be calculated using, for example, OpenSSL: // openssl x509 -pubkey -in ca.crt openssl rsa -pubin -outform der 2>&/dev/null | openssl dgst -sha256 -hex DiscoveryTokenCACertHashes []string `json:"discoveryTokenCACertHashes,omitempty"` // DiscoveryTokenUnsafeSkipCAVerification allows token-based discovery // without CA verification via DiscoveryTokenCACertHashes. This can weaken // the security of kubeadm since other nodes can impersonate the master. DiscoveryTokenUnsafeSkipCAVerification bool `json:"discoveryTokenUnsafeSkipCAVerification"` // FeatureGates enabled by the user. FeatureGates map[string]bool `json:"featureGates,omitempty"` }
NodeConfiguration contains elements describing a particular node. TODO: This struct should be replaced by dynamic kubelet configuration.
func (*NodeConfiguration) DeepCopy ¶
func (in *NodeConfiguration) DeepCopy() *NodeConfiguration
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeConfiguration.
func (*NodeConfiguration) DeepCopyInto ¶
func (in *NodeConfiguration) DeepCopyInto(out *NodeConfiguration)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*NodeConfiguration) DeepCopyObject ¶
func (in *NodeConfiguration) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type SelfHostedEtcd ¶
type SelfHostedEtcd struct { // CertificatesDir represents the directory where all etcd TLS assets are stored. // Defaults to "/etc/kubernetes/pki/etcd". CertificatesDir string `json:"certificatesDir"` // ClusterServiceName is the name of the service that load balances the etcd cluster. ClusterServiceName string `json:"clusterServiceName"` // EtcdVersion is the version of etcd running in the cluster. EtcdVersion string `json:"etcdVersion"` // OperatorVersion is the version of the etcd-operator to use. OperatorVersion string `json:"operatorVersion"` }
SelfHostedEtcd describes options required to configure self-hosted etcd.
func (*SelfHostedEtcd) DeepCopy ¶
func (in *SelfHostedEtcd) DeepCopy() *SelfHostedEtcd
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SelfHostedEtcd.
func (*SelfHostedEtcd) DeepCopyInto ¶
func (in *SelfHostedEtcd) DeepCopyInto(out *SelfHostedEtcd)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TokenDiscovery ¶
type TokenDiscovery struct { // ID is the first part of a bootstrap token. Considered public information. // It is used when referring to a token without leaking the secret part. ID string `json:"id"` // Secret is the second part of a bootstrap token. Should only be shared // with trusted parties. Secret string `json:"secret"` }
TokenDiscovery contains elements needed for token discovery.
func (*TokenDiscovery) DeepCopy ¶
func (in *TokenDiscovery) DeepCopy() *TokenDiscovery
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TokenDiscovery.
func (*TokenDiscovery) DeepCopyInto ¶
func (in *TokenDiscovery) DeepCopyInto(out *TokenDiscovery)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.