问题描述
如何想通过 Pod 对外暴露的域名访问 VKE 内部的 Service 服务?
问题分析
可以通过 Coredns 劫持外部域名,REWITE 到内部的 service 域名,通过减少网络链路的消耗和程序的更改。
解决方案
编辑 coredns 的 configmap,命令如下:
kubectl edit cm coredns -nkube-system
#添加如下内容:
rwrite name regex (.*)-(us-west-1)\.example\.org {1}.service.{2}.default.svc.cluster.local
如果访问外部域名服务是ftp-us-west-1.example.org,那么转换如下:
Incoming Request Name: ftp-us-west-1.example.org
Rewritten Request Name: ftp.service.us-west-1.default.svc.cluster.local
参考资料
[1] https://coredns.io/plugins/rewrite/
如果您有其他问题,欢迎您联系火山引擎技术支持服务