K8S解决外网链接问题
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了K8S解决外网链接问题相关的知识,希望对你有一定的参考价值。
目前阿里云已经禁止了K8S ingress对于负载均衡器的请求. 如按照网上某攻略依据AccessID+AccessKey的方式请求创建负载均衡服务将被返回"禁止外部请求"的字样.
目前k8s解决外部访问服务地址的方法主要分为两大方式:
- 请求云供应商的负载均衡借口
- 使用Nodeport分派外部到node上的具体端口上.
对于手工创建的k8s体系建议以以下方式创建外部ip用于内部的容器访问:
1.创建一个项目的svc, 由系统分派一个NodePort,
2.创建一个阿里云的负载均衡, 将该负载均衡指向到多台Node上的被指派的NodePort.
3.创建RC, 由RC在随机选择的Node上开创容器并实现外部到内部的通讯.
这里需要注意的是: 由于无法确定具体在哪一个Node上创建容器, 所以应该将所有Node的该项目Node端口都添加到负载均衡服务里.
同时, 由SVC创建的群集ip仅供K8s和Node内部通讯使用, 无法用作局域网连接或者请求.此群集ip不对ping telnet等任何应用做出响应, 所以也是无法作为错误判断的依据的.
如果不创建负载均衡服务, 则只能做到域名到其中一个Node上的Nodeport的指派,这样存在安全风险,并且基于域名的轮询也不好被管控与管理.
以上是关于K8S解决外网链接问题的主要内容,如果未能解决你的问题,请参考以下文章