苍穹nginx upstream转发失效的问题

问题描述
问题概述:mc初始化过程中前端界面无响应,直接返回502

背景:容器使用客户方自建的容器平台,自建的云平台只能提供Igress域名对外暴漏的模式
问题定位过程
首先,分析上面502报错,可能出现的异常环节有下面这几种可能
静态资源加载的问题
nginx服务或者配置问题
服务本身的问题
服务暴漏方式的问题
明确上面可能出现异常点之后,我们逐一排查,顺藤摸瓜
静态资源的排查,可以通过url中输入一个静态资源的路径,返回一个正常图片则说明加载正常
nginx这个是重头戏,我们排查方法看后面
服务本身是否有问题,可以通过登陆容器中,curl本机服务地址的方式返回30x则说明访问到服务中,被服务重定向所以返回303。说明服务正常 (curl http://127.0.0.1:8090/mc/ --head)
服务暴漏方式是否异常,通过在nginx中curl的方式如何和上面curl的返回一样则说明正常
nginx是否正常,通过curl nginx的地址发现返回40x,至此定位是nginx软件本身的问题。通过查看ngnix日志报错如下

根据上面报错预估为upstream模块失效,尝试config中所有proxy_pass直接抛给具体域名地址,而不使用upstream模块。最终问题解决
修改前
此时nginx内部的调用顺序为 3步调用
1、proxy_pass ===> 2、http://next-mc ===>3、upstream中的next-mc具体域名

upstream配置文件中的域名如下
[root@cnsz91vl03171 conf.d]# cat upstream.conf
upstream next-ierp {
server mservicetest-cmhk-fms-kdebg-di-fms-kdebg-mserice.apps.hk-ocp1.sit.cmhk.com:80;
check interval=3000 rise=2 fall=5 timeout=1000 type=tcp
苍穹nginx upstream转发失效的问题
声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。如若本站内容侵犯了原著者的合法权益,可联系本站删除。



