From 43ffbf0e8c6a03ed569018649c078ae4c102ffad Mon Sep 17 00:00:00 2001 From: Kerkesni Date: Tue, 11 Feb 2025 12:05:40 +0100 Subject: [PATCH] simplify sproxyd deployment Launching sproxyd directly without supervisord or an nginx proxy Issue: BB-496 --- .github/dockerfiles/e2e/docker-compose.yaml | 9 +--- .github/dockerfiles/sproxyd/Dockerfile | 8 ++- .../dockerfiles/sproxyd/conf/fastcgi_params | 26 ---------- .github/dockerfiles/sproxyd/conf/nginx.conf | 51 ------------------- .../dockerfiles/sproxyd/conf/supervisord.conf | 43 ---------------- .../sproxyd/{conf => }/sproxyd.conf | 2 +- 6 files changed, 9 insertions(+), 130 deletions(-) delete mode 100644 .github/dockerfiles/sproxyd/conf/fastcgi_params delete mode 100644 .github/dockerfiles/sproxyd/conf/nginx.conf delete mode 100644 .github/dockerfiles/sproxyd/conf/supervisord.conf rename .github/dockerfiles/sproxyd/{conf => }/sproxyd.conf (96%) diff --git a/.github/dockerfiles/e2e/docker-compose.yaml b/.github/dockerfiles/e2e/docker-compose.yaml index 4193486e5..33e1c9c01 100644 --- a/.github/dockerfiles/e2e/docker-compose.yaml +++ b/.github/dockerfiles/e2e/docker-compose.yaml @@ -4,13 +4,8 @@ services: build: context: ../sproxyd user: 0:0 - privileged: true - healthcheck: - test: curl http://localhost:8181 || exit 1 - interval: 10s - timeout: 30s - retries: 12 - start_period: 10s + entrypoint: /usr/bin/sproxyd + command: -dlw -Vinfo -c /conf/sproxyd.conf -P /run/sproxyd-0 --no-sysfs metadata: profiles: ['s3c'] image: ${METADATA_IMAGE} diff --git a/.github/dockerfiles/sproxyd/Dockerfile b/.github/dockerfiles/sproxyd/Dockerfile index 43992b337..13caebed3 100644 --- a/.github/dockerfiles/sproxyd/Dockerfile +++ b/.github/dockerfiles/sproxyd/Dockerfile @@ -1,7 +1,11 @@ -ARG SPROXYD_VERSION=7.10.6.8 +ARG SPROXYD_VERSION=7.10.11.0 FROM ghcr.io/scality/federation/sproxyd:${SPROXYD_VERSION} -ADD ./conf /conf/ +ADD ./sproxyd.conf /conf/sproxyd.conf RUN chown root:root /conf/sproxyd.conf + +RUN mkdir /var/run/scality/ + +RUN touch /var/run/scality/scality-sproxyd-adminapi diff --git a/.github/dockerfiles/sproxyd/conf/fastcgi_params b/.github/dockerfiles/sproxyd/conf/fastcgi_params deleted file mode 100644 index 21dce9671..000000000 --- a/.github/dockerfiles/sproxyd/conf/fastcgi_params +++ /dev/null @@ -1,26 +0,0 @@ - fastcgi_param QUERY_STRING $query_string; - fastcgi_param REQUEST_METHOD $request_method; - fastcgi_param CONTENT_TYPE $content_type; - fastcgi_param CONTENT_LENGTH $content_length; - - #fastcgi_param SCRIPT_NAME fastcgi_script_name; - fastcgi_param SCRIPT_NAME /var/www; - fastcgi_param PATH_INFO $document_uri; - - fastcgi_param REQUEST_URI $request_uri; - fastcgi_param DOCUMENT_URI $document_uri; - fastcgi_param DOCUMENT_ROOT $document_root; - fastcgi_param SERVER_PROTOCOL $server_protocol; - fastcgi_param HTTPS $https if_not_empty; - - fastcgi_param GATEWAY_INTERFACE CGI/1.1; - fastcgi_param SERVER_SOFTWARE nginx/$nginx_version; - - fastcgi_param REMOTE_ADDR $remote_addr; - fastcgi_param REMOTE_PORT $remote_port; - fastcgi_param SERVER_ADDR $server_addr; - fastcgi_param SERVER_PORT $server_port; - fastcgi_param SERVER_NAME $server_name; - - # PHP only, required if PHP was built with --enable-force-cgi-redirect - fastcgi_param REDIRECT_STATUS 200; diff --git a/.github/dockerfiles/sproxyd/conf/nginx.conf b/.github/dockerfiles/sproxyd/conf/nginx.conf deleted file mode 100644 index d1bb554e8..000000000 --- a/.github/dockerfiles/sproxyd/conf/nginx.conf +++ /dev/null @@ -1,51 +0,0 @@ - worker_processes 1; - error_log stderr; - user root root; - events { - worker_connections 1000; - reuse_port on; - multi_accept on; - } - worker_rlimit_nofile 20000; - http { - access_log /dev/stdout; - root /var/www/; - upstream sproxyds { - least_conn; - keepalive 40; - server 127.0.0.1:20000; - } - server { - client_max_body_size 0; - client_body_timeout 150; - client_header_timeout 150; - postpone_output 0; - client_body_postpone_size 0; - keepalive_requests 1100; - keepalive_timeout 300s; - server_tokens off; - default_type application/octet-stream; - gzip off; - tcp_nodelay on; - tcp_nopush on; - sendfile on; - listen 8181; - server_name localhost; - location ~* ^/proxy/(.*)$ { - rewrite ^/proxy/(.*)$ /$1 last; - } - allow all; - location / { - proxy_request_buffering off; - fastcgi_request_buffering off; - fastcgi_no_cache 1; - fastcgi_cache_bypass 1; - fastcgi_buffering off; - fastcgi_ignore_client_abort on; - fastcgi_keep_conn on; - include fastcgi_params; - fastcgi_pass sproxyds; - fastcgi_next_upstream error timeout; - } - } - } diff --git a/.github/dockerfiles/sproxyd/conf/supervisord.conf b/.github/dockerfiles/sproxyd/conf/supervisord.conf deleted file mode 100644 index d263cacfd..000000000 --- a/.github/dockerfiles/sproxyd/conf/supervisord.conf +++ /dev/null @@ -1,43 +0,0 @@ -[supervisord] -nodaemon = true -loglevel = info -logfile = %(ENV_LOG_DIR)s/supervisord.log -pidfile = %(ENV_SUP_RUN_DIR)s/supervisord.pid -logfile_maxbytes = 20MB -logfile_backups = 2 - -[unix_http_server] -file = %(ENV_SUP_RUN_DIR)s/supervisor.sock - -[rpcinterface:supervisor] -supervisor.rpcinterface_factory = supervisor.rpcinterface:make_main_rpcinterface - -[supervisorctl] -serverurl = unix://%(ENV_SUP_RUN_DIR)s/supervisor.sock - -[program:nginx] -directory=%(ENV_SUP_RUN_DIR)s -command=bash -c "/usr/sbin/nginx -c %(ENV_CONF_DIR)s/nginx.conf -g 'daemon off;'" -stdout_logfile = %(ENV_LOG_DIR)s/%(program_name)s-%(process_num)s.log -stderr_logfile = %(ENV_LOG_DIR)s/%(program_name)s-%(process_num)s-stderr.log -stdout_logfile_maxbytes=20MB -stdout_logfile_backups=2 -stderr_logfile_maxbytes=100MB -stderr_logfile_backups=7 -autorestart=true -autostart=true -user=root - -[program:sproxyd] -directory=%(ENV_SUP_RUN_DIR)s -process_name=%(program_name)s-%(process_num)s -numprocs=1 -numprocs_start=0 -command=/usr/bin/sproxyd -dlw -Vinfo -c %(ENV_CONF_DIR)s/sproxyd.conf -P /run/sproxyd-%(process_num)s -stdout_logfile = %(ENV_LOG_DIR)s/%(program_name)s-%(process_num)s.log -stdout_logfile_maxbytes=20MB -stdout_logfile_backups=2 -redirect_stderr=true -autorestart=true -autostart=true -user=root diff --git a/.github/dockerfiles/sproxyd/conf/sproxyd.conf b/.github/dockerfiles/sproxyd/sproxyd.conf similarity index 96% rename from .github/dockerfiles/sproxyd/conf/sproxyd.conf rename to .github/dockerfiles/sproxyd/sproxyd.conf index eaa893d6e..f7b5afd54 100644 --- a/.github/dockerfiles/sproxyd/conf/sproxyd.conf +++ b/.github/dockerfiles/sproxyd/sproxyd.conf @@ -8,7 +8,7 @@ "max_proc_fd": 40960, "n_workers": 100, "n_responders": 100, - "port": 20000, + "port": 8181, "split_chunk_size": 33554432, "split_control_by_request": false, "split_enabled": true,