Kubespray ansible extra args for pods 规范未部署在目标 k8s 集群上

问题描述

根据此 documentation,可以使用以下变量指定 API 服务器、控制器和调度程序组件的额外标志,以将插入到配置参数的键值对字典的形式kubeadm YAML 配置文件:

  • kube_kubeadm_apiserver_extra_args
  • kube_kubeadm_controller_extra_args
  • kube_kubeadm_scheduler_extra_args

但我真的不知道将它们添加到 ansible playbook 的何处,以便在集群部署期间可以在主节点上呈现它们。

我尝试使用这个文件 kubespray/roles/kubernetes/master/defaults/main/main.yml 和这个文件 kubespray/roles/kubespray-defaults/defaults/main.yaml 但这两个文件都不起作用,ansible 不部署它们,就像 ansible 不读取它们一样。

kubeadm YAML 配置文件位于何处?

这里有人可以帮忙管理这些参数吗?

解决方法

https://kubespray.io/#/docs/ansible?id=group-vars-and-overriding-variables-precedence 所述,您应该查看 inventory/<mycluster>/group_vars/all/all.ymlinventory/<mycluster>/group_vars/k8s-cluster/k8s-cluster.yml 以了解集群的配置。

其中 inventory/<mycluster> 是提供 inventory/sample folder 的 kubespray 的副本,其中包含对 inventory.ini 文件和 group_vars 中的文件的改编。

Kubespray 使用 https://docs.ansible.com/ansible/latest/user_guide/sample_setup.html#alternative-directory-layout

中建议的库存布局

无论您的布局如何,要加载 group_vars,都必须与 --inventory-file/--inventory/-i 选项或 defaults.inventory 配置引用的文件位于同一文件夹中。

例如,如果您的库存是文件 config/inventory,则您需要复制 config/group_vars 中的示例库存 group_vars。

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...