我正在使用AWS并使用EC2实例进行CI操作,尤其是Jenkins。该服务器位于nginx服务器后面,该服务器用作ci.domain.com
请求的代理在CI服务器上发生故障之前,一切正常。
一旦发生这种情况,另一个实例启动,将其IP上传到DNS服务,将新IP指向ci.domain.com
问题是我需要重新启动nginx服务才能再次发现CI服务器。在此之前,我收到5xx错误请求或超时响应。
以下是有关特定上游服务器的nginx配置的一部分:
upstream jenkins {
server ci.domain.com max_fails=3 fail_timeout=100s;
}
server {
listen 80;
server_name ci.domain.com;
location / {
proxy_set_header X-Forwarded-Host $host;
proxy_set_header X-Forwarded-Server $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Connection "";
proxy_pass http://jenkins;
proxy_read_timeout 300;
proxy_send_timeout 300;
proxy_connect_timeout 300;
# Required for new HTTP-based CLI
proxy_http_version 1.1;
proxy_request_buffering off;
}
}