1

上周左右,我一直在尝试使用本指南在 OpenStack 中设置 Kubernetes 集群。我在这个问题中描述的过程中遇到了一些问题-> kube-up.sh 在 OpenStack 中失败

在发出./cluster/kube-up.sh脚本时,它会尝试使用 openstack 堆栈创建步骤 ( Log ) 来启动集群。在这里,由于某种原因,kubernetes master 没有正确启动,这就是安装失败的地方。我能够通过 SSH 连接到主节点并在/var/log/cloud-init-output.log

[..]
Complete!
*  INFO: Running install_centos_stable_post()
*  INFO: Running install_centos_check_services()
*  INFO: Running install_centos_restart_daemons()
*  INFO: Running daemons_running()
*  INFO: Salt installed!
2017-01-02 12:57:31,574 - cc_scripts_user.py[WARNING]: Failed to run module scripts-user (scripts in /var/lib/cloud/instance/scripts)
2017-01-02 12:57:31,576 - util.py[WARNING]: Running scripts-user (<module 'cloudinit.config.cc_scripts_user' from '/usr/lib/python2.7/site-packages/cloudinit/config/cc_scripts_user.pyc'>) failed
Cloud-init v. 0.7.5 finished at Mon, 02 Jan 2017 12:57:31 +0000. Datasource DataSourceOpenStack [net,ver=2].  Up 211.20 seconds

在进一步挖掘时,我在 /var/log/messages 文件中找到了这个片段 - > https://paste.ubuntu.com/23733430/

所以我会假设 Docker 守护进程没有启动。我的 etcd 配置也有一些问题,因为 flanneld 服务也没有启动。这是输出service flanneld status

● flanneld.service - Flanneld overlay address etcd agent
Loaded: loaded (/usr/lib/systemd/system/flanneld.service; enabled; vendor preset: disabled)
Active: activating (start) since Tue 2017-01-03 13:32:37 UTC; 48s ago
Main PID: 15666 (flanneld)
CGroup: /system.slice/flanneld.service
       └─15666 /usr/bin/flanneld -etcd-endpoints= -etcd-prefix= -iface=eth0 --ip-masq

Jan 03 13:33:16 kubernetesstack-master flanneld[15666]: E0103 13:33:16.229827 15666 network.go:53] Failed to retrieve network config: client: etcd cluster is unavailable or misconfigured
Jan 03 13:33:17 kubernetesstack-master flanneld[15666]: E0103 13:33:17.230082 15666 network.go:53] Failed to retrieve network config: client: etcd cluster is unavailable or misconfigured
Jan 03 13:33:18 kubernetesstack-master flanneld[15666]: E0103 13:33:18.230326 15666 network.go:53] Failed to retrieve network config: client: etcd cluster is unavailable or misconfigured
Jan 03 13:33:19 kubernetesstack-master flanneld[15666]: E0103 13:33:19.230560 15666 network.go:53] Failed to retrieve network config: client: etcd cluster is unavailable or misconfigured
Jan 03 13:33:20 kubernetesstack-master flanneld[15666]: E0103 13:33:20.230822 15666 network.go:53] Failed to retrieve network config: client: etcd cluster is unavailable or misconfigured
Jan 03 13:33:21 kubernetesstack-master flanneld[15666]: E0103 13:33:21.231325 15666 network.go:53] Failed to retrieve network config: client: etcd cluster is unavailable or misconfigured
Jan 03 13:33:22 kubernetesstack-master flanneld[15666]: E0103 13:33:22.231581 15666 network.go:53] Failed to retrieve network config: client: etcd cluster is unavailable or misconfigured
Jan 03 13:33:23 kubernetesstack-master flanneld[15666]: E0103 13:33:23.232140 15666 network.go:53] Failed to retrieve network config: client: etcd cluster is unavailable or misconfigured
Jan 03 13:33:24 kubernetesstack-master flanneld[15666]: E0103 13:33:24.234041 15666 network.go:53] Failed to retrieve network config: client: etcd cluster is unavailable or misconfigured
Jan 03 13:33:25 kubernetesstack-master flanneld[15666]: E0103 13:33:25.234277 15666 network.go:53] Failed to retrieve network config: client: etcd cluster is unavailable or misconfigured

我的 etcd 守护进程正在运行:

[root@kubernetesstack-master salt]# netstat -tanlp | grep etcd
tcp        0      0 192.168.173.3:4379      0.0.0.0:*               LISTEN      20338/etcd
tcp        0      0 192.168.173.3:4380      0.0.0.0:*               LISTEN      20338/etcd

虽然它在非标准端口上运行。

我也在代理下的公司网络中。任何有关如何进一步调试的指针表示赞赏。到目前为止,我在如何继续这件事上陷入了死胡同。在 Kubernetes 松弛通道中询问也产生了零结果!

4

1 回答 1

0

/usr/bin/flanneld -etcd-endpoints=

假设您在发布之前没有省略输出,那条线就是您的麻烦之源。在非标准端口上运行 etcd 会使您的情况变得更糟,但幸运的是,我认为这两者的解决方案实际上是相同的解决方案。

我希望运行systemctl cat flanneld.service(您可能需要sudo,取决于您的 systemd 设置的严格性)输出统一的 systemd 描述符flanneld,包括任何“插件”、覆盖等,如果我的理论是正确的,其中之一将是要么 要么Environment=EnvironmentFile=这就是我打赌的地方flanneld.serviceETCD_ENDPOINTS=或者FLANNELD_ETCD_ENDPOINTS=(如此处所示)可用于Exec.

因此,希望该文件要么丢失,要么实际上是空白的,在任何一种情况下,您都可以很快vi地向 flanneld 教授您的 etcd 端点,并且一切都恢复正常。

于 2017-03-26T05:15:46.633 回答