c8722c49f1b14538dcd977287d62ca53.png

上家公司前同事问我在nginx中配置服务的dns,然后服务的service重新创建之后,访问丢失,发现服务访问的还是原来的ip地址,也就是nginx中的dns缓存问题

解决这个问题有两种思路

第一种:

让所有要访问的dns做一个变量的方式,每次nginx访问的时候都会重新加载dns

   set $TargetService http://target_servie_host:9000   location /anruy-front/ {            proxy_pass $TargetService;            proxy_set_header  X-Real-IP  $remote_addr;            proxy_set_header Host $host:1443;            proxy_http_version 1.1;            proxy_set_header Connection keep-alive;        proxy_set_header Keep-Alive 600;            keepalive_timeout 600;        }

第二种:

做一个主动平滑重启nginx的控制器

原理:监控service的变化然后reload nginx,这个需要有一定的开发基础,如果有同学需要这个类似的开发功能可以私下联系我,我这边帮您定制开发部署

Logo

K8S/Kubernetes社区为您提供最前沿的新闻资讯和知识内容

更多推荐