连接到上游Nginx的AWS时,connect()失败(113:主机不可访问)

尼拉夫·莫迪

我知道这个问题被问过多次,并且与aws无关。

2020/07/29 10:23:17 [error] 6#6: *37749 connect() failed (113: Host is unreachable) while connecting to upstream, client: 

我在AWS云中部署了Nginx时遇到了这个问题。

定位配置

location /test {
         proxy_pass http://test-service;
         proxy_set_header HOST $host;
         proxy_set_header X-Forwarded-Proto $scheme;
         proxy_set_header X-Real-IP $remote_addr;
         proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
         }

上游部分如下

upstream test-service {
    server test-service.internal:38102;
    keepalive 10;
}

test-service.internal是我的route53托管区域条目,它指向一些internal application load balanceraws。

当我部署/重启nginx服务器时,它运行良好,但是几天(大约两三天)后,它将仅挂在代理阶段。当我加载html内容时,它可以正常工作,但代理pass调用卡住了。

有什么解决方案会有所帮助吗?

谢谢。

尼拉夫·莫迪

经过长时间的调试,我们发现nginx将缓存test-service.internalips。并且aws会更改其内部负载平衡器的ips。

因此,nginx缓存的ip不再存在。因此我们需要提供新的IP。

解:

nginx提供了resolver指令

location /test {
           resolver 10.0.0.2 127.0.0.1 valid=30s;
           set $backend_servers test-service.internal;
           proxy_pass http://$backend_servers:38102;
         #proxy_pass http://test-service;
         proxy_set_header HOST $host;
         proxy_set_header X-Forwarded-Proto $scheme;
         proxy_set_header X-Real-IP $remote_addr;
         proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
           proxy_http_version 1.1;
           proxy_set_header Connection "";
         }

我们已经改变了两件事。

  1. 添加了解析器。

  2. 已删除上游(nginx不支持解析器。nginx-plus支持带有解析器的上游)

    resolver 10.0.0.2 127.0.0.1 valid=30s;    
    set $backend_servers test-service.internal;
    proxy_pass http://$backend_servers:38102;
    

现在我们使用aws dns服务器每30秒进行一次10.0.0.2解析test-service.internal

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

nginx:连接到上游时,connect()失败(111:连接被拒绝)

来自分类Dev

连接到上游时connect()失败(111:连接被拒绝)

来自分类Dev

Elastic Beanstalk上的Docker-连接到上游时connect()失败(111:连接被拒绝)

来自分类Dev

连接到上游时,NodeJS connect()失败(111:连接被拒绝)

来自分类Dev

连接到上游时connect()失败(111:连接被拒绝)。Java(SparkJava)Amazon Elastic

来自分类Dev

连接到上游时docker nginx连接被拒绝

来自分类Dev

Nginx错误:(13:权限被拒绝)连接到上游时

来自分类Dev

wsgi nginx错误:连接到上游时权限被拒绝

来自分类Dev

502错误的网关:nginx,php5-fpm,175/209 connect()失败(111:连接被拒绝),同时连接到上游

来自分类Dev

Docker中NGINX和Gunicorn中的权限错误:连接到上游的connect()到Unix:/tmp/gunicorn.sock失败(13:权限被拒绝)

来自分类Dev

Nginx:(111:连接被拒绝),同时连接到上游

来自分类Dev

Nginx:(111:连接被拒绝),同时连接到上游

来自分类Dev

Nginx + uWsgi + Django'连接到上游时权限被拒绝'(套接字)

来自分类Dev

Elasticsearch:连接到上游时连接被拒绝

来自分类Dev

Elasticsearch:连接到上游时连接被拒绝

来自分类Dev

连接到上游时没有直播的上游,但可以上游

来自分类Dev

Rails / Nginx / Capistrano / Puma:(111:连接被拒绝),同时连接到上游

来自分类Dev

Gunicorn和django:连接()到unix:/home/ubuntu/webapps/kenyabuzz/kb.sock在连接到上游时失败(2:没有这样的文件或目录)

来自分类Dev

Nginx,django,gunicorn,ubuntu 14.04(13:权限被拒绝),同时连接到上游

来自分类Dev

在Docker容器内部上游连接到Node.js时,Nginx连接被拒绝

来自分类Dev

当主机不可访问时,跳过跳过失败模块

来自分类Dev

SSL验证连接到主机失败

来自分类Dev

nginx:配置文件/etc/nginx/nginx.conf测试失败(在上游找不到主机)

来自分类Dev

Ansible,连接到 AWS VPC 中的堡垒服务器,主机无法访问

来自分类Dev

Jenkins管道Git错误:连接到远程存储库时“主机密钥验证失败”

来自分类Dev

主机连接到wifi时对无业游民的VM的网络访问速度较慢

来自分类Dev

Nginx和上游:配置失败

来自分类Dev

nginx connect()失败(110:连接超时)

来自分类Dev

使用主机名连接到azurite失败

Related 相关文章

  1. 1

    nginx:连接到上游时,connect()失败(111:连接被拒绝)

  2. 2

    连接到上游时connect()失败(111:连接被拒绝)

  3. 3

    Elastic Beanstalk上的Docker-连接到上游时connect()失败(111:连接被拒绝)

  4. 4

    连接到上游时,NodeJS connect()失败(111:连接被拒绝)

  5. 5

    连接到上游时connect()失败(111:连接被拒绝)。Java(SparkJava)Amazon Elastic

  6. 6

    连接到上游时docker nginx连接被拒绝

  7. 7

    Nginx错误:(13:权限被拒绝)连接到上游时

  8. 8

    wsgi nginx错误:连接到上游时权限被拒绝

  9. 9

    502错误的网关:nginx,php5-fpm,175/209 connect()失败(111:连接被拒绝),同时连接到上游

  10. 10

    Docker中NGINX和Gunicorn中的权限错误:连接到上游的connect()到Unix:/tmp/gunicorn.sock失败(13:权限被拒绝)

  11. 11

    Nginx:(111:连接被拒绝),同时连接到上游

  12. 12

    Nginx:(111:连接被拒绝),同时连接到上游

  13. 13

    Nginx + uWsgi + Django'连接到上游时权限被拒绝'(套接字)

  14. 14

    Elasticsearch:连接到上游时连接被拒绝

  15. 15

    Elasticsearch:连接到上游时连接被拒绝

  16. 16

    连接到上游时没有直播的上游,但可以上游

  17. 17

    Rails / Nginx / Capistrano / Puma:(111:连接被拒绝),同时连接到上游

  18. 18

    Gunicorn和django:连接()到unix:/home/ubuntu/webapps/kenyabuzz/kb.sock在连接到上游时失败(2:没有这样的文件或目录)

  19. 19

    Nginx,django,gunicorn,ubuntu 14.04(13:权限被拒绝),同时连接到上游

  20. 20

    在Docker容器内部上游连接到Node.js时,Nginx连接被拒绝

  21. 21

    当主机不可访问时,跳过跳过失败模块

  22. 22

    SSL验证连接到主机失败

  23. 23

    nginx:配置文件/etc/nginx/nginx.conf测试失败(在上游找不到主机)

  24. 24

    Ansible,连接到 AWS VPC 中的堡垒服务器,主机无法访问

  25. 25

    Jenkins管道Git错误:连接到远程存储库时“主机密钥验证失败”

  26. 26

    主机连接到wifi时对无业游民的VM的网络访问速度较慢

  27. 27

    Nginx和上游:配置失败

  28. 28

    nginx connect()失败(110:连接超时)

  29. 29

    使用主机名连接到azurite失败

热门标签

归档