首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Kubernetes flannel pod获取错误的网络

Kubernetes flannel pod获取错误的网络
EN

Stack Overflow用户
提问于 2017-09-25 19:36:15
回答 1查看 1.4K关注 0票数 2

在pod中运行的Flannel获得了错误的子网,网络状况不佳,症状是flannel从10.105.0.0/16分配/24。它应该从10.105.5.128/21分配/26。谢谢你的帮助。

以下是详细信息:

代码语言:javascript
复制
/usr/bin/kubeadm init \
--kubernetes-version v1.7.5 \
--pod-network-cidr 10.105.5.128/21 \
--service-cidr 10.105.5.136/21 \
--token XXXXXXXXXXX

kube-flannel-rbac.yml是在kube-flannel.yml仅修改了来自kube-flannel.yml的bit(SubenetLen和网络)之后加载的:

代码语言:javascript
复制
{
  "Network": "10.105.5.128/21",
  "SubnetLen": 26,
  "Backend": {
    "Type": "vxlan"
  }
}

DNS在systemd文件中设置为:

代码语言:javascript
复制
--cluster-dns=10.105.5.136.10

使用Ubuntu 16.04 LTS和stock内核

下面是docker的daemon.json文件:

代码语言:javascript
复制
{
"hosts":[
    "fd://",
    "0.0.0.0"
],
"ip-masq":false,
    "experimental": true,
"registry-mirrors": [
    "http://hub.xyz.com"
],
"insecure-registries": [
    "http://hub.xyz.com"
],
"tls": true,
"tlsverify": true,
"tlscacert":"/etc/docker/ca.pem",
"tlscert":"/etc/docker/cert.pem",
"tlskey":"/etc/docker/key.pem"
}

所有kuberentes组件都是从ubuntu k8s repos安装的1.7.5版本

下面是kube-flannel容器的日志:

代码语言:javascript
复制
I0926 03:29:10.214198      89 main.go:446] Determining IP address of default interface
I0926 03:29:10.216166      89 main.go:459] Using interface with name eth0 and address 10.105.5.12
I0926 03:29:10.216261      89 main.go:476] Defaulting external address to interface address (10.105.5.12)
I0926 03:29:10.242216      89 kube.go:283] Starting kube subnet manager
I0926 03:29:10.242055      89 kube.go:130] Waiting 10m0s for node controller to sync
I0926 03:29:11.242864      89 kube.go:137] Node controller sync successful
I0926 03:29:11.242957      89 main.go:226] Created subnet manager: Kubernetes Subnet Manager - kube-m2.XXXXX.com
I0926 03:29:11.242969      89 main.go:229] Installing signal handlers
I0926 03:29:11.243984      89 main.go:330] Found network config - Backend type: vxlan
I0926 03:29:11.288902      89 ipmasq.go:51] Adding iptables rule: -s 10.105.0.0/21 -d 10.105.0.0/21 -j RETURN
I0926 03:29:11.306692      89 ipmasq.go:51] Adding iptables rule: -s 10.105.0.0/21 ! -d 224.0.0.0/4 -j MASQUERADE
I0926 03:29:11.314413      89 ipmasq.go:51] Adding iptables rule: ! -s 10.105.0.0/21 -d 10.105.0.0/24 -j RETURN
I0926 03:29:11.323229      89 ipmasq.go:51] Adding iptables rule: ! -s 10.105.0.0/21 -d 10.105.0.0/21 -j MASQUERADE
I0926 03:29:11.329676      89 main.go:279] Wrote subnet file to /run/flannel/subnet.env
I0926 03:29:11.329746      89 main.go:284] Finished starting backend.
I0926 03:29:11.329829      89 vxlan_network.go:56] Watching for L3 misses
I0926 03:29:11.329903      89 vxlan_network.go:64] Watching for new subnet leases
EN

回答 1

Stack Overflow用户

发布于 2017-09-29 09:24:49

你以前做过kubeadm重置吗?如果是,请使用ip link检查ip链路

检查法兰绒网络是否正确,如果不正确,请使用ip link delete cni0 ip link delete flannel.1清理您的网络设置

祝好运!

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46404266

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档