kubeadm v1.6.5
No servidor mestre: (1) kubeadm init
; (2) kubeadm reset
; (3) kubeadm init
novamente e obteve o erro port 10251 is in use, port 10252 is in use
.
kubeadm init --token abcdef.1234567890abcdef --kubernetes-version v1.6.5
[kubeadm] WARNING: kubeadm is in beta, please do not use it for production clusters.
[init] Using Kubernetes version: v1.6.5
[init] Using Authorization mode: RBAC
[preflight] Running pre-flight checks
[preflight] Some fatal errors occurred:
Port 10251 is in use
Port 10252 is in use
Eu verifico o status de uso de todas as portas. Parece que o kubeadm falhou ao redefinir controller
e scheduler
.
$ netstat -lnp | grep 1025
tcp6 0 0 :::10251 :::* LISTEN 4366/kube-scheduler
tcp6 0 0 :::10252 :::* LISTEN 4353/kube-controlle
$ kill 4366
$ kill 4353
Depois de matá-los, posso inicializar o cluster do Kubernetes.
kubeadm init --token abcdef.1234567890abcdef --kubernetes-version v1.6.5
[kubeadm] WARNING: is in beta, please do not use it for production clusters.
[init] Using Kubernetes version: v1.6.5
[init] Using Authorization mode: RBAC
[preflight] Running pre-flight checks
[preflight] Starting the kubelet service
[certificates] Generated CA certificate and key.
[certificates] Generated API server certificate and key.
[certificates] API Server serving cert is signed for DNS names [xxx.xxx.xxx.xxx kubernetes kubernetes.default kubernetes.default.svc kubernetes.default.svc.cluster.local] and IPs [xxx.xxx.xxx.xxx]
[certificates] Generated API server kubelet client certificate and key.
[certificates] Generated service account token signing key and public key.
[certificates] Generated front-proxy CA certificate and key.
[certificates] Generated front-proxy client certificate and key.
[certificates] Valid certificates and keys now exist in "/etc/kubernetes/pki"
[kubeconfig] Wrote KubeConfig file to disk: "/etc/kubernetes/admin.conf"
[kubeconfig] Wrote KubeConfig file to disk: "/etc/kubernetes/kubelet.conf"
[kubeconfig] Wrote KubeConfig file to disk: "/etc/kubernetes/controller-manager.conf"
[kubeconfig] Wrote KubeConfig file to disk: "/etc/kubernetes/scheduler.conf"
[apiclient] Created API client, waiting for the control plane to become ready
[apiclient] All control plane components are healthy after 16.281203 seconds
[apiclient] Waiting for at least one node to register
[apiclient] First node has registered after 5.501873 seconds
[token] Using token: abcdef.1234567890abcdef
[apiconfig] Created RBAC rules
[addons] Created essential addon: kube-proxy
[addons] Created essential addon: kube-dns
Your Kubernetes master has initialized successfully!
To start using your cluster, you need to run (as a regular user):
sudo cp /etc/kubernetes/admin.conf $HOME/
sudo chown $(id -u):$(id -g) $HOME/admin.conf
export KUBECONFIG=$HOME/admin.conf
You should now deploy a pod network to the cluster.
Run "kubectl apply -f [podnetwork].yaml" with one of the options listed at:
http://kubernetes.io/docs/admin/addons/
You can now join any number of machines by running the following on each node
as root:
kubeadm join --token abcdef.1234567890abcdef xxx.xxx.xxx.xxx:6443
Anexei a solução para usuários que desejam se livrar do mesmo problema.
Vocês poderiam verificar se é um bug?
Obrigado por registrar o problema!
Na verdade não acho que seja um bug. De alguma forma, você / kubeadm não fez a limpeza corretamente, pois os contêineres kube-scheduler e controller-manager ainda estavam em execução. Ou o docker os reiniciou de alguma forma.
Ou você mesmo iniciou o gerenciador de controlador e o programador de alguma forma.
Ou você ^ C'd kubeadm reset
um pouco antes ...
Se isso acontecer com frequência, por favor, reabra, mas eu não acho que haja algo para consertar aqui realmente
@luxas Fair point. Vou prestar atenção ao problema. Se houver algo errado em minhas configurações que esteja causando o problema, eu gostaria de relatar isso.
Seguiu suas dicas, mas ainda estava com os mesmos problemas. Percebi que há minikube em execução, que teve que ser interrompido por usar as mesmas portas, mas lista os processos como "localkube".
Como disse @luxas , funcionou. Provavelmente a melhor solução, pois nada mais funcionou.
$ sudo kubeadm reset
Eu entrei nessa situação fazendo o downgrade do docker e depois tentando executar o minikube. kubeadm reset resolveu o problema conforme sugerido por @luxas .
kubeadm reset corrigiu o problema
docker ps; docker inspect etcd1
listou o contêiner etcd que estava usando os números de porta relacionados. Portanto, sudo kubeadm init
falhou.
Como eu fiz: docker kill etcd1
Existem alguns outros problemas restantes sobre a inicialização do cluster kubernetes (SSH, kernel cgroups config, ...), essencialmente, saiba qual versão do Linux / Arquitetura você usa, mas isso pode ser esclarecido nos detalhes dos requisitos.
kubeadm reset
problema resolvido para mim também
Eu tenho o mesmo problema de inicialização do minikube.
E resolvi o problema com as seguintes etapas:
1 、 docker stop $ (docker ps -a -q)
2 、 use o parâmetro --extra-config de inicialização do minikube. como: minikube start --kubernetes-version = 1.17.2 --vm-driver = none kubelet.ignore-preflight-errors kubeadm.ignore-preflight-errors
Eu tenho o mesmo problema de inicialização do minikube.
E resolvi o problema com as seguintes etapas:
1 、 docker stop $ (docker ps -a -q)
2 、 use o parâmetro --extra-config de inicialização do minikube. como: minikube start --kubernetes-version = 1.17.2 --vm-driver = none kubelet.ignore-preflight-errors kubeadm.ignore-preflight-errors
Olá a todos,
Estou tentando instalar o Kubernetes no ubuntu VM, mas infelizmente estou enfrentando alguns problemas, apesar da redefinição do kubeadm.
root @ KVM : ~ # kubeadm init --config = kubeadm-config.yaml --upload-certs | tee kubeadm-init.out # Salvar saída para revisão futura
W0719 22: 06: 28.075574 15363 configset.go: 202] AVISO: o kubeadm não pode validar configurações de componentes para grupos de API [kubelet.config.k8s.io kubeproxy.config.k8s.io]
[init] Usando a versão do Kubernetes: v1.18.1
[preflight] Execução de verificações pré-voo
[AVISO IsDockerSystemdCheck]: detectou "cgroupfs" como o driver Docker cgroup. O driver recomendado é "systemd". Siga o guia em https://kubernetes.io/docs/setup/cri/
[preflight] Extração de imagens necessárias para configurar um cluster Kubernetes
[preflight] Isso pode levar um ou dois minutos, dependendo da velocidade de sua conexão de internet
[preflight] Você também pode executar esta ação com antecedência usando 'kubeadm config images pull'
[kubelet-start] Gravando o arquivo de ambiente kubelet com sinalizadores no arquivo "/var/lib/kubelet/kubeadm-flags.env"
[kubelet-start] Gravando a configuração do kubelet no arquivo "/var/lib/kubelet/config.yaml"
[kubelet-start] Iniciando o kubelet
[certs] Usando a pasta certificateDir "/ etc / kubernetes / pki"
[certs] Gerando certificado e chave "ca"
[certs] Gerando certificado e chave "apiserver"
[certs] apiserver servindo certificado é assinado para nomes DNS [ahmed-kvm kubernetes kubernetes.default kubernetes.default.svc kubernetes.default.svc.cluster.local k8smaster] e IPs [xxxx xxxx]
[certs] Gerando certificado e chave "apiserver-kubelet-client"
[certs] Gerando certificado e chave "front-proxy-ca"
[certs] Gerando certificado e chave "front-proxy-client"
[certs] Gerando certificado e chave "etcd / ca"
[certs] Gerando certificado e chave "etcd / server"
[certs] certificado de serviço de etcd / servidor assinado para nomes DNS [ahmed-kvm localhost] e IPs [xxxx xxxx]
[certs] Gerando certificado e chave "etcd / peer"
[certs] etcd / peer serving cert é assinado para nomes DNS [ahmed-kvm localhost] e IPs [xxxx xxxx]
[certs] Gerando certificado e chave "etcd / healthcheck-client"
[certs] Gerando certificado e chave "apiserver-etcd-client"
[certs] Gerando chave "sa" e chave pública
[kubeconfig] Usando a pasta kubeconfig "/ etc / kubernetes"
[kubeconfig] Gravando o arquivo kubeconfig "admin.conf"
[kubeconfig] Gravando o arquivo kubeconfig "kubelet.conf"
[kubeconfig] Gravando o arquivo kubeconfig "controller-manager.conf"
[kubeconfig] Gravando o arquivo kubeconfig "scheduler.conf"
[control-plane] Usando a pasta de manifesto "/ etc / kubernetes / manifests"
[control-plane] Criando manifesto de pod estático para "kube-apiserver"
W0719 22: 06: 31.223537 15363 manifestos.go: 225] o modo de autorização padrão do kube-apiserver é "Nó, RBAC"; usando "Nó, RBAC"
[control-plane] Criando manifesto de pod estático para "kube-controller-manager"
W0719 22: 06: 31.224263 15363 manifestos.go: 225] o modo de autorização padrão do kube-apiserver é "Nó, RBAC"; usando "Nó, RBAC"
[control-plane] Criando manifesto de pod estático para "kube-scheduler"
[etcd] Criação de manifesto de pod estático para etcd local em "/ etc / kubernetes / manifests"
[wait-control-plane] Aguardando o kubelet inicializar o plano de controle como pods estáticos do diretório "/ etc / kubernetes / manifests". Isso pode levar até 4m0s
[kubelet-check] Tempo limite inicial de 40 segundos passado.
Unfortunately, an error has occurred:
timed out waiting for the condition
This error is likely caused by:
- The kubelet is not running
- The kubelet is unhealthy due to a misconfiguration of the node in some way (required cgroups disabled)
If you are on a systemd-powered system, you can try to troubleshoot the error with the following commands:
- 'systemctl status kubelet'
- 'journalctl -xeu kubelet'
Additionally, a control plane component may have crashed or exited when started by the container runtime.
To troubleshoot, list all containers using your preferred container runtimes CLI.
Here is one example how you may list all Kubernetes containers running in docker:
- 'docker ps -a | grep kube | grep -v pause'
Once you have found the failing container, you can inspect its logs with:
- 'docker logs CONTAINERID'
fase de execução de erro wait-control-plane: não foi possível inicializar um cluster Kubernetes
Para ver o rastreamento de pilha deste erro execute com --v = 5 ou superior
Obrigado pela ajuda
Para qualquer pessoa que esteja enfrentando esse problema, verifique se você tinha microk8s
instalado e remova. Esse era o meu problema
sudo kubeadm reset
resolveu o meu também
Comentários muito úteis
Obrigado por registrar o problema!
Na verdade não acho que seja um bug. De alguma forma, você / kubeadm não fez a limpeza corretamente, pois os contêineres kube-scheduler e controller-manager ainda estavam em execução. Ou o docker os reiniciou de alguma forma.
Ou você mesmo iniciou o gerenciador de controlador e o programador de alguma forma.
Ou você ^ C'd
kubeadm reset
um pouco antes ...Se isso acontecer com frequência, por favor, reabra, mas eu não acho que haja algo para consertar aqui realmente