Kubernetes 无法运行kubeadm init
关于。如何成功配置和启动最新的kubeadm kubeadm_new.config是通过配置迁移生成的:Kubernetes 无法运行kubeadm init,kubernetes,kubeadm,Kubernetes,Kubeadm,关于。如何成功配置和启动最新的kubeadm kubeadm_new.config是通过配置迁移生成的: kubeadm config migrate——旧配置kubeadm_default.config——新配置kubeadm_new.config。kubeadm_new.config的内容: apiEndpoint: advertiseAddress: 1.2.3.4 bindPort: 6443 apiVersion: kubeadm.k8s.io/v1alpha3 bootstr
kubeadm config migrate——旧配置kubeadm_default.config——新配置kubeadm_new.config
。kubeadm_new.config的内容:
apiEndpoint:
advertiseAddress: 1.2.3.4
bindPort: 6443
apiVersion: kubeadm.k8s.io/v1alpha3
bootstrapTokens:
- groups:
- system:bootstrappers:kubeadm:default-node-token
token: abcdef.0123456789abcdef
ttl: 24h0m0s
usages:
- signing
- authentication
kind: InitConfiguration
nodeRegistration:
criSocket: /var/run/dockershim.sock
name: khteh-t580
taints:
- effect: NoSchedule
key: node-role.kubernetes.io/master
---
apiVersion: kubeadm.k8s.io/v1alpha3
auditPolicy:
logDir: /var/log/kubernetes/audit
logMaxAge: 2
path: ""
certificatesDir: /etc/kubernetes/pki
clusterName: kubernetes
controlPlaneEndpoint: ""
etcd:
local:
dataDir: /var/lib/etcd
image: ""
imageRepository: k8s.gcr.io
kind: ClusterConfiguration
kubernetesVersion: v1.12.2
networking:
dnsDomain: cluster.local
podSubnet: ""
serviceSubnet: 10.96.0.0/12
unifiedControlPlaneImage: ""
我在kubeadm_new.config中更改了“kubernetesVersion:v1.12.2”,它似乎进展得更快,现在出现以下错误:
无法运行Kubelet:不支持在交换打开的情况下运行,请禁用交换!或将--swap-on失败标志设置为false。
如何将fail swap on设置为FALSE以使其运行?Kubeadm附带一个命令,用于打印默认配置,因此您可以使用以下命令检查每个指定的默认值:
kubeadm配置打印默认值
在您的情况下,如果要在kubelet中禁用交换检查,必须将以下行添加到当前的kubeadm配置中:
---
apiVersion: kubelet.config.k8s.io/v1beta1
kind: KubeletConfiguration
failSwapOn: false
Kubeadm附带一个命令,用于打印默认配置,因此您可以使用以下命令检查每个指定的默认值:
kubeadm配置打印默认值
在您的情况下,如果要在kubelet中禁用交换检查,必须将以下行添加到当前的kubeadm配置中:
---
apiVersion: kubelet.config.k8s.io/v1beta1
kind: KubeletConfiguration
failSwapOn: false
您还没有提到为什么选择禁用交换
我不认为它是第一个选项——不是因为内存交换是一个坏的实践(它是一个有用的和基本的内核机制),而是因为Kubelet似乎没有被设计成在启用Switter的时候正常工作。 K8S对这一主题非常清楚,如您所见:
交换已禁用。必须禁用交换才能使kubelet工作 对 我建议阅读K8S提供的有关POD内存优先级的功能: 1)-确保您的高优先级工作负载使用保证
(或至少Burstable
)类运行
2)。您没有提到为什么选择禁用交换
我不认为它是第一个选项——不是因为内存交换是一个坏的实践(它是一个有用的和基本的内核机制),而是因为Kubelet似乎没有被设计成在启用Switter的时候正常工作。 K8S对这一主题非常清楚,如您所见:
交换已禁用。必须禁用交换才能使kubelet工作 对 我建议阅读K8S提供的有关POD内存优先级的功能: 1)-确保您的高优先级工作负载使用保证
(或至少Burstable
)类运行
2.kubeadm_new.config中有什么?kubeadm_new.config中有什么?