0

我已经设置了一个 kubernetes 三节点集群,使用:Fedora 21

kubernetes-0.7.0-18.0.git52e165a.fc21.x86_64
docker-io-1.4.0-1.fc21.x86_64

我创建了以下 pod:

http://dpaste.com/2VSF8XA

跑步kubectl get minions节目:

NAME                LABELS
10.0.0.10           <none>
10.0.0.9            <none>

我跑kubectl create -f podfile.json

跑步kubectl get pod nginxphp节目:

NAME                IMAGE(S)              HOST                LABELS              STATUS
nginxphp            million12/nginx-php   10.0.0.10/          name=nginxphp       Pending

跑步kubectl get events节目:

NAME                KIND                STATUS              REASON              MESSAGE
nginxphp            Pod                 Pending             scheduled              Successfully assigned nginxphp to 10.0.0.10

状态永远不会超过“待定”

解决此问题的下一步是什么?

4

2 回答 2

1

检查这里的第一个条目;我怀疑你的 kubelet 和 apiserver 不同意你的 kubelet 叫什么。

https://github.com/GoogleCloudPlatform/kubernetes/wiki/Debugging-FAQ#by-symptom

于 2015-01-08T23:44:08.840 回答
0

我偶然发现了解决方案。

    +-----------+--------+--------------------------------+
    | Name      | Status | Networks                       |
    +-----------+--------+--------------------------------+
    | kub001    | ACTIVE | private=10.0.0.18, 200.7.6.215 |
    | minion001 | ACTIVE | private=10.0.0.20, 200.7.6.217 |
    | minion002 | ACTIVE | private=10.0.0.19, 200.7.6.216 |
    +-----------+--------+--------------------------------+

在主人身上/etc/kubernetes/controller-manager,我有:

KUBELET_ADDRESSES="--machines=10.0.0.20,10.0.0.19"

在 minion002 中/etc/kubernetes/kubelet,我有:

KUBELET_HOSTNAME="--hostname_override=10.0.0.19"

只要以上两点相配,一切皆大欢喜,好得差不多了。

主机名绑定到浮动外部地址,但集群流量在内部专用网络上,这就是需要hostname_override的原因。

它运行了,但是当我运行时它仍然显示为在 master 上挂起kubectl get events,我称之为进度。

NAME                KIND                STATUS              REASON              
nginxphp            Pod                 Pending             scheduled 
nginxphp            Pod                 Pending             scheduled 

我不知道如何从以前的尝试中清除事件,但它的工作......我想。

于 2015-01-09T06:43:57.073 回答