当前位置: 首页 > 知识库问答 >
问题:

无法访问kubeadm v1.7.2主机名“”

郑哲彦
2023-03-14

我正在尝试安装带有2个节点的kubernetes集群(1.7.2版)。并使用weave作为cni。当加入另一个节点时,kubeadm会报错主机名

[root@ctdpc001572 ~]# kubeadm join --token c5ba8a.6bcb25f017648271 10.41.30.50:6443
[kubeadm] WARNING: kubeadm is in beta, please do not use it for production clusters.
[preflight] Running pre-flight checks
[preflight] WARNING: hostname "" could not be reached
[preflight] WARNING: hostname "" lookup : no such host
[preflight] Some fatal errors occurred:
    hostname "" a DNS-1123 subdomain must consist of lower case alphanumeric characters, '-' or '.', and must start and end with an alphanumeric character (e.g. 'example.com', regex used for validation is '[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*')
[preflight] If you know what you are doing, you can skip pre-flight checks with `--skip-preflight-checks`

我使用的是 centos 7.3

Linux ctdpc001572.ctd.internal.com 3.10.0-514.26.2.el7.x86_64 #1 SMP Tue Jul 4 15:04:05 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux

已安装的yum包

Loaded plugins: fastestmirror, langpacks, versionlock
Loading mirror speeds from cached hostfile
Installed Packages
kubeadm.x86_64                                                                                  1.7.2-0                                                                                       @kubernetes
kubectl.x86_64                                                                                  1.7.2-0                                                                                       @kubernetes
kubelet.x86_64                                                                                  1.7.2-0                                                                                       @kubernetes
kubernetes-cni.x86_64                                                                           0.5.1-0                                                                                       @kubernetes
Available Packages
kubernetes.x86_64                                                                               1.5.2-0.7.git269f928.el7                                                                      extras     
kubernetes-client.x86_64                                                                        1.5.2-0.7.git269f928.el7                                                                      extras     
kubernetes-master.x86_64                                                                        1.5.2-0.7.git269f928.el7                                                                      extras     
kubernetes-node.x86_64                                                                          1.5.2-0.7.git269f928.el7                                                                      extras     
kubernetes-unit-test.x86_64                                                                     1.5.2-0.7.git269f928.el7                                                                      extras    

步骤:

$ yum install -y docker kubelet kubeadm kubectl kubernetes-cni
$ systemctl enable docker && systemctl start docker
$ systemctl enable kubelet && systemctl start kubelet
$ systemctl stop firewalld; systemctl disable firewalld
$ kubeadm init --apiserver-advertise-address=10.41.30.50
$ mkdir $HOME/.kube
$ cp /etc/kubernetes/admin.conf $HOME/.kube/config

#set IPALLOC_RANGE to 172.40.0.0/16 in https://git.io/weave-kube-1.6
$ kubectl apply -f weave-kube-1.6.yaml

#schedule pods on master
$ kubectl taint nodes --all node-role.kubernetes.io/master-

#disable access control
$ kubectl create clusterrolebinding permissive-binding \
  --clusterrole=cluster-admin \
  --user=admin \
  --user=kubelet \
  --group=system:serviceaccounts

# joining other node
$ kubeadm join --token c5ba8a.6bcb25f017648271 10.41.30.50:6443

跑步的时候

kubeadm join --token c5ba8a.6bcb25f017648271 10.41.30.50:6443 --skip-preflight-checks

我在weave-kube pod中看到以下错误:

2017/07/29 16:36:39 error contacting APIServer: Get https://10.96.0.1:443/api/v1/nodes: dial tcp 10.96.0.1:443: i/o timeout; trying with fallback: http://localhost:8080
2017/07/29 16:36:39 Could not get peers: Get http://localhost:8080/api/v1/nodes: dial tcp [::1]:8080: getsockopt: connection refused
Failed to get peers

共有3个答案

督嘉言
2023-03-14

运行此命令

kubeadm join --skip-preflight-checks --token TOKEN HOST:PORT 
董良策
2023-03-14

看起来你的迷你节点的主机名是非法的。主机名不能包含“-”,你的是DNS-1123,将其更改为 /etc/hostname和 /etc/hosts.都会正确。

陆子石
2023-03-14

在其他节点上手动添加ip路由解决了这个问题。

route add 10.96.0.1 gw <your real master IP>
 类似资料:
  • 我是Linux的新手,我能够在Manjaro上安装我的LAMP服务器。得到了一切的窍门,但现在有问题设置我的虚拟主机。我正在使用http://httpd.conf.中注释出"包含conf/额外/httpd-vhosts.conf",但在编辑httpd-vhosts.conf.后无法访问主机得是, 但是dummy.local没有加载并说, 无法访问此站点。找不到本地服务器的IP地址。 谢谢你。

  • 我有一个问题,基本上是关于OpenShift Origin路线的澄清。 我设法在本地VMWare安装的CentOS上设置OpenShift Origin版本1.4.0-rc1。我还能够为 nginx 拉取和设置映像,pod 状态显示正在运行。也能够在服务endpoint上访问nginx。现在,根据文档,如果我想在托管系统之外访问此nginx实例,我需要创建一个路由,我也这样做了。 混乱出现在Ope

  • 问题内容: 我已经按照Kelsey Hightower的指示从头开始创建了一个kubernetes集群。经过检查,一切正常,没有任何错误,但是在部署了第一个应用程序之后,我发现我的应用程序无法解析DNS。 我检查了我的coredns日志,并看到以下条目: 加上Kelsey的文档,我已经在Docker之上安装了calico。 我的怀疑: 我已经在Docker之上安装了Calico,但是我的kubel

  • 我正在努力理解我的错误在哪里。我看了各种答案并尝试了补救措施,结果发现他们的解决方案并没有纠正我的问题。我已经将所有内容剥离到最基本的部分,看看是否可以得到一个基本的PHP索引。php来展示自己。 以下是我试图在核心实现的目标: 我有docker compose站在1个网络上,2个服务连接到网络上。一个服务是PHP-FPM,另一个是为PHP-FPM服务的nginx。每次我站起来,不管我如何配置它,

  • 我有一个关于这个问题的问题https://hub.docker.com/r/jupyter/scipy-notebook.我正在尝试使用docker compose运行此图像: 组成: Dockerfile 我用手够不着它http://locahost:8888 .... 网址。我使用Windows10作为主机,并尝试从这个docker compose和这些工作中访问其他服务。

  • 摘要:一个更好的方法,以中止ansible playbook立即,如果任何主机是无法访问。 如果任何一个主机无法访问,是否有方法中止Ansible playbook。我发现,如果它无法到达主机,它仍将继续运行,并执行剧本中的所有播放/任务。 我所有的剧本都指定max_fail_percent为0,但在本例中ansible不会抱怨,因为所有可访问的主机都可以执行所有的剧本。 目前我有一个简单但黑客的