From: Ward Vandewege Date: Fri, 13 May 2022 18:46:17 +0000 (-0400) Subject: 19126: Merge branch 'main' into 19126-nginx-proxy-settings-change X-Git-Tag: 2.5.0~177^2 X-Git-Url: https://git.arvados.org/arvados.git/commitdiff_plain/b4a0205b95c4ba9cf2c9aba4314ddd6867edc158?hp=a89fbc8b4f2d8db8654175428bd1f041eed6f109 19126: Merge branch 'main' into 19126-nginx-proxy-settings-change Arvados-DCO-1.1-Signed-off-by: Ward Vandewege --- diff --git a/doc/admin/config-urls.html.textile.liquid b/doc/admin/config-urls.html.textile.liquid index 1358fd81e1..e518ea1bf7 100644 --- a/doc/admin/config-urls.html.textile.liquid +++ b/doc/admin/config-urls.html.textile.liquid @@ -255,10 +255,14 @@ server { client_max_body_size 128m; location / { - proxy_pass http://controller; - proxy_redirect off; - proxy_connect_timeout 90s; - proxy_read_timeout 300s; + proxy_pass http://controller; + proxy_redirect off; + proxy_connect_timeout 90s; + proxy_read_timeout 300s; + proxy_max_temp_file_size 0; + proxy_request_buffering off; + proxy_buffering off; + proxy_http_version 1.1; proxy_set_header Host $http_host; proxy_set_header Upgrade $http_upgrade; diff --git a/doc/admin/upgrading.html.textile.liquid b/doc/admin/upgrading.html.textile.liquid index 2d10c870d5..efce633e9e 100644 --- a/doc/admin/upgrading.html.textile.liquid +++ b/doc/admin/upgrading.html.textile.liquid @@ -32,6 +32,19 @@ h2(#main). development main (as of 2022-04-08) "previous: Upgrading to 2.4.0":#v2_4_0 +h3. New proxy parameters for arvados-controller + +We now recommend disabling nginx proxy caching for arvados-controller, to avoid truncation of large responses. + +In your Nginx configuration file (@/etc/nginx/conf.d/arvados-api-and-controller.conf@), add the following lines to the @location /@ block with @http://controller@ (see "Update nginx configuration":{{site.baseurl}}/install/install-api-server.html#update-nginx for an example) and reload/restart Nginx (@sudo nginx -s reload@). + +
+    proxy_max_temp_file_size 0;
+    proxy_request_buffering  off;
+    proxy_buffering          off;
+    proxy_http_version       1.1;
+
+ h3. Now recommending Singularity 3.9.9 The compute image "build script":{{site.baseurl}}/install/crunch2-cloud/install-compute-node.html now installs Singularity 3.9.9 instead of 3.7.4. The newer version includes a bugfix that should resolve "intermittent loopback device errors":https://dev.arvados.org/issues/18489 when running containers. diff --git a/doc/install/install-api-server.html.textile.liquid b/doc/install/install-api-server.html.textile.liquid index 6c3eabba4f..4c9f168e82 100644 --- a/doc/install/install-api-server.html.textile.liquid +++ b/doc/install/install-api-server.html.textile.liquid @@ -148,10 +148,14 @@ server { client_max_body_size 128m; location / { - proxy_pass http://controller; - proxy_redirect off; - proxy_connect_timeout 90s; - proxy_read_timeout 300s; + proxy_pass http://controller; + proxy_redirect off; + proxy_connect_timeout 90s; + proxy_read_timeout 300s; + proxy_max_temp_file_size 0; + proxy_request_buffering off; + proxy_buffering off; + proxy_http_version 1.1; proxy_set_header Host $http_host; proxy_set_header Upgrade $http_upgrade; diff --git a/sdk/python/tests/nginx.conf b/sdk/python/tests/nginx.conf index 4d1e06613a..543390004b 100644 --- a/sdk/python/tests/nginx.conf +++ b/sdk/python/tests/nginx.conf @@ -30,6 +30,10 @@ http { proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto https; proxy_redirect off; + proxy_max_temp_file_size 0; + proxy_request_buffering off; + proxy_buffering off; + proxy_http_version 1.1; } } upstream arv-git-http { diff --git a/tools/salt-install/config_examples/multi_host/aws/pillars/nginx_controller_configuration.sls b/tools/salt-install/config_examples/multi_host/aws/pillars/nginx_controller_configuration.sls index 41d6e1365a..869cc596a3 100644 --- a/tools/salt-install/config_examples/multi_host/aws/pillars/nginx_controller_configuration.sls +++ b/tools/salt-install/config_examples/multi_host/aws/pillars/nginx_controller_configuration.sls @@ -55,6 +55,10 @@ nginx: - proxy_set_header: 'X-Real-IP $remote_addr' - proxy_set_header: 'X-Forwarded-For $proxy_add_x_forwarded_for' - proxy_set_header: 'X-External-Client $external_client' + - proxy_max_temp_file_size: 0 + - proxy_request_buffering: 'off' + - proxy_buffering: 'off' + - proxy_http_version: '1.1' - include: snippets/ssl_hardening_default.conf - ssl_certificate: __CERT_PEM__ - ssl_certificate_key: __CERT_KEY__ diff --git a/tools/salt-install/config_examples/single_host/multiple_hostnames/pillars/nginx_controller_configuration.sls b/tools/salt-install/config_examples/single_host/multiple_hostnames/pillars/nginx_controller_configuration.sls index 22838fe14a..bc28fd8259 100644 --- a/tools/salt-install/config_examples/single_host/multiple_hostnames/pillars/nginx_controller_configuration.sls +++ b/tools/salt-install/config_examples/single_host/multiple_hostnames/pillars/nginx_controller_configuration.sls @@ -54,6 +54,10 @@ nginx: - proxy_set_header: 'X-Real-IP $remote_addr' - proxy_set_header: 'X-Forwarded-For $proxy_add_x_forwarded_for' - proxy_set_header: 'X-External-Client $external_client' + - proxy_max_temp_file_size: 0 + - proxy_request_buffering: 'off' + - proxy_buffering: 'off' + - proxy_http_version: '1.1' - include: snippets/ssl_hardening_default.conf - ssl_certificate: __CERT_PEM__ - ssl_certificate_key: __CERT_KEY__ diff --git a/tools/salt-install/config_examples/single_host/single_hostname/pillars/nginx_controller_configuration.sls b/tools/salt-install/config_examples/single_host/single_hostname/pillars/nginx_controller_configuration.sls index cfd1525924..3058367bc0 100644 --- a/tools/salt-install/config_examples/single_host/single_hostname/pillars/nginx_controller_configuration.sls +++ b/tools/salt-install/config_examples/single_host/single_hostname/pillars/nginx_controller_configuration.sls @@ -54,6 +54,10 @@ nginx: - proxy_set_header: 'X-Real-IP $remote_addr' - proxy_set_header: 'X-Forwarded-For $proxy_add_x_forwarded_for' - proxy_set_header: 'X-External-Client $external_client' + - proxy_max_temp_file_size: 0 + - proxy_request_buffering: 'off' + - proxy_buffering: 'off' + - proxy_http_version: '1.1' - include: snippets/ssl_hardening_default.conf - ssl_certificate: __CERT_PEM__ - ssl_certificate_key: __CERT_KEY__