kube-flannel安装要点
  1. 先把官方的yaml模板下载下来,然后对关键字段逐个修改

    1
    wget https://github.com/flannel-io/flannel/releases/latest/download/kube-flannel.yml

  2. 如果服务器使用了多网卡,比如使用 vagrant 创建的虚拟机,默认上网的网卡 IP 为 10.2.0.15,这时候需要手动指定网卡的接口,否则会导致集群内节点之间的 pod 无法互相通信。

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    vim kube-flannel.yml
    ...
    - name: kube-flannel
    image: quay.io/coreos/flannel:v0.14.0
    command:
    - /opt/bin/flanneld
    args:
    - --ip-masq
    - --kube-subnet-mgr
    - --iface=eth1 # 新增,改成你自己对应的网卡名
    ...

  3. net-conf.json参数,配置的是pod的网段,这里需要和kube-controller-manager的--cluster-cidr参数项保持一致

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    vim kube-flannel.yml
    ...
    net-conf.json: |
    {
    "Network": "10.8.64.0/18",
    "Backend": {
    "Type": "vxlan"
    }
    }
    ...