加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 运营中心 > Nginx > 正文

nuberx中的kubernetes dns解析器

发布时间:2020-12-13 21:26:23 所属栏目:Nginx 来源:网络整理
导读:我在docker-compose中本地开发,并且有一个nginx容器做一个简单的proxy_pass,如下所示: location /app/ { proxy_pass http://webapp:3000/; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection 'upgrade'; proxy

我在docker-compose中本地开发,并且有一个nginx容器做一个简单的proxy_pass,如下所示:

location /app/ {
    proxy_pass http://webapp:3000/;

    proxy_http_version 1.1;
    proxy_set_header Upgrade $http_upgrade;
    proxy_set_header Connection 'upgrade';
    proxy_set_header Host $host;
    proxy_cache_bypass $http_upgrade;

    resolver 127.0.0.11;
}

我现在想转到GKE的kubernetes,最后一行给我带来麻烦.

我试图将解析器切换为:

    resolver kube-dns;

我还尝试了各种其他的IP和名称,但我不断得到一个错误:

nginx: [emerg] host not found in resolver "kube-dns"

我的kubernetes设置是我有一个容器,有2个容器:’webapp’和’nginx’.我只想要一个指向nginx的外部服务,可以将proxy_pass指向webapp.

有任何想法吗?

最佳答案
如果nginx位于kubernetes内,则无需设置解析器,因为它将解析为正确的位置.如果nginx和webapp存在于同一名称空间中,您可以简单地进行操作

proxy_pass http://webapp

只要您的webapp的服务名称称为webapp并使用端口80.

如果nginx位于外部,那么您应该使用入口控件或将webapp的服务设置为nodeport.节点端口将在所有节点上打开相同的端口,因此您可以在nginx端在它们之间进行负载平衡.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读