调用 kubeadm init 时 kubeadm 初始化失败
kubeadm fails to initialize when kubeadm init is called
我是 kubernetes 的新手,正在尝试配置 kubernetes 主节点,我已经安装了 kubeadm、kubectl 和 kubelet
https://kubernetes.io/docs/setup/independent/create-cluster-kubeadm/
但是当我尝试通过键入 kubeadm init
来启动 kubeadm 时,它给了我以下错误
[init] Using Kubernetes version: v1.14.0
[preflight] Running pre-flight checks
[WARNING Firewalld]: no supported init system detected, skipping checking for services
[WARNING Service-Docker]: no supported init system detected, skipping checking for services
[WARNING IsDockerSystemdCheck]: detected "cgroupfs" as the Docker cgroup driver. The recommended driver is "systemd". Please follow the guide at https://kubernetes.io/docs/setup/cri/
[WARNING Service-Kubelet]: no supported init system detected, skipping checking for services
error execution phase preflight: [preflight] Some fatal errors occurred:
[ERROR FileAvailable--etc-kubernetes-manifests-kube-apiserver.yaml]: /etc/kubernetes/manifests/kube-apiserver.yaml already exists
[ERROR FileAvailable--etc-kubernetes-manifests-kube-controller-manager.yaml]: /etc/kubernetes/manifests/kube-controller-manager.yaml already exists
[ERROR FileAvailable--etc-kubernetes-manifests-kube-scheduler.yaml]: /etc/kubernetes/manifests/kube-scheduler.yaml already exists
[ERROR FileAvailable--etc-kubernetes-manifests-etcd.yaml]: /etc/kubernetes/manifests/etcd.yaml already exists
[ERROR FileContent--proc-sys-net-ipv4-ip_forward]: /proc/sys/net/ipv4/ip_forward contents are not set to 1
[preflight] If you know what you are doing, you can make a check non-fatal with `--ignore-preflight-errors=...`
您的系统中似乎存在过时数据。要删除该数据 (/etc/kubernetes) 目录 运行:
kubeadm reset
现在您需要通过以下命令将 ip_forward 内容设置为 1:
echo 1 > /proc/sys/net/ipv4/ip_forward
这应该可以解决您的问题。
安装 kubernetes 需要 br_netfilter 模块。启用该内核模块,使通过网桥的数据包通过iptables进行过滤和端口转发处理,跨集群的kubernetespods可以相互通信。
运行 下面的命令启用 br_netfilter 内核模块。
#modprobe br_netfilter
#echo '1' > /proc/sys/net/bridge/bridge-nf-call-iptables
或
#纳米/proc/sys/net/ipv4/ip_forward
你应该看到 0
删0写1
我是 kubernetes 的新手,正在尝试配置 kubernetes 主节点,我已经安装了 kubeadm、kubectl 和 kubelet
https://kubernetes.io/docs/setup/independent/create-cluster-kubeadm/
但是当我尝试通过键入 kubeadm init
来启动 kubeadm 时,它给了我以下错误
[init] Using Kubernetes version: v1.14.0
[preflight] Running pre-flight checks
[WARNING Firewalld]: no supported init system detected, skipping checking for services
[WARNING Service-Docker]: no supported init system detected, skipping checking for services
[WARNING IsDockerSystemdCheck]: detected "cgroupfs" as the Docker cgroup driver. The recommended driver is "systemd". Please follow the guide at https://kubernetes.io/docs/setup/cri/
[WARNING Service-Kubelet]: no supported init system detected, skipping checking for services
error execution phase preflight: [preflight] Some fatal errors occurred:
[ERROR FileAvailable--etc-kubernetes-manifests-kube-apiserver.yaml]: /etc/kubernetes/manifests/kube-apiserver.yaml already exists
[ERROR FileAvailable--etc-kubernetes-manifests-kube-controller-manager.yaml]: /etc/kubernetes/manifests/kube-controller-manager.yaml already exists
[ERROR FileAvailable--etc-kubernetes-manifests-kube-scheduler.yaml]: /etc/kubernetes/manifests/kube-scheduler.yaml already exists
[ERROR FileAvailable--etc-kubernetes-manifests-etcd.yaml]: /etc/kubernetes/manifests/etcd.yaml already exists
[ERROR FileContent--proc-sys-net-ipv4-ip_forward]: /proc/sys/net/ipv4/ip_forward contents are not set to 1
[preflight] If you know what you are doing, you can make a check non-fatal with `--ignore-preflight-errors=...`
您的系统中似乎存在过时数据。要删除该数据 (/etc/kubernetes) 目录 运行:
kubeadm reset
现在您需要通过以下命令将 ip_forward 内容设置为 1:
echo 1 > /proc/sys/net/ipv4/ip_forward
这应该可以解决您的问题。
安装 kubernetes 需要 br_netfilter 模块。启用该内核模块,使通过网桥的数据包通过iptables进行过滤和端口转发处理,跨集群的kubernetespods可以相互通信。
运行 下面的命令启用 br_netfilter 内核模块。
#modprobe br_netfilter
#echo '1' > /proc/sys/net/bridge/bridge-nf-call-iptables
或
#纳米/proc/sys/net/ipv4/ip_forward
你应该看到 0 删0写1