背景
K8S 集群部署在云中,此时为公网,但国内大型企业或国企的内部系统部署在内网,正常情况下在公网与内部局域网中会搭建专线已方便服务调用,但某些情况下需要手动设置容器的 DNS 以调用内部服务接口。具体表现形式为: 能 ping 通目标主机,但使用 curl 返回 403.
正文
解决方案有多种:1.要求网络工程师开发所属服务器公网 IP 访问内网权限 2.设置容器的 DNS(设置所属服务器 DNS 也可,容器中会使用物理机的配置,但我这边的环境设置了物理机的 DNS 容器中还是访问不了接口)
1.配置 coredns
sudo kubectl edit configmap coredns -n kube-system
2. 添加 dns ,多个使用空格分隔
3.应用 cofigmap 到 coredns
sudo kubectl scale deployment coredns -n kube-system --replicas=0
sudo kubectl scale deployment coredns -n kube-system --replicas=2
4.测试验证
进入容器 curl 目标接口查看是否调用成功
标签:容器,kube,添加,DNS,公网,coredns,K8S From: https://www.cnblogs.com/sqzy/p/17000526.html