设置Docket在CoreOS上用etcd2使用Flannelnetworking

我使用这个cloud-config在DIgital Ocean上创build了一个2台机器集群。 没有什么奇特的,只是重新启动systemd,舰队和etcd2,以及创build一个4Gb互换(使用512MB的机器进行testing)。 这一切都运作良好,考虑到这一点

core @ coreos-1〜$ fleetctl list-machines MACHINE IP METADATA 14ec8f48 … 10.10.10.18 – 9a6a3f3d … 10.10.10.115 –

然后通过设置/etc/systemd/system/flannel.service来成功启动法兰绒

[Unit] Description=Flannel network fabric for CoreOS Requires=etcd2.service After=etcd2.service [Service] EnvironmentFile=/etc/environment ExecStartPre=-/bin/bash -c "until /usr/bin/etcdctl set /coreos.com/network/config '{\"Network\": \"10.10.10.0/16\"}'; do echo \"waiting for etcd to become available...\"; sleep 5; done" ExecStart=/opt/bin/flannel -iface=${COREOS_PRIVATE_IPV4} ExecStartPost=-/bin/bash -c "until [ -e /run/flannel/subnet.env ]; do echo \"waiting for write.\"; sleep 3; done" Restart=on-failure RestartSec=5 [Install] WantedBy=multi-user.target 

然后我在两台机器上运行

 cd /etc/systemd/system sudo systemctl enable flannel.service sudo reboot 

到目前为止这么好,但我需要使docker使用法兰绒networking进行容器通信,因为我想在这个群集上尝试kubernetes。 我想在创build一个systemd单元文件之前手动完成这个工作。 我已经在网上看到了2条线索,第一条来自DIgital Ocean Documentation ,第二条来自这个博客

数字海洋

从来没有工作

 source /run/flannel/subnet.env ip link set dev docker0 down brctl delbr docker0 docker daemon -s=btrfs -H fd:// --bip=${FLANNEL_SUBNET} --mtu=${FLANNEL_MTU} 

FATA[0000] Error starting daemon: error initializing graphdriver: prerequisites for driver not satisfied (wrong filesystem?)

博客

这个总是只能在主人身上,很less在奴才上,而当这种情况发生时,我不能在不同的机器

 source /run/flannel/subnet.env sudo rm /var/run/docker.pid sudo ifconfig docker0 ${FLANNEL_SUBNET} sudo docker daemon --bip=${FLANNEL_SUBNET} --mtu=${FLANNEL_MTU} & INFO[0000] Listening for HTTP on unix (/var/run/docker.sock) INFO[0000] [graphdriver] using prior storage driver "overlay" INFO[0000] Option DefaultDriver: bridge INFO[0000] Option DefaultNetwork: bridge INFO[0000] Firewalld running: false INFO[0000] Loading containers: start. INFO[0000] Loading containers: done. INFO[0000] Daemon has completed initialization INFO[0000] Docker daemon commit=cedd534-dirty execdriver=native-0.2 graphdriver=overlay version=1.8.3 ``` 

我究竟做错了什么? 它在那里,但我看不到它