events { worker_connections 1024; } http { upstream minio_s3 { least_conn; server minio1:9000; server minio2:9000; server minio3:9000; server minio4:9000; } upstream minio_console { least_conn; server minio1:9001; server minio2:9001; server minio3:9001; server minio4:9001; } server { listen 9000; server_name _; # Allow special characters in headers ignore_invalid_headers off; # Allow any size file to be uploaded client_max_body_size 0; # Disable buffering proxy_buffering off; proxy_request_buffering off; location / { proxy_pass http://minio_s3; proxy_set_header Host $http_host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; proxy_connect_timeout 300; # Default is HTTP/1, keepalive is only enabled in HTTP/1.1 and higher proxy_http_version 1.1; proxy_set_header Connection ""; chunked_transfer_encoding off; } } server { listen 9001; server_name _; # Allow special characters in headers ignore_invalid_headers off; # Allow any size file to be uploaded client_max_body_size 0; # Disable buffering proxy_buffering off; proxy_request_buffering off; location / { proxy_pass http://minio_console; proxy_set_header Host $http_host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; proxy_connect_timeout 300; proxy_http_version 1.1; proxy_set_header Connection ""; chunked_transfer_encoding off; } } }