#kubernetes #kubeadm
#kubernetes #kubeadm
Вопрос:
Я новичок в kubernetes и пытаюсь настроить главный узел kubernetes, я установил kubeadm, kubectl и kubelet следующим образом
https://kubernetes.io/docs/setup/independent/create-cluster-kubeadm/
но когда я пытаюсь запустить kubeadm, введя kubeadm init
, это выдает мне следующую ошибку
[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=...`
Комментарии:
1. какая версия операционной системы?
Ответ №1:
Похоже, что в системе присутствуют устаревшие данные. Чтобы удалить этот каталог данных (/etc / kubernetes), запустите:
kubeadm reset
Теперь вам нужно установить содержимое ip_forward равным 1, выполнив следующую команду:
echo 1 > /proc/sys/net/ipv4/ip_forward
Это должно решить вашу проблему.
Ответ №2:
Для установки kubernetes требуется модуль br_netfilter. Включите этот модуль ядра, чтобы пакеты, проходящие через мост, обрабатывались iptables для фильтрации и переадресации портов, а модули kubernetes в кластере могли взаимодействовать друг с другом.
Выполните приведенную ниже команду, чтобы включить модуль ядра br_netfilter.
#modprobe br_netfilter
#echo '1' > /proc/sys/net/bridge/bridge-nf-call-iptables
или
#nano /proc/sys/net/ipv4/ip_forward
вы должны увидеть 0, удалить 0 и записать 1
Комментарии:
1. Даже после запуска этого я получаю
echo '1' > /proc/sys/net/bridge/bridge-nf-call-iptables -bash: /proc/sys/net/bridge/bridge-nf-call-iptables: No such file or directory
2. какая у вас операционная система?
3. как в centos, так и в Ubuntu