--- title: 使用 kubeadm 定制控制平面配置 content_template: templates/concept weight: 40 --- {{% capture overview %}} kubeadm 配置公开了以下字段,这些字段可以覆盖传递给控制平面组件(如 APIServer、ControllerManager 和 Scheduler)的默认参数: - `APIServerExtraArgs` - `ControllerManagerExtraArgs` - `SchedulerExtraArgs` 这些字段由 `key: value` 对组成。 要覆盖控制平面组件的参数: 1. 将适当的字段添加到配置中。 2. 向字段添加要覆盖的参数值。 有关配置中的每个字段的详细信息,您可以导航到我们的 [API 参考页面](https://godoc.org/k8s.io/kubernetes/cmd/kubeadm/app/apis/kubeadm#ClusterConfiguration)。 {{% /capture %}} {{% capture body %}} ## APIServer 参数 有关详细信息,请参阅 [kube-apiserver 参考文档](/docs/reference/command-line-tools-reference/kube-apiserver/)。 使用示例: ```yaml apiVersion: kubeadm.k8s.io/v1alpha3 kind: ClusterConfiguration kubernetesVersion: v1.12.0 metadata: name: 1.12-sample apiServerExtraArgs: advertise-address: 192.168.0.103 anonymous-auth: false enable-admission-plugins: AlwaysPullImages,DefaultStorageClass audit-log-path: /home/johndoe/audit.log ``` ## ControllerManager 参数 有关详细信息,请参阅 [kube-controller-manager 参考文档](/docs/reference/command-line-tools-reference/kube-controller-manager/)。 使用示例: ```yaml apiVersion: kubeadm.k8s.io/v1alpha3 kind: ClusterConfiguration kubernetesVersion: v1.12.0 metadata: name: 1.12-sample controllerManagerExtraArgs: cluster-signing-key-file: /home/johndoe/keys/ca.key bind-address: 0.0.0.0 deployment-controller-sync-period: 50 ``` ## Scheduler 参数 有关详细信息,请参阅 [kube-scheduler 参考文档](/docs/reference/command-line-tools-reference/kube-scheduler/)。 使用示例: ```yaml apiVersion: kubeadm.k8s.io/v1alpha3 kind: ClusterConfiguration kubernetesVersion: v1.12.0 metadata: name: 1.12-sample schedulerExtraArgs: address: 0.0.0.0 config: /home/johndoe/schedconfig.yaml kubeconfig: /home/johndoe/kubeconfig.yaml ``` {{% /capture %}}