0

我正在尝试使用https://github.com/coreos/coreos-kubernetes/tree/master/multi-node/generic上的脚本在我家中的真实(非虚拟)coreos 服务器上安装带有 rkt 的 kuberentes,我有一些问题。

  1. 我的 etcd2 正在使用 tls 密钥,我在脚本中看不到可以定义证书所在位置的任何地方。
  2. ADVERTISE_IP我可以为and提供域而不是 IPCONTROLLER_ENDPOINT吗?
  3. 当我尝试手动安装 kubernetes 时,我需要启动 rkt 服务 api。它没有在文档中说明它需要在这里,是否意味着如果我使用这些脚本就不需要它?还是只是文件中缺少的东西?

谢谢!

更新

Rob 非常感谢您的回复。我对etcd2不够清楚。我已经在我的 coreos 服务器上安装并正确配置了 etcd2 tls。所以我在 controller-install.sh 文件中配置了我的 etcd 服务器:

export ETCD_ENDPOINTS="https://coreos-2.tux-in.com:2379,https://coreos-3.tux-in.com:2379"

但是当我运行controller-install.sh脚本时,它会返回并重复以下输出:

Waiting for etcd...
Trying: https://coreos-2.tux-in.com:2379
Trying: https://coreos-3.tux-in.com:2379
Trying: https://coreos-2.tux-in.com:2379
Trying: https://coreos-3.tux-in.com:2379
...

所以我猜这是因为我没有在控制器脚本中定义与 etcd 相关的 tls 证书,这就是它陷入这种混乱的原因。

在我的 macbook pro 笔记本电脑上,我配置了以下别名:

alias myetcdctl="~/apps/etcd-v3.0.8-darwin-amd64/etcdctl --endpoint=https://coreos-2.tux-in.com:2379 --ca-file=/Users/ufk/Projects/coreos/tux-in/etcd/certs/certs-names/ca.pem --cert-file=/Users/ufk/Projects/coreos/tux-in/etcd/certs/certs-names/etcd1.pem --key-file=/Users/ufk/Projects/coreos/tux-in/etcd/certs/certs-names/etcd1-key.pem  --timeout=10s"

所以当我跑步时,myetcdctl member list我得到:

8832ce6a269a7dac: name=ccff826d5f564c67abf35467306f80a0 peerURLs=https://coreos-3.tux-in.com:2380 clientURLs=https://coreos-3.tux-in.com:2379 isLeader=true
a2c0ac9708ef90fc: name=dc38bc8f20e64940b260d3f7b260430d peerURLs=https://coreos-2.tux-in.com:2380 clientURLs=https://coreos-2.tux-in.com:2379 isLeader=false

所以我猜我在那里真的没有问题。

有任何想法吗?

谢谢!

4

1 回答 1

1

我的 etcd2 正在使用 tls 密钥,我在脚本中看不到可以定义证书所在位置的任何地方。

这些脚本不会启动 etcd 服务器。您需要手动设置一个,并且能够使用 TLS 和任意数量的节点。这在文档的当前形式中并不清楚,我将尝试 PR 来修复。

我可以为 ADVERTISE_IP 和 CONTROLLER_ENDPOINT 提供域而不是 IP 吗?

只有 CONTROLLER_ENDPOINT 是域名。

当我尝试手动安装 kubernetes 时,我需要启动 rkt 服务 api。它没有在文档中说明它需要在这里,是否意味着如果我使用这些脚本就不需要它?还是只是文件中缺少的东西?

这些脚本包括/启动 rkt API 服务。如下所示,它还有一个 Restart 参数集(来源)

[Unit]
Before=kubelet.service

[Service]
ExecStart=/usr/bin/rkt api-service
Restart=always
RestartSec=10

[Install]
RequiredBy=kubelet.service
于 2016-09-28T16:56:39.457 回答