我们也可以看到veth是成对出现的,比如进入到Pod,查看网络情况,在K8S-Master执行命令kubectl exec -it ingress-Nginx-controller-nginx-d864d97df-22ljk -n ingress-nginx -- ip addr,可以看到虚拟网卡的编号if19,如下情况:
# 回环网卡1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN qlen 1000link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00inet 127.0.0.1/8 scope host lovalid_lft forever preferred_lft forever# 虚拟网卡3: eth0@if19: <BROADCAST,MULTICAST,UP,LOWER_UP,M-DOWN> mtu 1440 qdisc noqueue state UPlink/ether 66:e5:5b:b6:77:9a brd ff:ff:ff:ff:ff:ffinet 10.21.69.212/32 scope global eth0valid_lft forever preferred_lft forever# 隧道网卡4: tunl0@NONE: <NOARP> mtu 1480 qdisc noop state DOWN qlen 1000link/ipip 0.0.0.0 brd 0.0.0.0在到这个Pod所在K8S-Node执行命令ip addr,可以看到有一个编号是19的cailixxxxx,如下情况:
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00inet 127.0.0.1/8 scope host lovalid_lft forever preferred_lft forever2: ens192: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000link/ether 00:50:56:95:c0:f4 brd ff:ff:ff:ff:ff:ffinet 10.20.1.24/24 brd 10.20.1.255 scope global noprefixroute ens192valid_lft forever preferred_lft forever3: docker0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN group defaultlink/ether 02:42:2c:ea:87:52 brd ff:ff:ff:ff:ff:ffinet 172.17.0.1/16 brd 172.17.255.255 scope global docker0valid_lft forever preferred_lft forever5: cali7359ae97a07@if3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1440 qdisc noqueue state UP group defaultlink/ether ee:ee:ee:ee:ee:ee brd ff:ff:ff:ff:ff:ff link-netnsid 16: cali763ea01ddd0@if3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1440 qdisc noqueue state UP group defaultlink/ether ee:ee:ee:ee:ee:ee brd ff:ff:ff:ff:ff:ff link-netnsid 28: cali0140629a81f@if3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1440 qdisc noqueue state UP group defaultlink/ether ee:ee:ee:ee:ee:ee brd ff:ff:ff:ff:ff:ff link-netnsid 410: calid3a5006f559@if3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1440 qdisc noqueue state UP group defaultlink/ether ee:ee:ee:ee:ee:ee brd ff:ff:ff:ff:ff:ff link-netnsid 611: calic2abb800440@if3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1440 qdisc noqueue state UP group defaultlink/ether ee:ee:ee:ee:ee:ee brd ff:ff:ff:ff:ff:ff link-netnsid 712: cali06eecb511af@if3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1440 qdisc noqueue state UP group defaultlink/ether ee:ee:ee:ee:ee:ee brd ff:ff:ff:ff:ff:ff link-netnsid 813: cali26321116fa3@if3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1440 qdisc noqueue state UP group defaultlink/ether ee:ee:ee:ee:ee:ee brd ff:ff:ff:ff:ff:ff link-netnsid 917: calia5d32a88758@if3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1440 qdisc noqueue state UP group defaultlink/ether ee:ee:ee:ee:ee:ee brd ff:ff:ff:ff:ff:ff link-netnsid 13# Pod内的eht0标记的是19号和这里的19号是配对的19: calib51fc1cd61e@if3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1440 qdisc noqueue state UP group defaultlink/ether ee:ee:ee:ee:ee:ee brd ff:ff:ff:ff:ff:ff link-netnsid 1520: cali5910af186a4@if3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1440 qdisc noqueue state UP group defaultlink/ether ee:ee:ee:ee:ee:ee brd ff:ff:ff:ff:ff:ff link-netnsid 1621: calie8b8d191185@if3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1440 qdisc noqueue state UP group defaultlink/ether ee:ee:ee:ee:ee:ee brd ff:ff:ff:ff:ff:ff link-netnsid 173.Calico的BGP模式:BGP 模式:将节点做为虚拟路由器通过 BGP 路由协议来实现集群内容器之间的网络访问 。不再创建额外的tunnel 。它会以daemonset方式安装在所有node主机,每台主机启动一个bird(BGP client),它会将calico网络内的所有node分配的ip段告知集群内的主机,并通过本机的默认网关的网卡(如:eth0)转发数据 BGP网络相比较IPIP网络,最大的不同之处就是没有了隧道设备 tunl0 。前面介绍过IPIP网络pod之间的流量发送到 tunl0,然后tunl0发送对端设备 。BGP网络中,pod之间的流量直接从网卡发送目的地,减少了tunl0这个环节 。
BGP模式下的通信流程,见下图:

文章插图

文章插图

文章插图
- BGP模式的优点:少了封包和解包的过程,性能高一些 。
- BGP模式的缺点:需要维护更多的路由规则 。
- IPIP隧道模式的优点:简单,原因是大部分工作都是由 Linux 内核的模块实现了,应用层面工作量较少 。
推荐阅读
- 爱上AI伴侣,“AI情”是不是爱情?
- 何炅被保姆实名举报,更多内幕被揭开,堪称现实版农夫与蛇
- 刘宇宁疑似偷偷跑去杭州与杨超越玩密室逃脱,粉丝吐槽是和小女友约会
- 怎么与孩子沟通 怎么与孩子沟通的书籍
- 生苹果与熟苹果吃有什么区别 苹果生吃和煮熟了吃有什么区别
- baby与小海绵教室互动画面曝光,疑搞明星特权被嘲,儿子正脸曝光
- 霸总配萝莉!曝48岁小李子再添新欢,与25岁超模女友夜店拥吻被拍
- 林心如与身孕8个月Selina嬉游,骑车梳公主头,完全不像47岁!
- 同是“香港之子”却终生不合作,这37年,成龙与周润发活得可真累
- 单纯的蛋白粉和复合蛋白粉的区别 蛋白粉与复合蛋白粉有什么区别
