首页 > 数据库技术 > 详细

记录:一次使用私有LoadBalance provider,工具metallb的故障排除

时间:2019-12-25 14:03:32      阅读:181      评论:0      收藏:0      [点我收藏+]

     使用metallb工具,目的是为私有环境下,不借助GRE或Azure等云商的LB,

通过metallb-system工具IP池给k8s service提供external-ip。但是,由于设置metallb网段和k8s物理网段相同,

导致物理网络中已经使用的ip(比如192.168.3.1)被重复分配给k8s service。

这样,就导致了k8s 物理网络无法访问外网internet。

 

以下是具体的检查步骤和处理办法:

 

step 1:

首先删除metal-system命令空间下的所有资源(service/deployment/configmap/ns等)

root >> kubectl delete namespace metallb-system

 

step 2:

查询可能已经分配错误external-ip的服务service,然后先删除这些服务

root >> kubectl get service --all-namespaces

root >> kubectl delete service {svc_name} -n {ns_name}

技术分享图片

 

step 3:

重启旧的ingress-nginx-controller的pod,可以用delete pod方式实现。

root >> kubectl delete pod {ingress-nginx-controller_podname} -n ingress-nginx

技术分享图片

 

step 4:

重新检查k8s机器和外网的互通,检查OK如下:

技术分享图片

 

 

附录:

我记录在github的issue和自己处理的方法:

https://github.com/danderson/metallb/issues/512

 

记录:一次使用私有LoadBalance provider,工具metallb的故障排除

原文:https://www.cnblogs.com/itshare/p/12096060.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!