HTTP Response 502 in K8s, Message: an invalid response was received from the upstream server

在 K8s 中 HTTP 响应 502 Bad Gateway,message:An invalid response was received from the upstream server。从上游服务器收到无效响应。502 Bad Gateway 错误具体表示服务器收到来自入站服务器的无效响应。kong/2.5.0。
1. In K8S, the HTTP response 502 Bad Gateway, Message: an invalid response was received from the upstream server. Received an invalid response from the upstream server. 502 Bad Gateway error specifically indicates that the server received an invalid response from the inbound server. Kong/2.5.0. as shown in Figure 1
在 K8s 中 HTTP 响应 502 Bad Gateway,message:An invalid response was received from the upstream server。从上游服务器收到无效响应。502 Bad Gateway 错误具体表示服务器收到来自入站服务器的无效响应。kong/2.5.0。
Figure 1
2. The reason is that the GET request parameters are too many, and the number of parameters is too large. The total number of words is more than 1300.



{{host_info}}{{base_url}}/v{{module}}/task-group-channel-app-sources?filter[group_id]={{group_id}}&filter[channel_type_code][in][0]=vtt_douyin&filter[channel_type_code][in][1]=vtt_douyin_pro&filter[channel_type_code][in][2]=vtt_kuaishou&filter[channel_type_code][in][3]=vtt_kuaishou_pro&filter[channel_type_code][in][4]=vtt_baijia&filter[channel_type_code][in][5]=vtt_baijia_pro&filter[channel_type_code][in][6]=vtt_dayu&filter[channel_type_code][in][7]=vtt_dayu_pro&filter[channel_type_code][in][8]=vtt_qq&filter[channel_type_code][in][9]=vtt_yidian&filter[channel_type_code][in][10]=vtt_qutoutiao&filter[channel_type_code][in][11]=vtt_miaopai&filter[channel_type_code][in][12]=vtt_meipai&filter[channel_type_code][in][13]=vtt_rrtv&filter[channel_type_code][in][14]=vtt_sohutv&filter[channel_type_code][in][15]=vtt_sohu&filter[channel_type_code][in][16]=vtt_acfun&filter[channel_type_code][in][17]=vtt_yinyuetai&filter[channel_type_code][in][18]=vtt_neteasemusic&filter[channel_type_code][in][19]=vtt_cashtoutiao&filter[channel_type_code][in][20]=vtt_dianping&filter[channel_type_code][in][21]=vtt_weibo&filter[channel_type_code][in][22]=vtt_sina&filter[channel_type_code][in][23]=vtt_iqiyi&filter[channel_type_code][in][24]=vtt_toutiao_pro&filter[channel_type_code][in][25]=vtt_bilibili&filter[channel_type_code][in][26]=vtt_netease&filter[channel_type_code][in][27]=vtt_sogou&per-page=100&group_id={{group_id}}


filter[channel_type_code][in][0]:vtt_douyin
filter[channel_type_code][in][1]:vtt_douyin_pro
filter[channel_type_code][in][2]:vtt_kuaishou
filter[channel_type_code][in][3]:vtt_kuaishou_pro
filter[channel_type_code][in][4]:vtt_baijia
filter[channel_type_code][in][5]:vtt_baijia_pro
filter[channel_type_code][in][6]:vtt_dayu
filter[channel_type_code][in][7]:vtt_dayu_pro
filter[channel_type_code][in][8]:vtt_qq
filter[channel_type_code][in][9]:vtt_yidian
filter[channel_type_code][in][10]:vtt_qutoutiao
filter[channel_type_code][in][11]:vtt_miaopai
filter[channel_type_code][in][12]:vtt_meipai
filter[channel_type_code][in][13]:vtt_rrtv
filter[channel_type_code][in][14]:vtt_sohutv
filter[channel_type_code][in][15]:vtt_sohu
filter[channel_type_code][in][16]:vtt_acfun
filter[channel_type_code][in][17]:vtt_yinyuetai
filter[channel_type_code][in][18]:vtt_neteasemusic
filter[channel_type_code][in][19]:vtt_cashtoutiao
filter[channel_type_code][in][20]:vtt_dianping
filter[channel_type_code][in][21]:vtt_weibo
filter[channel_type_code][in][22]:vtt_sina
filter[channel_type_code][in][23]:vtt_iqiyi
filter[channel_type_code][in][24]:vtt_toutiao_pro
filter[channel_type_code][in][25]:vtt_bilibili
filter[channel_type_code][in][26]:vtt_netease
filter[channel_type_code][in][27]:vtt_sogou


3. A total of 28 request parameters, deleted to 14. Response 200. as shown in Figure 2
总计 28 个请求参数,删减为 14 个。响应 200。
Figure 2
4. Check the nginx log in the container, and determine that the interface response is 502, but it is actually a response of 200. as shown in Figure 3
查看容器中的 Nginx 日志,确定接口响应 502 时候,实际是响应 200 的。
Figure 3


{"environment-info":{"pod-id":"api-7cc8cc4c9c-hx89x","namespace":"ccp","pod-ip":"10.42.4.155","pod-hostip":"192.168.3.14"},"request":{"headers":{"referer":"-","host":"api.ccp","x-request-id":"156f0a80cc88c1ee0bb79b1f06d777f1","x-forwarded-for":"101.207.139.251, 10.42.0.231","user-agent":"PostmanRuntime/7.28.4"},"method":"GET","uri":"/v1/task-group-channel-app-sources?filter[group_id]=6c8b55e7387da4799772ddb389f06753&filter[channel_type_code][in][0]=vtt_douyin&filter[channel_type_code][in][1]=vtt_douyin_pro&filter[channel_type_code][in][2]=vtt_kuaishou&filter[channel_type_code][in][3]=vtt_kuaishou_pro&filter[channel_type_code][in][4]=vtt_baijia&filter[channel_type_code][in][5]=vtt_baijia_pro&filter[channel_type_code][in][6]=vtt_dayu&filter[channel_type_code][in][7]=vtt_dayu_pro&filter[channel_type_code][in][8]=vtt_qq&filter[channel_type_code][in][9]=vtt_yidian&filter[channel_type_code][in][10]=vtt_qutoutiao&filter[channel_type_code][in][11]=vtt_miaopai&filter[channel_type_code][in][12]=vtt_meipai&filter[channel_type_code][in][13]=vtt_rrtv&filter[channel_type_code][in][14]=vtt_sohutv&filter[channel_type_code][in][15]=vtt_sohu&filter[channel_type_code][in][16]=vtt_acfun&filter[channel_type_code][in][17]=vtt_yinyuetai&filter[channel_type_code][in][18]=vtt_neteasemusic&filter[channel_type_code][in][19]=vtt_cashtoutiao&filter[channel_type_code][in][20]=vtt_dianping&filter[channel_type_code][in][21]=vtt_weibo&filter[channel_type_code][in][22]=vtt_sina&filter[channel_type_code][in][23]=vtt_iqiyi&filter[channel_type_code][in][24]=vtt_toutiao_pro&filter[channel_type_code][in][25]=vtt_bilibili&filter[channel_type_code][in][26]=vtt_netease&filter[channel_type_code][in][27]=vtt_sogou&per-page=100&group_id=6c8b55e7387da4799772ddb389f06753","url":"http://api.ccp/v1/task-group-channel-app-sources?filter[group_id]=6c8b55e7387da4799772ddb389f06753&filter[channel_type_code][in][0]=vtt_douyin&filter[channel_type_code][in][1]=vtt_douyin_pro&filter[channel_type_code][in][2]=vtt_kuaishou&filter[channel_type_code][in][3]=vtt_kuaishou_pro&filter[channel_type_code][in][4]=vtt_baijia&filter[channel_type_code][in][5]=vtt_baijia_pro&filter[channel_type_code][in][6]=vtt_dayu&filter[channel_type_code][in][7]=vtt_dayu_pro&filter[channel_type_code][in][8]=vtt_qq&filter[channel_type_code][in][9]=vtt_yidian&filter[channel_type_code][in][10]=vtt_qutoutiao&filter[channel_type_code][in][11]=vtt_miaopai&filter[channel_type_code][in][12]=vtt_meipai&filter[channel_type_code][in][13]=vtt_rrtv&filter[channel_type_code][in][14]=vtt_sohutv&filter[channel_type_code][in][15]=vtt_sohu&filter[channel_type_code][in][16]=vtt_acfun&filter[channel_type_code][in][17]=vtt_yinyuetai&filter[channel_type_code][in][18]=vtt_neteasemusic&filter[channel_type_code][in][19]=vtt_cashtoutiao&filter[channel_type_code][in][20]=vtt_dianping&filter[channel_type_code][in][21]=vtt_weibo&filter[channel_type_code][in][22]=vtt_sina&filter[channel_type_code][in][23]=vtt_iqiyi&filter[channel_type_code][in][24]=vtt_toutiao_pro&filter[channel_type_code][in][25]=vtt_bilibili&filter[channel_type_code][in][26]=vtt_netease&filter[channel_type_code][in][27]=vtt_sogou&per-page=100&group_id=6c8b55e7387da4799772ddb389f06753","@timestamp":"2021-09-30T13:28:24+08:00","upstreamaddr":"127.0.0.1:9000","response":{"responsetime":"0.430","upstream-response-time":"0.430"},"size":"0","status":"200"},"module-name":"default_ccp_api"}


5. Decide to call this interface in another container and skip the Kong gateway. Error: curl: (3)[globbing]Error: Bad Range Specification After POS 60. as shown in Figure 4
决定在另外一台容器中调用此接口,跳过 Kong 网关。报错:curl: (3) [globbing] error: bad range specification after pos 60。
Figure 4


curl "http://api.ccp:82/v1/task-group-channel-app-sources?filter[group_id]=6c8b55e7387da4799772ddb389f06753&filter[channel_type_code][in][0]=vtt_douyin&filter[channel_type_code][in][1]=vtt_douyin_pro&filter[channel_type_code][in][2]=vtt_kuaishou&filter[channel_type_code][in][3]=vtt_kuaishou_pro&filter[channel_type_code][in][4]=vtt_baijia&filter[channel_type_code][in][5]=vtt_baijia_pro&filter[channel_type_code][in][6]=vtt_dayu&filter[channel_type_code][in][7]=vtt_dayu_pro&filter[channel_type_code][in][8]=vtt_qq&filter[channel_type_code][in][9]=vtt_yidian&filter[channel_type_code][in][10]=vtt_qutoutiao&filter[channel_type_code][in][11]=vtt_miaopai&filter[channel_type_code][in][12]=vtt_meipai&filter[channel_type_code][in][13]=vtt_rrtv&filter[channel_type_code][in][14]=vtt_sohutv&filter[channel_type_code][in][15]=vtt_sohu&filter[channel_type_code][in][16]=vtt_acfun&filter[channel_type_code][in][17]=vtt_yinyuetai&filter[channel_type_code][in][18]=vtt_neteasemusic&filter[channel_type_code][in][19]=vtt_cashtoutiao&filter[channel_type_code][in][20]=vtt_dianping&filter[channel_type_code][in][21]=vtt_weibo&filter[channel_type_code][in][22]=vtt_sina&filter[channel_type_code][in][23]=vtt_iqiyi&filter[channel_type_code][in][24]=vtt_toutiao_pro&filter[channel_type_code][in][25]=vtt_bilibili&filter[channel_type_code][in][26]=vtt_netease&filter[channel_type_code][in][27]=vtt_sogou&per-page=100&group_id=6c8b55e7387da4799772ddb389f06753"


6. Will[ 与 ]Add \ earlier, the final request, and the response is successful. as shown in Figure 5
将 [ 与 ] 前面添加 \,最终请求,响应成功。
Figure 5


[root@api-console-migrate-6fc4566467-qbfch /]# curl "http://api.ccp:82/v1/task-group-channel-app-sources?filter\[group_id\]=6c8b55e7387da4799772ddb389f06753&filter\[channel_type_code\]\[in\]\[0\]=vtt_douyin&filter\[channel_type_code\]\[in\]\[1\]=vtt_douyin_pro&filter\[channel_type_code\]\[in\]\[2\]=vtt_kuaishou&filter\[channel_type_code\]\[in\]\[3\]=vtt_kuaishou_pro&filter\[channel_type_code\]\[in\]\[4\]=vtt_baijia&filter\[channel_type_code\]\[in\]\[5\]=vtt_baijia_pro&filter\[channel_type_code\]\[in\]\[6\]=vtt_dayu&filter\[channel_type_code\]\[in\]\[7\]=vtt_dayu_pro&filter\[channel_type_code\]\[in\]\[8\]=vtt_qq&filter\[channel_type_code\]\[in\]\[9\]=vtt_yidian&filter\[channel_type_code\]\[in\]\[10\]=vtt_qutoutiao&filter\[channel_type_code\]\[in\]\[11\]=vtt_miaopai&filter\[channel_type_code\]\[in\]\[12\]=vtt_meipai&filter\[channel_type_code\]\[in\]\[13\]=vtt_rrtv&filter\[channel_type_code\]\[in\]\[14\]=vtt_sohutv&filter\[channel_type_code\]\[in\]\[15\]=vtt_sohu&filter\[channel_type_code\]\[in\]\[16\]=vtt_acfun&filter\[channel_type_code\]\[in\]\[17\]=vtt_yinyuetai&filter\[channel_type_code\]\[in\]\[18\]=vtt_neteasemusic&filter\[channel_type_code\]\[in\]\[19\]=vtt_cashtoutiao&filter\[channel_type_code\]\[in\]\[20\]=vtt_dianping&filter\[channel_type_code\]\[in\]\[21\]=vtt_weibo&filter\[channel_type_code\]\[in\]\[22\]=vtt_sina&filter\[channel_type_code\]\[in\]\[23\]=vtt_iqiyi&filter\[channel_type_code\]\[in\]\[24\]=vtt_toutiao_pro&filter\[channel_type_code\]\[in\]\[25\]=vtt_bilibili&filter\[channel_type_code\]\[in\]\[26\]=vtt_netease&filter\[channel_type_code\]\[in\]\[27\]=vtt_sogou&per-page=100&group_id=6c8b55e7387da4799772ddb389f06753"
{"code":10000,"message":"获取任务组的渠道的应用的来源的树形列表成功","data":{"items":[{"channel_code":"douyin","channel_name":"抖音","channel_type_code":"vtt_douyin_pro","channel_type_name":"视频兔兔的抖音PRO应用","channel_app_items":[{"group_id":"6c8b55e7387da4799772ddb389f06753","group_name":"省宣传部","uuid":"60e74fd01f6711ecaded82f5728d7d34","channel_code":"douyin","channel_type_code":"vtt_douyin_pro","name":"小燕子","avatar":"https://p3.douyinpic.com/aweme/1080x1080/31a3d00061fd573c41210.jpeg?from=4010531038","fans_count":0,"source":"scms","source_uuid":"b7498f517f48cab91408685674cabbac","source_product_id":"","source_user_token":"","permission":2,"refreshed_at":"0","status":1,"created_at":1632728941,"is_pub_able":1,"is_pub_message":"","channel_name":"抖音","channel_type_name":"视频兔兔的抖音PRO应用","channel_app_name":"小燕子"}]},{"channel_code":"kuaishou","channel_name":"快手","channel_type_code":"vtt_kuaishou_pro","channel_type_name":"视频兔兔的快手PRO应用","channel_app_items":[{"group_id":"6c8b55e7387da4799772ddb389f06753","group_name":"省宣传部","uuid":"4be7fa9e1f6711ecb02ca571b56d3826","channel_code":"kuaishou","channel_type_code":"vtt_kuaishou_pro","name":"User_1611141497927","avatar":"http://head-img.videototo.com/new_100009445_kuaishoupro_100025305","fans_count":0,"source":"scms","source_uuid":"b7498f517f48cab91408685674cabbac","source_product_id":"","source_user_token":"","permission":2,"refreshed_at":"0","status":1,"created_at":1632728906,"is_pub_able":1,"is_pub_message":"","channel_name":"快手","channel_type_name":"视频兔兔的快手PRO应用","channel_app_name":"User_1611141497927"}]},{"channel_code":"toutiao","channel_name":"头条号","channel_type_code":"vtt_toutiao_pro","channel_type_name":"视频兔兔的头条号PRO应用","channel_app_items":[{"group_id":"6c8b55e7387da4799772ddb389f06753","group_name":"省宣传部","uuid":"9af35d8a1f6311ecb6b115ad3c194da2","channel_code":"toutiao","channel_type_code":"vtt_toutiao_pro","name":"编辑器验证","avatar":"https://p3-passport.byteacctimg.com/img/user-avatar/2x_21863502d9f118168ad71160d7070b7b~300x300.image","fans_count":0,"source":"scms","source_uuid":"b7498f517f48cab91408685674cabbac","source_product_id":"","source_user_token":"","permission":2,"refreshed_at":"0","status":1,"created_at":1632727321,"is_pub_able":1,"is_pub_message":"","channel_name":"头条号","channel_type_name":"视频兔兔的头条号PRO应用","channel_app_name":"编辑器验证"}]},{"channel_code":"yidian","channel_name":"一点号","channel_type_code":"vtt_yidian","channel_type_name":"视频兔兔的一点号应用","channel_app_items":[{"group_id":"6c8b55e7387da4799772ddb389f06753","group_name":"省宣传部","uuid":"f0b531e41f4f11eca4df8bbcc22e30e6","channel_code":"yidian","channel_type_code":"vtt_yidian","name":"打工人1号","avatar":"http://head-img.videototo.com/Fpo_0phXgaUEMV5rxcB6LDw-bxb2","fans_count":0,"source":"scms","source_uuid":"b7498f517f48cab91408685674cabbac","source_product_id":"","source_user_token":"","permission":2,"refreshed_at":"0","status":1,"created_at":1632718878,"is_pub_able":1,"is_pub_message":"","channel_name":"一点号","channel_type_name":"视频兔兔的一点号应用","channel_app_name":"打工人1号"}]},{"channel_code":"bilibili","channel_name":"哔哩哔哩","channel_type_code":"vtt_bilibili","channel_type_name":"视频兔兔的哔哩哔哩应用","channel_app_items":[{"group_id":"6c8b55e7387da4799772ddb389f06753","group_name":"省宣传部","uuid":"202cf6cc1f4711ecacc51ebe835c0f9a","channel_code":"bilibili","channel_type_code":"vtt_bilibili","name":"小燕子_bili","avatar":"http://head-img.videototo.com/FgMEsVrcqD5DidOIkiGgZNHQAbYf","fans_count":0,"source":"scms","source_uuid":"b7498f517f48cab91408685674cabbac","source_product_id":"","source_user_token":"","permission":2,"refreshed_at":"0","status":1,"created_at":1632715089,"is_pub_able":1,"is_pub_message":"","channel_name":"哔哩哔哩","channel_type_name":"视频兔兔的哔哩哔哩应用","channel_app_name":"小燕子_bili"}]},{"channel_code":"dayu","channel_name":"大鱼号","channel_type_code":"vtt_dayu_pro","channel_type_name":"视频兔兔的大鱼号PRO应用","channel_app_items":[{"group_id":"6c8b55e7387da4799772ddb389f06753","group_name":"省宣传部","uuid":"5e7fd6be1f4311ec92a5417c9aac2b41","channel_code":"dayu","channel_type_code":"vtt_dayu_pro","name":"快乐萌萌","avatar":"http://head-img.videototo.com/Fq5BSc10S9rvn4doFQ--JU8hAeZL","fans_count":0,"source":"scms","source_uuid":"b7498f517f48cab91408685674cabbac","source_product_id":"","source_user_token":"","permission":2,"refreshed_at":"0","status":1,"created_at":1632713490,"is_pub_able":1,"is_pub_message":"","channel_name":"大鱼号","channel_type_name":"视频兔兔的大鱼号PRO应用","channel_app_name":"快乐萌萌"}]}],"_links":{"self":{"href":"http://api.ccp:82/v1/task-group-channel-app-sources?filter%5Bgroup_id%5D=6c8b55e7387da4799772ddb389f06753&filter%5Bchannel_type_code%5D%5Bin%5D%5B0%5D=vtt_douyin&filter%5Bchannel_type_code%5D%5Bin%5D%5B1%5D=vtt_douyin_pro&filter%5Bchannel_type_code%5D%5Bin%5D%5B2%5D=vtt_kuaishou&filter%5Bchannel_type_code%5D%5Bin%5D%5B3%5D=vtt_kuaishou_pro&filter%5Bchannel_type_code%5D%5Bin%5D%5B4%5D=vtt_baijia&filter%5Bchannel_type_code%5D%5Bin%5D%5B5%5D=vtt_baijia_pro&filter%5Bchannel_type_code%5D%5Bin%5D%5B6%5D=vtt_dayu&filter%5Bchannel_type_code%5D%5Bin%5D%5B7%5D=vtt_dayu_pro&filter%5Bchannel_type_code%5D%5Bin%5D%5B8%5D=vtt_qq&filter%5Bchannel_type_code%5D%5Bin%5D%5B9%5D=vtt_yidian&filter%5Bchannel_type_code%5D%5Bin%5D%5B10%5D=vtt_qutoutiao&filter%5Bchannel_type_code%5D%5Bin%5D%5B11%5D=vtt_miaopai&filter%5Bchannel_type_code%5D%5Bin%5D%5B12%5D=vtt_meipai&filter%5Bchannel_type_code%5D%5Bin%5D%5B13%5D=vtt_rrtv&filter%5Bchannel_type_code%5D%5Bin%5D%5B14%5D=vtt_sohutv&filter%5Bchannel_type_code%5D%5Bin%5D%5B15%5D=vtt_sohu&filter%5Bchannel_type_code%5D%5Bin%5D%5B16%5D=vtt_acfun&filter%5Bchannel_type_code%5D%5Bin%5D%5B17%5D=vtt_yinyuetai&filter%5Bchannel_type_code%5D%5Bin%5D%5B18%5D=vtt_neteasemusic&filter%5Bchannel_type_code%5D%5Bin%5D%5B19%5D=vtt_cashtoutiao&filter%5Bchannel_type_code%5D%5Bin%5D%5B20%5D=vtt_dianping&filter%5Bchannel_type_code%5D%5Bin%5D%5B21%5D=vtt_weibo&filter%5Bchannel_type_code%5D%5Bin%5D%5B22%5D=vtt_sina&filter%5Bchannel_type_code%5D%5Bin%5D%5B23%5D=vtt_iqiyi&filter%5Bchannel_type_code%5D%5Bin%5D%5B24%5D=vtt_toutiao_pro&filter%5Bchannel_type_code%5D%5Bin%5D%5B25%5D=vtt_bilibili&filter%5Bchannel_type_code%5D%5Bin%5D%5B26%5D=vtt_netease&filter%5Bchannel_type_code%5D%5Bin%5D%5B27%5D=vtt_sogou&per-page=6&group_id=6c8b55e7387da4799772ddb389f06753&page=1"},"first":{"href":"http://api.ccp:82/v1/task-group-channel-app-sources?filter%5Bgroup_id%5D=6c8b55e7387da4799772ddb389f06753&filter%5Bchannel_type_code%5D%5Bin%5D%5B0%5D=vtt_douyin&filter%5Bchannel_type_code%5D%5Bin%5D%5B1%5D=vtt_douyin_pro&filter%5Bchannel_type_code%5D%5Bin%5D%5B2%5D=vtt_kuaishou&filter%5Bchannel_type_code%5D%5Bin%5D%5B3%5D=vtt_kuaishou_pro&filter%5Bchannel_type_code%5D%5Bin%5D%5B4%5D=vtt_baijia&filter%5Bchannel_type_code%5D%5Bin%5D%5B5%5D=vtt_baijia_pro&filter%5Bchannel_type_code%5D%5Bin%5D%5B6%5D=vtt_dayu&filter%5Bchannel_type_code%5D%5Bin%5D%5B7%5D=vtt_dayu_pro&filter%5Bchannel_type_code%5D%5Bin%5D%5B8%5D=vtt_qq&filter%5Bchannel_type_code%5D%5Bin%5D%5B9%5D=vtt_yidian&filter%5Bchannel_type_code%5D%5Bin%5D%5B10%5D=vtt_qutoutiao&filter%5Bchannel_type_code%5D%5Bin%5D%5B11%5D=vtt_miaopai&filter%5Bchannel_type_code%5D%5Bin%5D%5B12%5D=vtt_meipai&filter%5Bchannel_type_code%5D%5Bin%5D%5B13%5D=vtt_rrtv&filter%5Bchannel_type_code%5D%5Bin%5D%5B14%5D=vtt_sohutv&filter%5Bchannel_type_code%5D%5Bin%5D%5B15%5D=vtt_sohu&filter%5Bchannel_type_code%5D%5Bin%5D%5B16%5D=vtt_acfun&filter%5Bchannel_type_code%5D%5Bin%5D%5B17%5D=vtt_yinyuetai&filter%5Bchannel_type_code%5D%5Bin%5D%5B18%5D=vtt_neteasemusic&filter%5Bchannel_type_code%5D%5Bin%5D%5B19%5D=vtt_cashtoutiao&filter%5Bchannel_type_code%5D%5Bin%5D%5B20%5D=vtt_dianping&filter%5Bchannel_type_code%5D%5Bin%5D%5B21%5D=vtt_weibo&filter%5Bchannel_type_code%5D%5Bin%5D%5B22%5D=vtt_sina&filter%5Bchannel_type_code%5D%5Bin%5D%5B23%5D=vtt_iqiyi&filter%5Bchannel_type_code%5D%5Bin%5D%5B24%5D=vtt_toutiao_pro&filter%5Bchannel_type_code%5D%5Bin%5D%5B25%5D=vtt_bilibili&filter%5Bchannel_type_code%5D%5Bin%5D%5B26%5D=vtt_netease&filter%5Bchannel_type_code%5D%5Bin%5D%5B27%5D=vtt_sogou&per-page=6&group_id=6c8b55e7387da4799772ddb389f06753&page=1"},"last":{"href":"http://api.ccp:82/v1/task-group-channel-app-sources?filter%5Bgroup_id%5D=6c8b55e7387da4799772ddb389f06753&filter%5Bchannel_type_code%5D%5Bin%5D%5B0%5D=vtt_douyin&filter%5Bchannel_type_code%5D%5Bin%5D%5B1%5D=vtt_douyin_pro&filter%5Bchannel_type_code%5D%5Bin%5D%5B2%5D=vtt_kuaishou&filter%5Bchannel_type_code%5D%5Bin%5D%5B3%5D=vtt_kuaishou_pro&filter%5Bchannel_type_code%5D%5Bin%5D%5B4%5D=vtt_baijia&filter%5Bchannel_type_code%5D%5Bin%5D%5B5%5D=vtt_baijia_pro&filter%5Bchannel_type_code%5D%5Bin%5D%5B6%5D=vtt_dayu&filter%5Bchannel_type_code%5D%5Bin%5D%5B7%5D=vtt_dayu_pro&filter%5Bchannel_type_code%5D%5Bin%5D%5B8%5D=vtt_qq&filter%5Bchannel_type_code%5D%5Bin%5D%5B9%5D=vtt_yidian&filter%5Bchannel_type_code%5D%5Bin%5D%5B10%5D=vtt_qutoutiao&filter%5Bchannel_type_code%5D%5Bin%5D%5B11%5D=vtt_miaopai&filter%5Bchannel_type_code%5D%5Bin%5D%5B12%5D=vtt_meipai&filter%5Bchannel_type_code%5D%5Bin%5D%5B13%5D=vtt_rrtv&filter%5Bchannel_type_code%5D%5Bin%5D%5B14%5D=vtt_sohutv&filter%5Bchannel_type_code%5D%5Bin%5D%5B15%5D=vtt_sohu&filter%5Bchannel_type_code%5D%5Bin%5D%5B16%5D=vtt_acfun&filter%5Bchannel_type_code%5D%5Bin%5D%5B17%5D=vtt_yinyuetai&filter%5Bchannel_type_code%5D%5Bin%5D%5B18%5D=vtt_neteasemusic&filter%5Bchannel_type_code%5D%5Bin%5D%5B19%5D=vtt_cashtoutiao&filter%5Bchannel_type_code%5D%5Bin%5D%5B20%5D=vtt_dianping&filter%5Bchannel_type_code%5D%5Bin%5D%5B21%5D=vtt_weibo&filter%5Bchannel_type_code%5D%5Bin%5D%5B22%5D=vtt_sina&filter%5Bchannel_type_code%5D%5Bin%5D%5B23%5D=vtt_iqiyi&filter%5Bchannel_type_code%5D%5Bin%5D%5B24%5D=vtt_toutiao_pro&filter%5Bchannel_type_code%5D%5Bin%5D%5B25%5D=vtt_bilibili&filter%5Bchannel_type_code%5D%5Bin%5D%5B26%5D=vtt_netease&filter%5Bchannel_type_code%5D%5Bin%5D%5B27%5D=vtt_sogou&per-page=6&group_id=6c8b55e7387da4799772ddb389f06753&page=1"}},"_meta":{"totalCount":6,"pageCount":1,"currentPage":1,"perPage":6}}}[root@api-console-migrate-6fc4566467-qbfch /]# 


7. After decreasing to 18 parameters, it can respond normally to 200. The total number is 918 characters. Although there are no restrictions specified by the official RFC 2616, many security protocols and recommendations stipulate that the MaxQueryStrings on the server should be set to the maximum character limit of 1024. And the entire URL, including the query string, should be set to the maximum 2048 .


{{host_info}}{{base_url}}/v{{module}}/task-group-channel-app-sources?filter[group_id]={{group_id}}&filter[channel_type_code][in][0]=vtt_douyin&filter[channel_type_code][in][1]=vtt_douyin_pro&filter[channel_type_code][in][2]=vtt_kuaishou&filter[channel_type_code][in][3]=vtt_kuaishou_pro&filter[channel_type_code][in][4]=vtt_baijia&filter[channel_type_code][in][5]=vtt_baijia_pro&filter[channel_type_code][in][6]=vtt_dayu&filter[channel_type_code][in][7]=vtt_dayu_pro&filter[channel_type_code][in][8]=vtt_qq&filter[channel_type_code][in][9]=vtt_yidian&filter[channel_type_code][in][10]=vtt_qutoutiao&filter[channel_type_code][in][11]=vtt_miaopai&filter[channel_type_code][in][12]=vtt_meipai&filter[channel_type_code][in][13]=vtt_rrtv&filter[channel_type_code][in][14]=vtt_sohutv&filter[channel_type_code][in][15]=vtt_sohu&filter[channel_type_code][in][16]=vtt_acfun&filter[channel_type_code][in][17]=vtt_yinyuetai&per-page=100&group_id={{group_id}}


8. Check the kong’s tcp log. Upstream sent too big header while reading response header from upstream. as shown in Figure 6
查看 Kong 的 tcp log。upstream sent too big header while reading response header from upstream。
Figure 6


2021/09/30 09:10:12 [error] 65#0: *8025344 upstream sent too big header while reading response header from upstream, client: 10.42.0.231, server: kong, request: "GET /ccpapi/v1/task-group-channel-app-sources?filter[group_id]=6c8b55e7387da4799772ddb389f06753&filter[channel_type_code][in][0]=vtt_douyin&filter[channel_type_code][in][1]=vtt_douyin_pro&filter[channel_type_code][in][2]=vtt_kuaishou&filter[channel_type_code][in][3]=vtt_kuaishou_pro&filter[channel_type_code][in][4]=vtt_baijia&filter[channel_type_code][in][5]=vtt_baijia_pro&filter[channel_type_code][in][6]=vtt_dayu&filter[channel_type_code][in][7]=vtt_dayu_pro&filter[channel_type_code][in][8]=vtt_qq&filter[channel_type_code][in][9]=vtt_yidian&filter[channel_type_code][in][10]=vtt_qutoutiao&filter[channel_type_code][in][11]=vtt_miaopai&filter[channel_type_code][in][12]=vtt_meipai&filter[channel_type_code][in][13]=vtt_rrtv&filter[channel_type_code][in][14]=vtt_sohutv&filter[channel_type_code][in][15]=vtt_sohu&filter[channel_type_code][in][16]=vtt_acfun&filter[channel_type_code][in][17]=vtt_yinyuetai&filter[channel_type_code][in][18]=vtt_neteasemusic&per-page=100&group_id=6c8b55e7387da4799772ddb389f06753 HTTP/1.1", upstream: "http://10.103.175.193:82/v1/task-group-channel-app-sources?filter[group_id]=6c8b55e7387da4799772ddb389f06753&filter[channel_type_code][in][0]=vtt_douyin&filter[channel_type_code][in][1]=vtt_douyin_pro&filter[channel_type_code][in][2]=vtt_kuaishou&filter[channel_type_code][in][3]=vtt_kuaishou_pro&filter[channel_type_code][in][4]=vtt_baijia&filter[channel_type_code][in][5]=vtt_baijia_pro&filter[channel_type_code][in][6]=vtt_dayu&filter[channel_type_code][in][7]=vtt_dayu_pro&filter[channel_type_code][in][8]=vtt_qq&filter[channel_type_code][in][9]=vtt_yidian&filter[channel_type_code][in][10]=vtt_qutoutiao&filter[channel_type_code][in][11]=vtt_miaopai&filter[channel_type_code][in][12]=vtt_meipai&filter[channel_type_code][in][13]=vtt_rrtv&filter[channel_type_code][in][14]=vtt_sohutv&filter[channel_type_code][in][ 
15]=vtt_sohu&filter[channel_type_code][in][16]=vtt_acfun&filter[channel_type_code][in][17]=vtt_yinyuetai&filter[channel_type_code][in][18]=vtt_neteasemusic&per-page=100&group_id=6c8b55e7387da4799772ddb389f06753", host: "api.webtest.chinamcloud.cn" 
10.42.0.231 - - [30/Sep/2021:09:10:12 +0000] "GET /ccpapi/v1/task-group-channel-app-sources?filter[group_id]=6c8b55e7387da4799772ddb389f06753&filter[channel_type_code][in][0]=vtt_douyin&filter[channel_type_code][in][1]=vtt_douyin_pro&filter[channel_type_code][in][2]=vtt_kuaishou&filter[channel_type_code][in][3]=vtt_kuaishou_pro&filter[channel_type_code][in][4]=vtt_baijia&filter[channel_type_code][in][5]=vtt_baijia_pro&filter[channel_type_code][in][6]=vtt_dayu&filter[channel_type_code][in][7]=vtt_dayu_pro&filter[channel_type_code][in][8]=vtt_qq&filter[channel_type_code][in][9]=vtt_yidian&filter[channel_type_code][in][10]=vtt_qutoutiao&filter[channel_type_code][in][11]=vtt_miaopai&filter[channel_type_code][in][12]=vtt_meipai&filter[channel_type_code][in][13]=vtt_rrtv&filter[channel_type_code][in][14]=vtt_sohutv&filter[channel_type_code][in][15]=vtt_sohu&filter[channel_type_code][in][16]=vtt_acfun&filter[channel_type_code][in][17]=vtt_yinyuetai&filter[channel_type_code][in][18]=vtt_neteasemusic&per-page=100&group_id=6c8b55e7387da4799772ddb389f06753 HTTP/1.1" 502 75 "-" "PostmanRuntime/7.28.4" 


9. Add environment variables to the Kong container. kong_nginx_proxy_proxy_buffer_size, kong_nginx_proxy_proxy_buffers. as shown in Figure 7
在 kong 容器中添加环境变量。KONG_NGINX_PROXY_PROXY_BUFFER_SIZE、KONG_NGINX_PROXY_PROXY_BUFFERS。
Figure 7


KONG_NGINX_PROXY_PROXY_BUFFER_SIZE=160k
KONG_NGINX_PROXY_PROXY_BUFFERS=64 160k


10. Request again, still respond to 502, but the response body has changed, respond to HTML. as shown in Figure 8
再次请求,仍然响应 502,只不过响应体发生了变化,响应 HTML 。
8


<html>

<head>
	<title>502 Bad Gateway</title>
</head>

<body>
	<center>
		<h1>502 Bad Gateway</h1>
	</center>
	<hr>
	<center>nginx/1.17.10</center>
</body>

</html>


11. Check the king’s TCP log. No errors were reported again. as shown in Figure 9
查看 Kong 的 tcp log。未再报错。
Figure 9


10.42.0.231 - - [30/Sep/2021:10:34:36 +0000] "GET /ccpapi/v1/task-group-channel-app-sources?filter[group_id]=6c8b55e7387da4799772ddb389f06753&filter[channel_type_code][in][0]=vtt_douyin&filter[channel_type_code][in][1]=vtt_douyin_pro&filter[channel_type_code][in][2]=vtt_kuaishou&filter[channel_type_code][in][3]=vtt_kuaishou_pro&filter[channel_type_code][in][4]=vtt_baijia&filter[channel_type_code][in][5]=vtt_baijia_pro&filter[channel_type_code][in][6]=vtt_dayu&filter[channel_type_code][in][7]=vtt_dayu_pro&filter[channel_type_code][in][8]=vtt_qq&filter[channel_type_code][in][9]=vtt_yidian&filter[channel_type_code][in][10]=vtt_qutoutiao&filter[channel_type_code][in][11]=vtt_miaopai&filter[channel_type_code][in][12]=vtt_meipai&filter[channel_type_code][in][13]=vtt_rrtv&filter[channel_type_code][in][14]=vtt_sohutv&filter[channel_type_code][in][15]=vtt_sohu&filter[channel_type_code][in][16]=vtt_acfun&filter[channel_type_code][in][17]=vtt_yinyuetai&filter[channel_type_code][in][18]=vtt_neteasemusic&per-page=100&group_id=6c8b55e7387da4799772ddb389f06753 HTTP/1.1" 200 0 "-" "PostmanRuntime/7.28.4" 


12. Reference URL: https://kubernetes.github.io/ingress-nginx/user-g uide/nginx-configuration/annotations/#proxy-buffers-number . In Rancher, find the load balancing corresponding to the Kong container and edit the YAML file. Add 2 lines of nginx.ingress related configuration items. As shown in Figure 10
参考网址:https://kubernetes.github.io/ingress-nginx/user-guide/nginx-configuration/annotations/#proxy-buffers-number 。在 Rancher 中,查找到 kong 容器所对应的负载均衡,编辑 YAML 文件。添加 2 行 nginx.ingress 相关配置项。
Figure 10


    nginx.ingress.kubernetes.io/proxy-buffer-size: 160k
    nginx.ingress.kubernetes.io/proxy-buffers-number: "64"


13. Request again, the response is 200, in line with expectations. as shown in Figure 11
再次请求,响应 200,符合预期。
Figure 11

Comments

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.