diff --git a/content/en/docs/reference/_index.md b/content/en/docs/reference/_index.md index 960881e77f..7fa6d578fd 100644 --- a/content/en/docs/reference/_index.md +++ b/content/en/docs/reference/_index.md @@ -100,7 +100,6 @@ operator to use or manage a cluster. ## Config API for kubeadm -* [v1beta2](/docs/reference/config-api/kubeadm-config.v1beta2/) * [v1beta3](/docs/reference/config-api/kubeadm-config.v1beta3/) ## Design Docs diff --git a/content/en/docs/reference/config-api/apiserver-admission.v1.md b/content/en/docs/reference/config-api/apiserver-admission.v1.md index a4c70ac9f0..946b011e77 100644 --- a/content/en/docs/reference/config-api/apiserver-admission.v1.md +++ b/content/en/docs/reference/config-api/apiserver-admission.v1.md @@ -72,14 +72,14 @@ It is suitable for correlating log entries between the webhook and apiserver, fo
kind
[Required]meta/v1.GroupVersionKind
+meta/v1.GroupVersionKind
Kind is the fully-qualified type of object being submitted (for example, v1.Pod or autoscaling.v1.Scale)
resource
[Required]meta/v1.GroupVersionResource
+meta/v1.GroupVersionResource
Resource is the fully-qualified resource being requested (for example, v1.pods)
@@ -93,7 +93,7 @@ It is suitable for correlating log entries between the webhook and apiserver, forequestKind
meta/v1.GroupVersionKind
+meta/v1.GroupVersionKind
RequestKind is the fully-qualified type of the original API request (for example, v1.Pod or autoscaling.v1.Scale).
@@ -107,7 +107,7 @@ and requestKind: {group:"apps", version:"v1beta1", kin
requestResource
meta/v1.GroupVersionResource
+meta/v1.GroupVersionResource
RequestResource is the fully-qualified resource of the original API request (for example, v1.pods). @@ -153,7 +153,7 @@ requested. e.g. a patch can result in either a CREATE or UPDATE Operation.
userInfo
[Required]authentication/v1.UserInfo
+authentication/v1.UserInfo
UserInfo is information about the requesting user
@@ -227,7 +227,7 @@ This must be copied over from the corresponding AdmissionRequest.status
meta/v1.Status
+meta/v1.Status
Result contains extra details into why an admission request was denied. diff --git a/content/en/docs/reference/config-api/apiserver-audit.v1.md b/content/en/docs/reference/config-api/apiserver-audit.v1.md index ffef0b7f2b..e89270a91a 100644 --- a/content/en/docs/reference/config-api/apiserver-audit.v1.md +++ b/content/en/docs/reference/config-api/apiserver-audit.v1.md @@ -72,14 +72,14 @@ For non-resource requests, this is the lower-cased HTTP method.
user
[Required]authentication/v1.UserInfo
+authentication/v1.UserInfo
Authenticated user information.
impersonatedUser
authentication/v1.UserInfo
+authentication/v1.UserInfo
Impersonated user information.
@@ -117,7 +117,7 @@ Does not apply for List-type requests, or non-resource requests.responseStatus
meta/v1.Status
+meta/v1.Status
The response status, populated even when the ResponseObject is not a Status type. @@ -145,14 +145,14 @@ at Response Level.
requestReceivedTimestamp
meta/v1.MicroTime
+meta/v1.MicroTime
Time the request reached the apiserver.
stageTimestamp
meta/v1.MicroTime
+meta/v1.MicroTime
Time the request reached current audit stage.
@@ -189,7 +189,7 @@ should be short. Annotations are included in the Metadata level.metadata
meta/v1.ListMeta
+meta/v1.ListMeta
metadata
meta/v1.ObjectMeta
+meta/v1.ObjectMeta
ObjectMeta is included for interoperability with API infrastructure.
@@ -279,7 +279,7 @@ in a rule will override the global default.metadata
meta/v1.ListMeta
+meta/v1.ListMeta
kind
TracingConfiguration
endpoint
string
+TracingConfiguration
[Required]TracingConfiguration
Endpoint of the collector that's running on the control-plane node. -The APIServer uses the egressType ControlPlane when sending data to the collector. -The syntax is defined in https://github.com/grpc/grpc/blob/master/doc/naming.md. -Defaults to the otlpgrpc default, localhost:4317 -The connection is insecure, and does not support TLS.
-samplingRatePerMillion
int32
-SamplingRatePerMillion is the number of samples to collect per million spans. -Defaults to 0.
+TracingConfiguration
are embedded into this type.)
+ Embed the component config tracing configuration struct
TracingConfiguration provides versioned configuration for OpenTelemetry tracing clients.
+ + +Field | Description |
---|---|
endpoint + string
+ |
+
+ Endpoint of the collector this component will report traces to. +The connection is insecure, and does not currently support TLS. +Recommended is unset, and endpoint is the otlp grpc default, localhost:4317. + |
+
samplingRatePerMillion + int32
+ |
+
+ SamplingRatePerMillion is the number of samples to collect per million spans. +Recommended is unset. If unset, sampler respects its parent span's sampling +rate, but otherwise never samples. + |
+
TracingConfiguration provides versioned configuration for tracing clients.
+ + +Field | Description |
---|---|
apiVersion string | apiserver.k8s.io/v1beta1 |
kind string | TracingConfiguration |
TracingConfiguration [Required]+ TracingConfiguration
+ |
+(Members of TracingConfiguration are embedded into this type.)
+ Embed the component config tracing configuration struct + |
+
TracingConfiguration provides versioned configuration for OpenTelemetry tracing clients.
+ + +Field | Description |
---|---|
endpoint + string
+ |
+
+ Endpoint of the collector this component will report traces to. +The connection is insecure, and does not currently support TLS. +Recommended is unset, and endpoint is the otlp grpc default, localhost:4317. + |
+
samplingRatePerMillion + int32
+ |
+
+ SamplingRatePerMillion is the number of samples to collect per million spans. +Recommended is unset. If unset, sampler respects its parent span's sampling +rate, but otherwise never samples. + |
+
EncryptionConfiguration stores the complete configuration for encryption providers.
+EncryptionConfiguration stores the complete configuration for encryption providers. +It also allows the use of wildcards to specify the resources that should be encrypted. +Use '.' to encrypt all resources within a group or '.' to encrypt all resources. +'.' can be used to encrypt all resource in the core group. '.' will encrypt all +resources, even custom resources that are added after API server start. +Use of wildcards that overlap within the same resource list or across multiple +entries are not allowed since part of the configuration would be ineffective. +Resource lists are processed in order, with earlier lists taking precedence.
+Example:
+kind: EncryptionConfiguration
+apiVersion: apiserver.config.k8s.io/v1
+resources:
+- resources:
+ - events
+ providers:
+ - identity: {} # do not encrypt events even though *.* is specified below
+- resources:
+ - secrets
+ - configmaps
+ - pandas.awesome.bears.example
+ providers:
+ - aescbc:
+ keys:
+ - name: key1
+ secret: c2VjcmV0IGlzIHNlY3VyZQ==
+- resources:
+ - '*.apps'
+ providers:
+ - aescbc:
+ keys:
+ - name: key2
+ secret: c2VjcmV0IGlzIHNlY3VyZSwgb3IgaXMgaXQ/Cg==
+- resources:
+ - '*.*'
+ providers:
+ - aescbc:
+ keys:
+ - name: key3
+ secret: c2VjcmV0IGlzIHNlY3VyZSwgSSB0aGluaw==
cachesize is the maximum number of secrets which are cached in memory. The default value is 1000. -Set to a negative value to disable caching. +Set to a negative value to disable caching. This field is only allowed for KMS v1 providers. |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
endpoint [Required]@@ -243,7 +281,11 @@ Set to a negative value to disable caching. []string
|
- resources is a list of kubernetes resources which have to be encrypted. +resources is a list of kubernetes resources which have to be encrypted. The resource names are derived from |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
providers [Required]@@ -251,7 +293,7 @@ Set to a negative value to disable caching. |
providers is a list of transformers to be used for reading and writing the resources to disk. -eg: aesgcm, aescbc, secretbox, identity. +eg: aesgcm, aescbc, secretbox, identity, kms. |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
expirationTimestamp - meta/v1.Time
+meta/v1.Time
|
ExpirationTimestamp indicates a time when the provided credentials expire. diff --git a/content/en/docs/reference/config-api/client-authentication.v1beta1.md b/content/en/docs/reference/config-api/client-authentication.v1beta1.md index 09aa4dcc87..f8cab963cd 100644 --- a/content/en/docs/reference/config-api/client-authentication.v1beta1.md +++ b/content/en/docs/reference/config-api/client-authentication.v1beta1.md @@ -206,7 +206,7 @@ itself should at least be protected via file permissions. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
expirationTimestamp - meta/v1.Time
+meta/v1.Time
|
ExpirationTimestamp indicates a time when the provided credentials expire. diff --git a/content/en/docs/reference/config-api/imagepolicy.v1alpha1.md b/content/en/docs/reference/config-api/imagepolicy.v1alpha1.md index 0eaa8f14ad..fb55f9a06b 100644 --- a/content/en/docs/reference/config-api/imagepolicy.v1alpha1.md +++ b/content/en/docs/reference/config-api/imagepolicy.v1alpha1.md @@ -29,7 +29,7 @@ auto_generated: true | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
metadata - meta/v1.ObjectMeta
+meta/v1.ObjectMeta
|
Standard object's metadata. diff --git a/content/en/docs/reference/config-api/kube-controller-manager-config.v1alpha1.md b/content/en/docs/reference/config-api/kube-controller-manager-config.v1alpha1.md index 4ec29226a5..1b4b120abd 100644 --- a/content/en/docs/reference/config-api/kube-controller-manager-config.v1alpha1.md +++ b/content/en/docs/reference/config-api/kube-controller-manager-config.v1alpha1.md @@ -1,7 +1,7 @@ --- title: kube-controller-manager Configuration (v1alpha1) content_type: tool-reference -package: controllermanager.config.k8s.io/v1alpha1 +package: cloudcontrollermanager.config.k8s.io/v1alpha1 auto_generated: true --- @@ -9,11 +9,358 @@ auto_generated: true ## Resource Types -- [KubeControllerManagerConfiguration](#kubecontrollermanager-config-k8s-io-v1alpha1-KubeControllerManagerConfiguration) - [CloudControllerManagerConfiguration](#cloudcontrollermanager-config-k8s-io-v1alpha1-CloudControllerManagerConfiguration) +- [LeaderMigrationConfiguration](#controllermanager-config-k8s-io-v1alpha1-LeaderMigrationConfiguration) +- [KubeControllerManagerConfiguration](#kubecontrollermanager-config-k8s-io-v1alpha1-KubeControllerManagerConfiguration) +## `NodeControllerConfiguration` {#NodeControllerConfiguration} + + +**Appears in:** + +- [CloudControllerManagerConfiguration](#cloudcontrollermanager-config-k8s-io-v1alpha1-CloudControllerManagerConfiguration) + + + NodeControllerConfiguration contains elements describing NodeController. + + +
ServiceControllerConfiguration contains elements describing ServiceController. + + +
CloudControllerManagerConfiguration contains elements describing cloud-controller manager. + + +
CloudProviderConfiguration contains basically elements about cloud provider. + + +
KubeCloudSharedConfiguration contains elements shared by both kube-controller manager +and cloud-controller manager, but not genericconfig. + + +
WebhookConfiguration contains configuration related to +cloud-controller-manager hosted webhooks + + +
LeaderMigrationConfiguration provides versioned configuration for all migrating leader locks. + + +
|
LeaderMigrationConfiguration provides versioned configuration for all migrating leader locks.
- - -Field | Description |
---|---|
leaderName [Required]- string
- |
-
- LeaderName is the name of the leader election resource that protects the migration -E.g. 1-20-KCM-to-1-21-CCM - |
-
resourceLock [Required]- string
- |
-
- ResourceLock indicates the resource object type that will be used to lock -Should be "leases" or "endpoints" - |
-
controllerLeaders [Required]- []ControllerLeaderConfiguration
- |
-
- ControllerLeaders contains a list of migrating leader lock configurations - |
-
EnableTaintManager
[Required]bool
-If set to true enables NoExecute Taints and will evict all not-tolerating -Pod running on Nodes tainted with this kind of Taints.
-NodeEvictionRate
[Required]float32
ServiceControllerConfiguration contains elements describing ServiceController.
- - -Field | Description |
---|---|
ConcurrentServiceSyncs [Required]- int32
- |
-
- concurrentServiceSyncs is the number of services that are -allowed to sync concurrently. Larger number = more responsive service -management, but more CPU (and network) load. - |
-
Field | Description |
---|---|
apiVersion string | cloudcontrollermanager.config.k8s.io/v1alpha1 |
kind string | CloudControllerManagerConfiguration |
Generic [Required]- GenericControllerManagerConfiguration
- |
-
- Generic holds configuration for a generic controller-manager - |
-
KubeCloudShared [Required]- KubeCloudSharedConfiguration
- |
-
- KubeCloudSharedConfiguration holds configuration for shared related features -both in cloud controller manager and kube-controller manager. - |
-
ServiceController [Required]- ServiceControllerConfiguration
- |
-
- ServiceControllerConfiguration holds configuration for ServiceController -related features. - |
-
NodeStatusUpdateFrequency [Required]- meta/v1.Duration
- |
-
- NodeStatusUpdateFrequency is the frequency at which the controller updates nodes' status - |
-
CloudProviderConfiguration contains basically elements about cloud provider.
- - -Field | Description |
---|---|
Name [Required]- string
- |
-
- Name is the provider for cloud services. - |
-
CloudConfigFile [Required]- string
- |
-
- cloudConfigFile is the path to the cloud provider configuration file. - |
-
KubeCloudSharedConfiguration contains elements shared by both kube-controller manager -and cloud-controller manager, but not genericconfig.
- - -Field | Description |
---|---|
CloudProvider [Required]- CloudProviderConfiguration
- |
-
- CloudProviderConfiguration holds configuration for CloudProvider related features. - |
-
ExternalCloudVolumePlugin [Required]- string
- |
-
- externalCloudVolumePlugin specifies the plugin to use when cloudProvider is "external". -It is currently used by the in repo cloud providers to handle node and volume control in the KCM. - |
-
UseServiceAccountCredentials [Required]- bool
- |
-
- useServiceAccountCredentials indicates whether controllers should be run with -individual service account credentials. - |
-
AllowUntaggedCloud [Required]- bool
- |
-
- run with untagged cloud instances - |
-
RouteReconciliationPeriod [Required]- meta/v1.Duration
- |
-
- routeReconciliationPeriod is the period for reconciling routes created for Nodes by cloud provider.. - |
-
NodeMonitorPeriod [Required]- meta/v1.Duration
- |
-
- nodeMonitorPeriod is the period for syncing NodeStatus in NodeController. - |
-
ClusterName [Required]- string
- |
-
- clusterName is the instance prefix for the cluster. - |
-
ClusterCIDR [Required]- string
- |
-
- clusterCIDR is CIDR Range for Pods in cluster. - |
-
AllocateNodeCIDRs [Required]- bool
- |
-
- AllocateNodeCIDRs enables CIDRs for Pods to be allocated and, if -ConfigureCloudRoutes is true, to be set on the cloud provider. - |
-
CIDRAllocatorType [Required]- string
- |
-
- CIDRAllocatorType determines what kind of pod CIDR allocator will be used. - |
-
ConfigureCloudRoutes [Required]- bool
- |
-
- configureCloudRoutes enables CIDRs allocated with allocateNodeCIDRs -to be configured on the cloud provider. - |
-
NodeSyncPeriod [Required]- meta/v1.Duration
- |
-
- nodeSyncPeriod is the period for syncing nodes from cloudprovider. Longer -periods will result in fewer calls to cloud provider, but may delay addition -of new nodes to cluster. - |
-
bool
enableContentionProfiling enables lock contention profiling, if +
enableContentionProfiling enables block profiling, if enableProfiling is true.
ignorePreferredTermsOfExistingPods
[Required]bool
+IgnorePreferredTermsOfExistingPods configures the scheduler to ignore existing pods' preferred affinity +rules when scoring candidate nodes, unless the incoming pod has inter-pod affinities.
+addedAffinity
core/v1.NodeAffinity
+core/v1.NodeAffinity
AddedAffinity is applied to all Pods additionally to the NodeAffinity @@ -301,7 +309,7 @@ The default strategy is LeastAllocated with an equal "cpu" and "m
defaultConstraints
[]core/v1.TopologySpreadConstraint
+[]core/v1.TopologySpreadConstraint
DefaultConstraints defines topology spread constraints to be applied to @@ -1176,7 +1184,7 @@ client.
bool
enableContentionProfiling enables lock contention profiling, if +
enableContentionProfiling enables block profiling, if enableProfiling is true.
LeaderElectionConfiguration defines the configuration of leader election clients for components that can run with leader election enabled.
diff --git a/content/en/docs/reference/config-api/kube-scheduler-config.v1beta2.md b/content/en/docs/reference/config-api/kube-scheduler-config.v1beta2.md index edf1071e18..bcd0377d7c 100644 --- a/content/en/docs/reference/config-api/kube-scheduler-config.v1beta2.md +++ b/content/en/docs/reference/config-api/kube-scheduler-config.v1beta2.md @@ -85,6 +85,14 @@ that play a role in the number of candidates shortlisted. Must be at least matching hard affinity to the incoming pod. +ignorePreferredTermsOfExistingPods
[Required]bool
+IgnorePreferredTermsOfExistingPods configures the scheduler to ignore existing pods' preferred affinity +rules when scoring candidate nodes, unless the incoming pod has inter-pod affinities.
+addedAffinity
core/v1.NodeAffinity
+core/v1.NodeAffinity
AddedAffinity is applied to all Pods additionally to the NodeAffinity @@ -317,7 +325,7 @@ The default strategy is LeastAllocated with an equal "cpu" and "m
defaultConstraints
[]core/v1.TopologySpreadConstraint
+[]core/v1.TopologySpreadConstraint
DefaultConstraints defines topology spread constraints to be applied to @@ -1153,7 +1161,7 @@ client.
bool
enableContentionProfiling enables lock contention profiling, if +
enableContentionProfiling enables block profiling, if enableProfiling is true.
ignorePreferredTermsOfExistingPods
[Required]bool
+IgnorePreferredTermsOfExistingPods configures the scheduler to ignore existing pods' preferred affinity +rules when scoring candidate nodes, unless the incoming pod has inter-pod affinities.
+addedAffinity
core/v1.NodeAffinity
+core/v1.NodeAffinity
AddedAffinity is applied to all Pods additionally to the NodeAffinity @@ -301,7 +309,7 @@ The default strategy is LeastAllocated with an equal "cpu" and "m
defaultConstraints
[]core/v1.TopologySpreadConstraint
+[]core/v1.TopologySpreadConstraint
DefaultConstraints defines topology spread constraints to be applied to @@ -1157,7 +1165,7 @@ client.
bool
enableContentionProfiling enables lock contention profiling, if +
enableContentionProfiling enables block profiling, if enableProfiling is true.
Package v1beta2 has been DEPRECATED by v1beta3.
-Package v1beta2 defines the v1beta2 version of the kubeadm configuration file format. -This version improves on the v1beta1 format by fixing some minor issues and adding a few new fields.
-A list of changes since v1beta1:
-See the Kubernetes 1.15 changelog for further details.
-Please convert your v1beta1 configuration files to v1beta2 using the "kubeadm config migrate" command of kubeadm v1.15.x -(conversion from older releases of kubeadm config files requires older release of kubeadm as well e.g.
-Nevertheless, kubeadm v1.15.x will support reading from v1beta1 version of the kubeadm config file format.
-The preferred way to configure kubeadm is to pass an YAML configuration file with the --config
option. Some of the
-configuration options defined in the kubeadm config file are also available as command line flags, but only
-the most common/simple use case are supported with this approach.
A kubeadm config file could contain multiple configuration types separated using three dashes (---
).
kubeadm supports the following configuration types:
-apiVersion: kubeadm.k8s.io/v1beta2 -kind: InitConfiguration - -apiVersion: kubeadm.k8s.io/v1beta2 -kind: ClusterConfiguration - -apiVersion: kubelet.config.k8s.io/v1beta1 -kind: KubeletConfiguration - -apiVersion: kubeproxy.config.k8s.io/v1alpha1 -kind: KubeProxyConfiguration - -apiVersion: kubeadm.k8s.io/v1beta2 -kind: JoinConfiguration -
To print the defaults for "init" and "join" actions use the following commands:
-kubeadm config print init-defaults -kubeadm config print join-defaults -
The list of configuration types that must be included in a configuration file depends by the action you are
-performing (init
or join
) and by the configuration options you are going to use (defaults or advanced customization).
If some configuration types are not provided, or provided only partially, kubeadm will use default values; defaults
-provided by kubeadm includes also enforcing consistency of values across components when required (e.g.
---cluster-cidr
flag on controller manager and clusterCIDR
on kube-proxy).
Users are always allowed to override default values, with the only exception of a small subset of setting with -relevance for security (e.g. enforce authorization-mode Node and RBAC on API server)
-If the user provides a configuration types that is not expected for the action you are performing, kubeadm will -ignore those types and print a warning.
-When executing kubeadm init with the --config
option, the following configuration types could be used:
-InitConfiguration, ClusterConfiguration, KubeProxyConfiguration, KubeletConfiguration, but only one
-between InitConfiguration and ClusterConfiguration is mandatory.
apiVersion: kubeadm.k8s.io/v1beta2 -kind: InitConfiguration -bootstrapTokens: - ... -nodeRegistration: - ... -
The InitConfiguration type should be used to configure runtime settings, that in case of kubeadm init
-are the configuration of the bootstrap token and all the setting which are specific to the node where kubeadm
-is executed, including:
nodeRegistration
, that holds fields that relate to registering the new node to the cluster;
-use it to customize the node name, the CRI socket to use or any other settings that should apply to this
-node only (e.g. the node ip).
localAPIEndpoint
, that represents the endpoint of the instance of the API server to be deployed on this node;
-use it e.g. to customize the API server advertise address.
apiVersion: kubeadm.k8s.io/v1beta2 -kind: ClusterConfiguration -networking: - ... -etcd: - ... -apiServer: - extraArgs: - ... - extraVolumes: - ... -... -
The ClusterConfiguration type should be used to configure cluster-wide settings, -including settings for:
-Networking, that holds configuration for the networking topology of the cluster; use it e.g. to customize -pod subnet or services subnet.
-Etcd configurations; use it e.g. to customize the local etcd or to configure the API server -for using an external etcd cluster.
-kube-apiserver, kube-scheduler, kube-controller-manager configurations; use it to customize control-plane -components by adding customized setting or overriding kubeadm default settings.
-apiVersion: kubeproxy.config.k8s.io/v1alpha1 -kind: KubeProxyConfiguration - ... -
The KubeProxyConfiguration type should be used to change the configuration passed to kube-proxy instances deployed -in the cluster. If this object is not provided or provided only partially, kubeadm applies defaults.
-See https://kubernetes.io/docs/reference/command-line-tools-reference/kube-proxy/ or -https://pkg.go.dev/k8s.io/kube-proxy/config/v1alpha1#KubeProxyConfiguration -for kube proxy official documentation.
-apiVersion: kubelet.config.k8s.io/v1beta1 -kind: KubeletConfiguration - ... -
The KubeletConfiguration type should be used to change the configurations that will be passed to all kubelet instances -deployed in the cluster. If this object is not provided or provided only partially, kubeadm applies defaults.
-See https://kubernetes.io/docs/reference/command-line-tools-reference/kubelet/ or -https://pkg.go.dev/k8s.io/kubelet/config/v1beta1#KubeletConfiguration -for kubelet official documentation.
-Here is a fully populated example of a single YAML file containing multiple
-configuration types to be used during a kubeadm init
run.
apiVersion: kubeadm.k8s.io/v1beta2 -kind: InitConfiguration -bootstrapTokens: - - token: "9a08jv.c0izixklcxtmnze7" - description: "kubeadm bootstrap token" - ttl: "24h" - - token: "783bde.3f89s0fje9f38fhf" - description: "another bootstrap token" - usages: - - authentication - - signing - groups: - - system:bootstrappers:kubeadm:default-node-token -nodeRegistration: - name: "ec2-10-100-0-1" - criSocket: "/var/run/dockershim.sock" - taints: - - key: "kubeadmNode" - value: "someValue" - effect: "NoSchedule" - kubeletExtraArgs: - v: 4 - ignorePreflightErrors: - - IsPrivilegedUser -localAPIEndpoint: - advertiseAddress: "10.100.0.1" - bindPort: 6443 -certificateKey: "e6a2eb8581237ab72a4f494f30285ec12a9694d750b9785706a83bfcbbbd2204" ---- -apiVersion: kubeadm.k8s.io/v1beta2 -kind: ClusterConfiguration -etcd: - # one of local or external - local: - imageRepository: "registry.k8s.io" - imageTag: "3.2.24" - dataDir: "/var/lib/etcd" - extraArgs: - listen-client-urls: "http://10.100.0.1:2379" - serverCertSANs: - - "ec2-10-100-0-1.compute-1.amazonaws.com" - peerCertSANs: - - "10.100.0.1" - # external: - # endpoints: - # - "10.100.0.1:2379" - # - "10.100.0.2:2379" - # caFile: "/etcd/kubernetes/pki/etcd/etcd-ca.crt" - # certFile: "/etcd/kubernetes/pki/etcd/etcd.crt" - # keyFile: "/etcd/kubernetes/pki/etcd/etcd.key" -networking: - serviceSubnet: "10.96.0.0/16" - podSubnet: "10.244.0.0/24" - dnsDomain: "cluster.local" -kubernetesVersion: "v1.12.0" -controlPlaneEndpoint: "10.100.0.1:6443" -apiServer: - extraArgs: - authorization-mode: "Node,RBAC" - extraVolumes: - - name: "some-volume" - hostPath: "/etc/some-path" - mountPath: "/etc/some-pod-path" - readOnly: false - pathType: File - certSANs: - - "10.100.1.1" - - "ec2-10-100-0-1.compute-1.amazonaws.com" - timeoutForControlPlane: 4m0s -controllerManager: - extraArgs: - "node-cidr-mask-size": "20" - extraVolumes: - - name: "some-volume" - hostPath: "/etc/some-path" - mountPath: "/etc/some-pod-path" - readOnly: false - pathType: File -scheduler: - extraArgs: - address: "10.100.0.1" - extraVolumes: - - name: "some-volume" - hostPath: "/etc/some-path" - mountPath: "/etc/some-pod-path" - readOnly: false - pathType: File -certificatesDir: "/etc/kubernetes/pki" -imageRepository: "registry.k8s.io" -useHyperKubeImage: false -clusterName: "example-cluster" ---- -apiVersion: kubelet.config.k8s.io/v1beta1 -kind: KubeletConfiguration -# kubelet specific options here ---- -apiVersion: kubeproxy.config.k8s.io/v1alpha1 -kind: KubeProxyConfiguration -# kube-proxy specific options here -
When executing kubeadm join with the --config
option, the JoinConfiguration type should be provided.
apiVersion: kubeadm.k8s.io/v1beta2 -kind: JoinConfiguration - ... -
The JoinConfiguration type should be used to configure runtime settings, that in case of kubeadm join
-are the discovery method used for accessing the cluster info and all the setting which are specific
-to the node where kubeadm is executed, including:
nodeRegistration
, that holds fields that relate to registering the new node to the cluster;
-use it to customize the node name, the CRI socket to use or any other settings that should apply to this
-node only (e.g. the node IP).
apiEndpoint
, that represents the endpoint of the instance of the API server to be eventually deployed on this node.
ClusterConfiguration contains cluster-wide configuration for a kubeadm cluster
- - -Field | Description |
---|---|
apiVersion string | kubeadm.k8s.io/v1beta2 |
kind string | ClusterConfiguration |
etcd [Required]- Etcd
- |
-
-
|
-
networking [Required]- Networking
- |
-
-
|
-
kubernetesVersion [Required]- string
- |
-
-
|
-
controlPlaneEndpoint [Required]- string
- |
-
-
|
-
apiServer [Required]- APIServer
- |
-
-
|
-
controllerManager [Required]- ControlPlaneComponent
- |
-
-
|
-
scheduler [Required]- ControlPlaneComponent
- |
-
-
|
-
dns [Required]- DNS
- |
-
-
|
-
certificatesDir [Required]- string
- |
-
-
|
-
imageRepository [Required]- string
- |
-
-
|
-
useHyperKubeImage [Required]- bool
- |
-
-
|
-
featureGates [Required]- map[string]bool
- |
-
-
|
-
clusterName [Required]- string
- |
-
- The cluster name. - |
-
ClusterStatus contains the cluster status. The ClusterStatus will be stored in -the kubeadm-config ConfigMap in the cluster, and then updated by kubeadm when -additional control plane instance joins or leaves the cluster.
- - -Field | Description |
---|---|
apiVersion string | kubeadm.k8s.io/v1beta2 |
kind string | ClusterStatus |
apiEndpoints [Required]- map[string]github.com/tengqm/kubeconfig/config/kubeadm/v1beta2.APIEndpoint
- |
-
-
|
-
InitConfiguration contains a list of elements that is specific "kubeadm init"-only runtime -information.
- - -Field | Description |
---|---|
apiVersion string | kubeadm.k8s.io/v1beta2 |
kind string | InitConfiguration |
bootstrapTokens [Required]- []BootstrapToken
- |
-
-
|
-
nodeRegistration [Required]- NodeRegistrationOptions
- |
-
-
|
-
localAPIEndpoint [Required]- APIEndpoint
- |
-
-
|
-
certificateKey [Required]- string
- |
-
-
|
-
JoinConfiguration contains elements describing a particular node.
- - -Field | Description |
---|---|
apiVersion string | kubeadm.k8s.io/v1beta2 |
kind string | JoinConfiguration |
nodeRegistration [Required]- NodeRegistrationOptions
- |
-
-
|
-
caCertPath [Required]- string
- |
-
-
|
-
discovery [Required]- Discovery
- |
-
-
|
-
controlPlane [Required]- JoinControlPlane
- |
-
-
|
-
APIEndpoint struct contains elements of API server instance deployed on a node.
- - -Field | Description |
---|---|
advertiseAddress [Required]- string
- |
-
-
|
-
bindPort [Required]- int32
- |
-
-
|
-
APIServer holds settings necessary for API server deployments in the cluster.
- - -Field | Description |
---|---|
ControlPlaneComponent [Required]- ControlPlaneComponent
- |
-(Members of ControlPlaneComponent are embedded into this type.)
- No description provided. |
-
certSANs [Required]- []string
- |
-
-
|
-
timeoutForControlPlane [Required]- meta/v1.Duration
- |
-
-
|
-
BootstrapToken describes one bootstrap token, stored as a Secret in the cluster
- - -Field | Description |
---|---|
token [Required]- BootstrapTokenString
- |
-
-
|
-
description [Required]- string
- |
-
-
|
-
ttl [Required]- meta/v1.Duration
- |
-
-
|
-
expires [Required]- meta/v1.Time
- |
-
-
|
-
usages [Required]- []string
- |
-
-
|
-
groups [Required]- []string
- |
-
-
|
-
BootstrapTokenDiscovery is used to set the options for bootstrap token based discovery
- - -Field | Description |
---|---|
token [Required]- string
- |
-
-
|
-
apiServerEndpoint [Required]- string
- |
-
-
|
-
caCertHashes [Required]- []string
- |
-
-
|
-
unsafeSkipCAVerification [Required]- bool
- |
-
-
|
-
BootstrapTokenString is a token of the format abcdef.abcdef0123456789 that is used -for both validation of the practically of the API server from a joining node's point -of view and as an authentication method for the node in the bootstrap phase of -"kubeadm join". This token is and should be short-lived
- - -Field | Description |
---|---|
- [Required]- string
- |
-- No description provided. | -
- [Required]- string
- |
-- No description provided. | -
ControlPlaneComponent holds settings common to control plane component of the cluster
- - -Field | Description |
---|---|
extraArgs [Required]- map[string]string
- |
-
-
|
-
extraVolumes [Required]- []HostPathMount
- |
-
-
|
-
DNS defines the DNS addon that should be used in the cluster
- - -Field | Description |
---|---|
type [Required]- DNSAddOnType
- |
-
-
|
-
ImageMeta [Required]- ImageMeta
- |
-(Members of ImageMeta are embedded into this type.)
- ImageMeta allows to customize the image used for the DNS component - |
-
DNSAddOnType defines string identifying DNS add-on types.
- - - - -## `Discovery` {#kubeadm-k8s-io-v1beta2-Discovery} - - -**Appears in:** - -- [JoinConfiguration](#kubeadm-k8s-io-v1beta2-JoinConfiguration) - - -Discovery specifies the options for the kubelet to use during the TLS Bootstrap process
- - -Field | Description |
---|---|
bootstrapToken [Required]- BootstrapTokenDiscovery
- |
-
-
|
-
file [Required]- FileDiscovery
- |
-
-
|
-
tlsBootstrapToken [Required]- string
- |
-
-
|
-
timeout [Required]- meta/v1.Duration
- |
-
-
|
-
Etcd contains elements describing Etcd configuration.
- - -Field | Description |
---|---|
local [Required]- LocalEtcd
- |
-
-
|
-
external [Required]- ExternalEtcd
- |
-
-
|
-
ExternalEtcd describes an external etcd cluster. -Kubeadm has no knowledge of where certificate files live and they must be supplied.
- - -Field | Description |
---|---|
endpoints [Required]- []string
- |
-
-
|
-
caFile [Required]- string
- |
-
-
|
-
certFile [Required]- string
- |
-
-
|
-
keyFile [Required]- string
- |
-
-
|
-
FileDiscovery is used to specify a file or URL to a kubeconfig file from which to load cluster information
- - -Field | Description |
---|---|
kubeConfigPath [Required]- string
- |
-
-
|
-
HostPathMount contains elements describing volumes that are mounted from the host.
- - -Field | Description |
---|---|
name [Required]- string
- |
-
-
|
-
hostPath [Required]- string
- |
-
-
|
-
mountPath [Required]- string
- |
-
-
|
-
readOnly [Required]- bool
- |
-
-
|
-
pathType [Required]- core/v1.HostPathType
- |
-
-
|
-
ImageMeta allows to customize the image used for components that are not -originated from the Kubernetes/Kubernetes release process
- - -Field | Description |
---|---|
imageRepository [Required]- string
- |
-
-
|
-
imageTag [Required]- string
- |
-
-
|
-
JoinControlPlane contains elements describing an additional control plane instance -to be deployed on the joining node.
- - -Field | Description |
---|---|
localAPIEndpoint [Required]- APIEndpoint
- |
-
-
|
-
certificateKey [Required]- string
- |
-
-
|
-
LocalEtcd describes that kubeadm should run an etcd cluster locally.
- - -Field | Description |
---|---|
ImageMeta [Required]- ImageMeta
- |
-(Members of ImageMeta are embedded into this type.)
- ImageMeta allows to customize the container used for etcd. - |
-
dataDir [Required]- string
- |
-
-
|
-
extraArgs [Required]- map[string]string
- |
-
-
|
-
serverCertSANs [Required]- []string
- |
-
-
|
-
peerCertSANs [Required]- []string
- |
-
-
|
-
Networking contains elements describing cluster's networking configuration
- - -Field | Description |
---|---|
serviceSubnet [Required]- string
- |
-
-
|
-
podSubnet [Required]- string
- |
-
-
|
-
dnsDomain [Required]- string
- |
-
-
|
-
NodeRegistrationOptions holds fields that relate to registering a new control-plane -or node to the cluster, either via "kubeadm init" or "kubeadm join".
- - -Field | Description |
---|---|
name [Required]- string
- |
-
-
|
-
criSocket [Required]- string
- |
-
-
|
-
taints [Required]- []core/v1.Taint
- |
-
-
|
-
kubeletExtraArgs [Required]- map[string]string
- |
-
-
|
-
ignorePreflightErrors [Required]- []string
- |
-
-
|
-
The preferred way to configure kubeadm is to pass an YAML configuration file with the --config
option. Some of the
@@ -264,109 +265,6 @@ node only (e.g. the node ip).
BootstrapToken describes one bootstrap token, stored as a Secret in the cluster
- - -Field | Description |
---|---|
token [Required]- BootstrapTokenString
- |
-
-
|
-
description - string
- |
-
-
|
-
ttl - meta/v1.Duration
- |
-
-
|
-
expires - meta/v1.Time
- |
-
-
|
-
usages - []string
- |
-
-
|
-
groups - []string
- |
-
-
|
-
BootstrapTokenString is a token of the format abcdef.abcdef0123456789
that is used
-for both validation of the practically of the API server from a joining node's point
-of view and as an authentication method for the node in the bootstrap phase of
-"kubeadm join". This token is and should be short-lived.
Field | Description |
---|---|
- [Required]- string
- |
-- No description provided. | -
- [Required]- string
- |
-- No description provided. | -
pathType
core/v1.HostPathType
+core/v1.HostPathType
pathType
is the type of the hostPath
.
taints
[Required][]core/v1.Taint
+[]core/v1.Taint
taints
specifies the taints the Node API object should be registered with.
@@ -1290,7 +1188,7 @@ the current node is registered.
imagePullPolicy
core/v1.PullPolicy
+core/v1.PullPolicy
imagePullPolicy
specifies the policy for image pulling during kubeadm "init" and
@@ -1338,4 +1236,107 @@ first alpha-numerically.
BootstrapToken describes one bootstrap token, stored as a Secret in the cluster
+ + +Field | Description |
---|---|
token [Required]+ BootstrapTokenString
+ |
+
+
|
+
description + string
+ |
+
+
|
+
ttl + meta/v1.Duration
+ |
+
+
|
+
expires + meta/v1.Time
+ |
+
+
|
+
usages + []string
+ |
+
+
|
+
groups + []string
+ |
+
+
|
+
BootstrapTokenString is a token of the format abcdef.abcdef0123456789
that is used
+for both validation of the practically of the API server from a joining node's point
+of view and as an authentication method for the node in the bootstrap phase of
+"kubeadm join". This token is and should be short-lived.
Field | Description |
---|---|
- [Required]+ string
+ |
++ No description provided. | +
- [Required]+ string
+ |
++ No description provided. | +
FormatOptions contains options for the different logging formats.
- - -Field | Description |
---|---|
json [Required]- JSONOptions
- |
-
- [Alpha] JSON contains options for logging format "json". -Only available when the LoggingAlphaOptions feature gate is enabled. - |
-
JSONOptions contains options for logging format "json".
- - -Field | Description |
---|---|
splitStream [Required]- bool
- |
-
- [Alpha] SplitStream redirects error messages to stderr while -info messages go to stdout, with buffering. The default is to write -both to stdout, without buffering. Only available when -the LoggingAlphaOptions feature gate is enabled. - |
-
infoBufferSize [Required]- k8s.io/apimachinery/pkg/api/resource.QuantityValue
- |
-
- [Alpha] InfoBufferSize sets the size of the info stream when -using split streams. The default is zero, which disables buffering. -Only available when the LoggingAlphaOptions feature gate is enabled. - |
-
LogFormatFactory provides support for a certain additional, -non-default log format.
- - - - -## `LoggingConfiguration` {#LoggingConfiguration} - - -**Appears in:** - -- [KubeletConfiguration](#kubelet-config-k8s-io-v1beta1-KubeletConfiguration) - - -LoggingConfiguration contains logging options.
- - -Field | Description |
---|---|
format [Required]- string
- |
-
- Format Flag specifies the structure of log messages.
-default value of format is |
-
flushFrequency [Required]- time.Duration
- |
-
- Maximum number of nanoseconds (i.e. 1s = 1000000000) between log -flushes. Ignored if the selected logging backend writes log -messages without buffering. - |
-
verbosity [Required]- VerbosityLevel
- |
-
- Verbosity is the threshold that determines which log messages are -logged. Default is zero which logs only the most important -messages. Higher values enable additional messages. Error messages -are always logged. - |
-
vmodule [Required]- VModuleConfiguration
- |
-
- VModule overrides the verbosity threshold for individual files. -Only supported for "text" log format. - |
-
options [Required]- FormatOptions
- |
-
- [Alpha] Options holds additional parameters that are specific -to the different logging formats. Only the options for the selected -format get used, but all of them get validated. -Only available when the LoggingAlphaOptions feature gate is enabled. - |
-
TracingConfiguration provides versioned configuration for OpenTelemetry tracing clients.
- - -Field | Description |
---|---|
endpoint - string
- |
-
- Endpoint of the collector this component will report traces to. -The connection is insecure, and does not currently support TLS. -Recommended is unset, and endpoint is the otlp grpc default, localhost:4317. - |
-
samplingRatePerMillion - int32
- |
-
- SamplingRatePerMillion is the number of samples to collect per million spans. -Recommended is unset. If unset, sampler respects its parent span's sampling -rate, but otherwise never samples. - |
-
VModuleConfiguration is a collection of individual file names or patterns -and the corresponding verbosity threshold.
- - - - -## `VerbosityLevel` {#VerbosityLevel} - -(Alias of `uint32`) - -**Appears in:** - -- [LoggingConfiguration](#LoggingConfiguration) - - - -VerbosityLevel represents a klog or logr verbosity threshold.
- - + \ No newline at end of file diff --git a/content/en/docs/reference/config-api/kubelet-config.v1alpha1.md b/content/en/docs/reference/config-api/kubelet-config.v1alpha1.md index 079c36a932..6082c2f7ec 100644 --- a/content/en/docs/reference/config-api/kubelet-config.v1alpha1.md +++ b/content/en/docs/reference/config-api/kubelet-config.v1alpha1.md @@ -169,6 +169,4 @@ credential plugin. - - - \ No newline at end of file + \ No newline at end of file diff --git a/content/en/docs/reference/config-api/kubelet-config.v1beta1.md b/content/en/docs/reference/config-api/kubelet-config.v1beta1.md index a11c179a58..b40fb3f5e9 100644 --- a/content/en/docs/reference/config-api/kubelet-config.v1beta1.md +++ b/content/en/docs/reference/config-api/kubelet-config.v1beta1.md @@ -262,7 +262,7 @@ Default: 10eventRecordQPS is the maximum event creations per second. If 0, there is no limit enforced. The value cannot be a negative number. -Default: 5
+Default: 50eventBurst
enableDebuggingHandlers
bool
enableContentionProfiling enables lock contention profiling, if enableDebuggingHandlers is true. +
enableContentionProfiling enables block profiling, if enableDebuggingHandlers is true. Default: false
single-numa-node
: kubelet only allows pods with a single NUMA alignment
of CPU and device resources.Policies other than "none" require the TopologyManager feature gate to be enabled. -Default: "none"
+Default: "none"
topologyManagerScope
container
: topology policy is applied on a per-container basis.pod
: topology policy is applied on a per-pod basis."pod" scope requires the TopologyManager feature gate to be enabled. -Default: "container"
+Default: "container"
topologyManagerPolicyOptions
kubeAPIQPS is the QPS to use while talking with kubernetes apiserver. -Default: 5
+Default: 50kubeAPIBurst
kubeAPIBurst is the burst to allow while talking with kubernetes API server. This field cannot be a negative number. -Default: 10
+Default: 100serializeImagePulls
maxParallelImagePulls
int32
+MaxParallelImagePulls sets the maximum number of image pulls in parallel. +This field cannot be set if SerializeImagePulls is true. +Setting it to nil means no limit. +Default: nil
+evictionHard
map[string]string
systemReservedCgroup helps the kubelet identify absolute name of top level CGroup used
to enforce systemReserved
compute resource reservation for OS system daemons.
-Refer to Node Allocatable
+Refer to Node Allocatable
doc for more information.
Default: ""
kubeReservedCgroup helps the kubelet identify absolute name of top level CGroup used
to enforce KubeReserved
compute resource reservation for Kubernetes node system daemons.
-Refer to Node Allocatable
+Refer to Node Allocatable
doc for more information.
Default: ""
none
is specified, no other options may be specified.
When system-reserved
is in the list, systemReservedCgroup must be specified.
When kube-reserved
is in the list, kubeReservedCgroup must be specified.
This field is supported only when cgroupsPerQOS
is set to true.
-Refer to Node Allocatable
+Refer to Node Allocatable
for more information.
Default: ["pods"]
@@ -1042,6 +1050,15 @@ Format: text
Default: true
enableSystemLogQuery
bool
+enableSystemLogQuery enables the node log query feature on the /logs endpoint. +EnableSystemLogHandler has to be enabled in addition for this feature to work. +Default: false
+shutdownGracePeriod
meta/v1.Duration
SeccompDefault enables the use of RuntimeDefault
as the default seccomp profile for all workloads.
-This requires the corresponding SeccompDefault feature gate to be enabled as well.
Default: false
registerWithTaints
[]core/v1.Taint
+[]core/v1.Taint
registerWithTaints are an array of taints to add to a node object when @@ -1182,7 +1198,8 @@ Default: true
Tracing specifies the versioned configuration for OpenTelemetry tracing clients. -See https://kep.k8s.io/2832 for more details.
+See https://kep.k8s.io/2832 for more details. +Default: nillocalStorageCapacityIsolation
containerRuntimeEndpoint
[Required]string
+ContainerRuntimeEndpoint is the endpoint of container runtime. +Unix Domain Sockets are supported on Linux, while npipe and tcp endpoints are supported on Windows. +Examples:'unix:///path/to/runtime.sock', 'npipe:////./pipe/runtime'
+imageServiceEndpoint
string
+ImageServiceEndpoint is the endpoint of container image service. +Unix Domain Socket are supported on Linux, while npipe and tcp endpoints are supported on Windows. +Examples:'unix:///path/to/runtime.sock', 'npipe:////./pipe/runtime'. +If not specified, the value in containerRuntimeEndpoint is used.
+source
core/v1.NodeConfigSource
+core/v1.NodeConfigSource
source is the source that we are serializing.
@@ -1581,7 +1617,7 @@ and groups corresponding to the Organization in the client certificate. No description provided.limits
[Required]core/v1.ResourceList
+core/v1.ResourceList