Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/email/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Kubernetes 似乎有什么东西正在捕获到播客的TCP流量_Kubernetes_Project Calico_Cni - Fatal编程技术网

Kubernetes 似乎有什么东西正在捕获到播客的TCP流量

Kubernetes 似乎有什么东西正在捕获到播客的TCP流量,kubernetes,project-calico,cni,Kubernetes,Project Calico,Cni,我正在尝试用印花布IPIP和Kubeadm部署Kubernetes。部署完成后,我将使用这些清单部署Calico kubectl apply -f https://docs.projectcalico.org/v3.3/getting-started/kubernetes/installation/hosted/rbac-kdd.yaml kubectl apply -f https://docs.projectcalico.org/v3.3/getting-started/kubernetes

我正在尝试用印花布IPIP和Kubeadm部署Kubernetes。部署完成后,我将使用这些清单部署Calico

kubectl apply -f https://docs.projectcalico.org/v3.3/getting-started/kubernetes/installation/hosted/rbac-kdd.yaml
kubectl apply -f https://docs.projectcalico.org/v3.3/getting-started/kubernetes/installation/hosted/kubernetes-datastore/calico-networking/1.7/calico.yaml
在应用它之前,我正在编辑CALICO_IPV4POOL_CIDR并将其设置为10.250.0.0/17,以及使用命令kubeadm init-pod CIDR 10.250.0.0/17

几秒钟后,CoreDNS pods(例如获取地址10.250.2.2)开始重新启动,错误为10.250.2.2:8080连接被拒绝

现在进行一点挖掘:

ping 10.250.2.2从集群中的任何节点开始工作,并到达pod网络名称空间中的pod tcpdump

从不同的pod到不同的节点,curl 10.250.2.2:8080运行良好

从任何节点到curl 10.250.2.2:8080失败,连接被拒绝

因为它是coredns pod,它在udp和tcp上侦听,所以我尝试了节点上的netcat

nc 10.250.2.2 53-连接被拒绝 nc-u 10.250.2.2 55-工程

现在我已经tcpdump了源节点上端口8080的每个接口,curl到CoreDNS pod似乎都没有离开节点。。。sooo iptables

我也试过编织、运河和法兰绒,似乎都有同样的问题


我现在已经没有主意了……有什么建议吗?

似乎是印花布实现的问题,CoreDNS吊舱对CNI网络吊舱的成功运行很敏感。 为了实现正确的网络插件,您必须在kubeadm init命令中包含-pod network cidr flag,然后在CALICO.yml中对CALICO_IPV4POOL_cidr参数应用相同的值

此外,对于成功的Pod网络安装,您必须应用一些规则,以获得符合一般群集安全限制的足够权限,如官方Kubernetes中所述:

要使印花布正常工作,您需要通过 -pod网络cidr=192.168.0.0/16到kubeadm init或更新calico.yml文件以匹配您的pod网络。请注意,印花布适用于 仅限amd64

在您的情况下,我会切换到最新的印花布版本,至少从v3.3版开始,如示例所示


如果您注意到您正确运行了Pod网络插件安装,请抓住机会,使用您当前的环境设置和具有健康状态的Kubernetes组件版本更新问题。

一次更新dig+notcp@10.250.0.2 www.google.com似乎无法正常工作,它超时了谢谢,我已经更改了版本,但问题似乎仍然存在。我看了一下旧的清单,它实际上使用了印花布节点主映像,但我现在将它绑定到了3.3。是的,没有什么真正有用的信息。IPIP设备有一些错误不存在,但在重试时已修复,几秒钟后,印花布看起来很高兴。您是否仍观察到印花布吊舱故障?印花布吊舱从未真正出现故障。一切正常,点对点的交通状况良好。Liveness探测器和readiness探测器似乎是唯一受影响的东西。您是否有端口8080暴露在Pod的节点主机上?
kubectl apply -f https://docs.projectcalico.org/v3.3/getting-started/kubernetes/installation/hosted/rbac-kdd.yaml
kubectl apply -f https://docs.projectcalico.org/v3.3/getting-started/kubernetes/installation/hosted/kubernetes-datastore/calico-networking/1.7/calico.yaml