Vagrant와 함께 Ubuntu 18.04 가상 머신을 사용하여 Kubernetes 클러스터를 설정하고 있습니다. kubeadm join 10.0.2.15:6443 --token ...
작업자 노드에서 명령을 실행하려고 할 때까지 모든 것이 잘 진행되고 오류가 발생합니다.
[preflight] Running pre-flight checks
error execution phase preflight: couldn't validate the identity of the API Server: Get "https://10.0.2.15:6443/api/v1/namespaces/kube-public/configmaps/cluster-info?timeout=10s": dial tcp 10.0.2.15:6443: connect: connection refused
kubeadm token create --print-join-command
내 가설은 이것이 네트워킹 문제라는 것입니다. 왜냐하면 Control Plane 노드에서 로 지정된 IP 주소는 10.0.2.15:6443
Vagrantfile의 Control Plan 노드에 대해 지정한 IP 주소가 아니기 때문입니다( 172.16.94.10
, 아래 참조). 그러나 다음과 같이 kubeadm Join 명령을 수동으로 변경하더라도 sudo kubeadm join 172.16.94.10:6443 --token ...
비슷한 오류가 발생합니다. 이 문제를 어떻게 해결할 수 있나요?
우분투 시스템 정보:
System load: 0.22 Users logged in: 0
Usage of /: 4.4% of 97.23GB IP address for eth0: 10.0.2.15
Memory usage: 40% IP address for eth1: 172.16.94.10
Swap usage: 0% IP address for tunl0: 192.168.13.192
Processes: 144
방랑 파일:
# -*- mode: ruby -*-
# vi: set ft=ruby :
Vagrant.configure("2") do |config|
config.vm.box = "base"
config.vm.define "c1-cp1" do |c1cp1|
c1cp1.vm.box = "bento/ubuntu-18.04"
c1cp1.disksize.size = '100GB'
c1cp1.vm.network "private_network", ip: "172.16.94.10"
c1cp1.vm.hostname = "c1-cp1"
c1cp1.vm.provider "virtualbox" do |vb|
vb.memory = "2048"
vb.cpus = "2"
end
end
config.vm.define "c1-node1" do |c1node1|
c1node1.vm.box = "bento/ubuntu-18.04"
c1node1.disksize.size = '100GB'
c1node1.vm.network "private_network", ip: "172.16.94.11"
c1node1.vm.hostname = "c1-node1"
c1node1.vm.provider "virtualbox" do |vb|
vb.memory = "2048"
vb.cpus = "2"
end
end
end
답변1
당kubeadm 초기화페이지에서 Control Plane 노드 설정 프로세스를 다시 시작하고 sudo kubeadm init --apiserver-advertise-address="172.16.94.10" --apiserver-cert-extra-sans="172.16.94.10"
일반 노드 대신 사용하면 Vagrantfile에 정의된 대로 올바른 라우팅 가능한 IP 주소로 작동하도록 sudo kubeadm init
구성됩니다 .kubeadm
결과는 다음과 같습니다.
This node has joined the cluster:
* Certificate signing request was sent to apiserver and a response was received.
* The Kubelet was informed of the new secure connection details.
Run 'kubectl get nodes' on the control-plane to see this node join the cluster.