1. 程式人生 > >K8S 1.9.0二進制包部署(四)

K8S 1.9.0二進制包部署(四)

ble forward term ecs core bus des usr ets

5、flannel

cp flanneld /usr/bin/
chmod 755 /usr/bin/flanneld
mkdir -p /app/flannel/conf/

vi /usr/lib/systemd/system/flanneld.service
[Unit]
Description=flanneld overlay address etcd agent
After=network.target
Before=docker.service
[Service]
Type=notify
EnvironmentFile=/app/flannel/conf/flanneld
ExecStart=/usr/bin/flanneld -etcd-endpoints=${FLANNEL_ETCD} ${FLANNEL_OPTIONS}

[Install]
RequiredBy=docker.service
WantedBy=multi-user.target

vi /app/flannel/conf/flanneld
FLANNEL_ETCD="http://192.168.254.53:2379" #此處輸入集群master地址
FLANNEL_ETCD_KEY="/coreos.com/network"
FLANNEL_OPTIONS="-iface=ens32" #此處寫網卡

以下兩句只有master執行
etcdctl set /coreos.com/network/config ‘{"Network":"10.0.0.0/16","SubnetMin":"10.0.1.0","SubnetMax":"10.0.20.0"}‘

etcdctl get /coreos.com/network/config

systemctl daemon-reload
systemctl enable flanneld.service
systemctl start flanneld.service
systemctl status flanneld.service

./mk-docker-opts.sh -i
cat /run/flannel/subnet.env
cat /run/docker_opts.env
source /run/flannel/subnet.env

vim /run/flannel/subnet.env
把--ip-masq=false 改成 --ip-masq=true

vi /usr/lib/systemd/system/docker.service加入
EnvironmentFile=/run/flannel/subnet.env
兩個參數:--bip=${FLANNEL_SUBNET} --mtu=${FLANNEL_MTU}
ExecStart=/usr/bin/dockerd --bip=${FLANNEL_SUBNET} --mtu=${FLANNEL_MTU}
技術分享圖片

systemctl daemon-reload
systemctl restart docker
etcdctl ls /coreos.com/network/subnets
etcdctl get /coreos.com/network/subnets/10.0.8.0-24

flannel安裝成功後 查看下docker 是否在flannel所在網段內。
技術分享圖片
創建 docker run -itd bbox1 busybox 測試ping 1、從容器到跨主機 2、從主機到容器 3、容器跨主機容器
容器內互相不能ping通,原因訪問策略問題
所有節點執行
iptables -P FORWARD ACCEPT

參考http://blog.csdn.net/liukuan73/article/details/54897594
參考https://www.hi-linux.com/posts/30481.html

K8S 1.9.0二進制包部署(四)