Commit 6e21af2
ip双栈的情况下gc interface失败 + sts的pod在经过多次重启后偶现chassis和pod所在节点不匹配的gc (#6033)
* 问题描述
1.ip双栈的情况下gc interface失败;
2.sts下pod在经过重启以及扩缩容后偶现chassis和pod所在节点不匹配;
产生原因
1.gc Interface通过查询ovs interface表的name,external_ids,error值,然后通过逗号分隔,ip双栈的情况下external_ids 中会出现ip=ipv4,ipv6的值,多了个逗号,再用逗号分隔,解析时按顺序获取值就错位。
2.kube-ovn中缺少对pod的chassis和pod所在节点不匹配时interface的gc处理;
解决方法
调整拼接顺序为:“name,error,external_ids”,再用strings.splitN(x,“,”,3)只分割3部分,ip双栈被整个划分到第三部分,就不会影响解析;
在原gc逻辑中增加:当查询到pod时,再比对pod所在节点和当前cni所在节点是否一致,不一致则删除interface
优化查询:以前gc时会查所有的interface,现在只查不是up状态的(状态为down或空),减少处理的数据量。
* 问题描述
1.ip双栈的情况下gc interface失败;
2.sts下pod在经过重启以及扩缩容后偶现chassis和pod所在节点不匹配;
产生原因
1.gc Interface通过查询ovs interface表的name,external_ids,error值,然后通过逗号分隔,ip双栈的情况下external_ids 中会出现ip=ipv4,ipv6的值,多了个逗号,再用逗号分隔,解析时按顺序获取值就错位。
2.kube-ovn中缺少对pod的chassis和pod所在节点不匹配时interface的gc处理;
解决方法
调整拼接顺序为:“name,error,external_ids”,再用strings.splitN(x,“,”,3)只分割3部分,ip双栈被整个划分到第三部分,就不会影响解析;
在原gc逻辑中增加:当查询到pod时,再比对pod所在节点和当前cni所在节点是否一致,不一致则删除interface
优化查询:以前gc时会查所有的interface,现在只查不是up状态的(状态为down或空),减少处理的数据量。
* 去掉没用的引用包
Signed-off-by: mengyu <mengyu@unicloud.com>
* 问题描述
1.ip双栈的情况下gc interface失败;
2.sts下pod在经过重启以及扩缩容后偶现chassis和pod所在节点不匹配;
产生原因
1.gc Interface通过查询ovs interface表的name,external_ids,error值,然后通过逗号分隔,ip双栈的情况下external_ids 中会出现ip=ipv4,ipv6的值,多了个逗号,再用逗号分隔,解析时按顺序获取值就错位。
2.kube-ovn中缺少对pod的chassis和pod所在节点不匹配时interface的gc处理;
解决方法
调整拼接顺序为:“name,error,external_ids”,再用strings.splitN(x,“,”,3)只分割3部分,ip双栈被整个划分到第三部分,就不会影响解析;
在原gc逻辑中增加:当查询到pod时,再比对pod所在节点和当前cni所在节点是否一致,不一致则删除interface
优化查询:以前gc时会查所有的interface,现在只查不是up状态的(状态为down或空),减少处理的数据量。
Signed-off-by: mengyu <mengyu@unicloud.com>
* 问题描述
1.ip双栈的情况下gc interface失败;
2.sts下pod在经过重启以及扩缩容后偶现chassis和pod所在节点不匹配;
产生原因
1.gc Interface通过查询ovs interface表的name,external_ids,error值,然后通过逗号分隔,ip双栈的情况下external_ids 中会出现ip=ipv4,ipv6的值,多了个逗号,再用逗号分隔,解析时按顺序获取值就错位。
2.kube-ovn中缺少对pod的chassis和pod所在节点不匹配时interface的gc处理;
解决方法
调整拼接顺序为:“name,error,external_ids”,再用strings.splitN(x,“,”,3)只分割3部分,ip双栈被整个划分到第三部分,就不会影响解析;
在原gc逻辑中增加:当查询到pod时,再比对pod所在节点和当前cni所在节点是否一致,不一致则删除interface
优化查询:以前gc时会查所有的interface,现在只查不是up状态的(状态为down或空),减少处理的数据量。
Signed-off-by: mengyu <mengyu@unicloud.com>
* 去掉没用的引用包
Signed-off-by: mengyu <mengyu@unicloud.com>
Signed-off-by: mengyu <mengyu@unicloud.com>
* 增加空格
Signed-off-by: mengyu <mengyu@unicloud.com>
* fix lint issue
Signed-off-by: Mengxin Liu <liumengxinfly@gmail.com>
---------
Signed-off-by: mengyu <mengyu@unicloud.com>
Signed-off-by: Mengxin Liu <liumengxinfly@gmail.com>
Co-authored-by: mengyu <mengyu@unicloud.com>
Co-authored-by: Mengxin Liu <liumengxinfly@gmail.com>1 parent 7a3232c commit 6e21af2
2 files changed
+33
-23
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
760 | 760 | | |
761 | 761 | | |
762 | 762 | | |
763 | | - | |
| 763 | + | |
764 | 764 | | |
765 | 765 | | |
766 | 766 | | |
767 | 767 | | |
768 | | - | |
769 | | - | |
770 | | - | |
771 | | - | |
772 | | - | |
773 | | - | |
774 | | - | |
775 | | - | |
776 | | - | |
777 | | - | |
778 | | - | |
779 | | - | |
| 768 | + | |
| 769 | + | |
| 770 | + | |
| 771 | + | |
| 772 | + | |
| 773 | + | |
| 774 | + | |
| 775 | + | |
| 776 | + | |
| 777 | + | |
| 778 | + | |
| 779 | + | |
| 780 | + | |
| 781 | + | |
| 782 | + | |
| 783 | + | |
| 784 | + | |
| 785 | + | |
| 786 | + | |
| 787 | + | |
780 | 788 | | |
781 | | - | |
782 | | - | |
783 | | - | |
784 | | - | |
785 | | - | |
| 789 | + | |
| 790 | + | |
| 791 | + | |
| 792 | + | |
| 793 | + | |
| 794 | + | |
| 795 | + | |
786 | 796 | | |
787 | 797 | | |
788 | 798 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
240 | 240 | | |
241 | 241 | | |
242 | 242 | | |
243 | | - | |
244 | | - | |
| 243 | + | |
| 244 | + | |
245 | 245 | | |
246 | 246 | | |
247 | 247 | | |
| |||
252 | 252 | | |
253 | 253 | | |
254 | 254 | | |
255 | | - | |
| 255 | + | |
256 | 256 | | |
257 | 257 | | |
258 | 258 | | |
259 | 259 | | |
260 | | - | |
| 260 | + | |
261 | 261 | | |
262 | | - | |
| 262 | + | |
263 | 263 | | |
264 | 264 | | |
265 | 265 | | |
| |||
0 commit comments