法兰绒和 docker 不启动
Flannel and docker don't start
我正在尝试使用此 guide 在 centos 7.1 的 2 个节点上设置一个 kubernetes 集群。但是,当我尝试像这样在 minion 上启动服务时:
for SERVICES in kube-proxy kubelet docker flanneld; do
systemctl restart $SERVICES
systemctl enable $SERVICES
systemctl status $SERVICES
done
我收到以下错误:
-- Logs begin at Wed 2015-12-23 13:00:41 UTC, end at Wed 2015-12-23 16:03:54 UTC. --
Dec 23 16:03:47 sc-test2 systemd[1]: docker-storage-setup.service: main process exited, code=exited, status=1/FAILURE
Dec 23 16:03:47 sc-test2 systemd[1]: Failed to start Docker Storage Setup.
-- Subject: Unit docker-storage-setup.service has failed
-- Defined-By: systemd
-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
--
-- Unit docker-storage-setup.service has failed.
--
-- The result is failed.
Dec 23 16:03:47 sc-test2 systemd[1]: Unit docker-storage-setup.service entered failed state.
Dec 23 16:03:48 sc-test2 flanneld[36477]: E1223 16:03:48.187350 36477 network.go:53] Failed to retrieve network config: 100: Key not found (/atomic.io)
Dec 23 16:03:49 sc-test2 flanneld[36477]: E1223 16:03:49.189860 36477 network.go:53] Failed to retrieve network config: 100: Key not found (/atomic.io)
Dec 23 16:03:50 sc-test2 flanneld[36477]: E1223 16:03:50.192894 36477 network.go:53] Failed to retrieve network config: 100: Key not found (/atomic.io)
Dec 23 16:03:51 sc-test2 flanneld[36477]: E1223 16:03:51.194940 36477 network.go:53] Failed to retrieve network config: 100: Key not found (/atomic.io)
Dec 23 16:03:52 sc-test2 flanneld[36477]: E1223 16:03:52.197222 36477 network.go:53] Failed to retrieve network config: 100: Key not found (/atomic.io)
Dec 23 16:03:53 sc-test2 flanneld[36477]: E1223 16:03:53.199248 36477 network.go:53] Failed to retrieve network config: 100: Key not found (/atomic.io)
Dec 23 16:03:54 sc-test2 flanneld[36477]: E1223 16:03:54.201160 36477 network.go:53] Failed to retrieve network config: 100: Key not found (/atomic.io)
我确定我在 master 上设置了密钥:
etcdctl mk /coreos.com/network/config '{"Network":"172.17.0.0/16"}'
到目前为止,安装似乎是使用 kubernetes 最难的一点:(
今天是圣诞节,但我花了一整天的时间试图让它工作 :) 这就是我所做的:
#1 法兰绒
如前所述,我在主服务器上设置了 flannel etcd 密钥:
etcdctl mk /coreos.com/network/config '{"Network":"172.17.0.0/16"}'
但是当我尝试在 minion 上启动 flannel 时出现这个错误:
Failed to retrieve network config: 100: Key not found (/atomic.io)
所以我编辑了 minion 上的 /etc/sysconfig/flanneld
文件:
# Flanneld configuration options
# etcd url location. Point this to the server where etcd runs
FLANNEL_ETCD="http://master:2379"
# etcd config key. This is the configuration key that flannel queries
# For address range assignment
FLANNEL_ETCD_KEY="/coreos.com/network"
# Any additional options that you want to pass
#FLANNEL_OPTIONS=""
to:
# Flanneld configuration options
# etcd url location. Point this to the server where etcd runs
FLANNEL_ETCD="http://master:2379"
# etcd config key. This is the configuration key that flannel queries
# For address range assignment
FLANNEL_ETCD_KEY="/atomic.io/network"
# Any additional options that you want to pass
#FLANNEL_OPTIONS=""
即更改了 FLANNEL_ETCD 键。
在此之后 systemctl start flanneld
有效。
#2 DOCKER
我没有找到让 kubernetes 作为依赖项安装的版本的方法,所以我卸载了它并按照 docker 文档安装了 Centos docker-engine 并手动创建了一个docker.service systemctl 文件。
cd /usr/lib/systemd/system
和docker.service的内容:
[Unit]
Description=Docker Application Container Engine
Documentation=https://docs.docker.com
After=network.target docker.socket
Requires=docker.socket
Requires=flanneld.service
After=flanneld.service
[Service]
EnvironmentFile=/etc/sysconfig/flanneld
ExecStart=/usr/bin/docker daemon -H fd:// --bip=${FLANNEL_SUBNET}
Restart=on-failure
RestartSec=5
[Install]
WantedBy=multi-user.target
然后使用 systemctl 启动并启用守护程序并查询状态。
systemctl restart docker
systemctl enable docker
systemctl status docker
我正在尝试使用此 guide 在 centos 7.1 的 2 个节点上设置一个 kubernetes 集群。但是,当我尝试像这样在 minion 上启动服务时:
for SERVICES in kube-proxy kubelet docker flanneld; do
systemctl restart $SERVICES
systemctl enable $SERVICES
systemctl status $SERVICES
done
我收到以下错误:
-- Logs begin at Wed 2015-12-23 13:00:41 UTC, end at Wed 2015-12-23 16:03:54 UTC. --
Dec 23 16:03:47 sc-test2 systemd[1]: docker-storage-setup.service: main process exited, code=exited, status=1/FAILURE
Dec 23 16:03:47 sc-test2 systemd[1]: Failed to start Docker Storage Setup.
-- Subject: Unit docker-storage-setup.service has failed
-- Defined-By: systemd
-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
--
-- Unit docker-storage-setup.service has failed.
--
-- The result is failed.
Dec 23 16:03:47 sc-test2 systemd[1]: Unit docker-storage-setup.service entered failed state.
Dec 23 16:03:48 sc-test2 flanneld[36477]: E1223 16:03:48.187350 36477 network.go:53] Failed to retrieve network config: 100: Key not found (/atomic.io)
Dec 23 16:03:49 sc-test2 flanneld[36477]: E1223 16:03:49.189860 36477 network.go:53] Failed to retrieve network config: 100: Key not found (/atomic.io)
Dec 23 16:03:50 sc-test2 flanneld[36477]: E1223 16:03:50.192894 36477 network.go:53] Failed to retrieve network config: 100: Key not found (/atomic.io)
Dec 23 16:03:51 sc-test2 flanneld[36477]: E1223 16:03:51.194940 36477 network.go:53] Failed to retrieve network config: 100: Key not found (/atomic.io)
Dec 23 16:03:52 sc-test2 flanneld[36477]: E1223 16:03:52.197222 36477 network.go:53] Failed to retrieve network config: 100: Key not found (/atomic.io)
Dec 23 16:03:53 sc-test2 flanneld[36477]: E1223 16:03:53.199248 36477 network.go:53] Failed to retrieve network config: 100: Key not found (/atomic.io)
Dec 23 16:03:54 sc-test2 flanneld[36477]: E1223 16:03:54.201160 36477 network.go:53] Failed to retrieve network config: 100: Key not found (/atomic.io)
我确定我在 master 上设置了密钥: etcdctl mk /coreos.com/network/config '{"Network":"172.17.0.0/16"}'
到目前为止,安装似乎是使用 kubernetes 最难的一点:(
今天是圣诞节,但我花了一整天的时间试图让它工作 :) 这就是我所做的:
#1 法兰绒
如前所述,我在主服务器上设置了 flannel etcd 密钥:
etcdctl mk /coreos.com/network/config '{"Network":"172.17.0.0/16"}'
但是当我尝试在 minion 上启动 flannel 时出现这个错误:
Failed to retrieve network config: 100: Key not found (/atomic.io)
所以我编辑了 minion 上的 /etc/sysconfig/flanneld
文件:
# Flanneld configuration options
# etcd url location. Point this to the server where etcd runs
FLANNEL_ETCD="http://master:2379"
# etcd config key. This is the configuration key that flannel queries
# For address range assignment
FLANNEL_ETCD_KEY="/coreos.com/network"
# Any additional options that you want to pass
#FLANNEL_OPTIONS=""
to:
# Flanneld configuration options
# etcd url location. Point this to the server where etcd runs
FLANNEL_ETCD="http://master:2379"
# etcd config key. This is the configuration key that flannel queries
# For address range assignment
FLANNEL_ETCD_KEY="/atomic.io/network"
# Any additional options that you want to pass
#FLANNEL_OPTIONS=""
即更改了 FLANNEL_ETCD 键。
在此之后 systemctl start flanneld
有效。
#2 DOCKER
我没有找到让 kubernetes 作为依赖项安装的版本的方法,所以我卸载了它并按照 docker 文档安装了 Centos docker-engine 并手动创建了一个docker.service systemctl 文件。
cd /usr/lib/systemd/system
和docker.service的内容:
[Unit]
Description=Docker Application Container Engine
Documentation=https://docs.docker.com
After=network.target docker.socket
Requires=docker.socket
Requires=flanneld.service
After=flanneld.service
[Service]
EnvironmentFile=/etc/sysconfig/flanneld
ExecStart=/usr/bin/docker daemon -H fd:// --bip=${FLANNEL_SUBNET}
Restart=on-failure
RestartSec=5
[Install]
WantedBy=multi-user.target
然后使用 systemctl 启动并启用守护程序并查询状态。
systemctl restart docker
systemctl enable docker
systemctl status docker