diff --git a/roles/build/files/haproxysupervisord.conf b/roles/build/files/haproxysupervisord.conf new file mode 100644 index 0000000000000000000000000000000000000000..2738cf2d75e4646aafc687fb855ded53414594c0 --- /dev/null +++ b/roles/build/files/haproxysupervisord.conf @@ -0,0 +1,44 @@ +[unix_http_server] +file=/tmp/supervisor.sock + +[supervisord] +pidfile=/tmp/supervisord.pid +nodaemon=true +logfile=/var/log/supervisor/supervisord.log +logfile_maxbytes=10MB +logfile_backups=10 +loglevel=info +childlogdir=/var/log/supervisor/ + +[rpcinterface:supervisor] +supervisor.rpcinterface_factory = supervisor.rpcinterface:make_main_rpcinterface + +[supervisorctl] +serverurl=unix:///tmp/supervisor.sock + +[program:haproxy] +directory=/root +user=root +group=root +command=/bin/bash -c '/usr/local/sbin/haproxy -f /usr/local/etc/haproxy/haproxy.cfg' +autostart=false +autorestart=true +logfile_maxbytes=10MB +stdout_logfile_backups = 0 +stderr_logfile_backups = 0 +stderr_logfile = /var/log/supervisor/haproxy_stderr.log +stdout_logfile = /var/log/supervisor/haproxy_stdout.log + + +[program:filebeat] +directory=/opt/filebeat +user=root +group=root +command=/bin/bash -c '/opt/filebeat/filebeat -c /opt/filebeat/filebeat.yml' +autostart=false +autorestart=true +logfile_maxbytes=10MB +stdout_logfile_backups = 0 +stderr_logfile_backups = 0 +stderr_logfile = /var/log/supervisor/filebeat_stderr.log +stdout_logfile = /var/log/supervisor/filebeat_stdout.log diff --git a/roles/build/templates/cortex/Dockerfile.j2 b/roles/build/templates/cortex/Dockerfile.j2 index 68ac1ed5d577913d92592a8fb236dcc896265b8a..76c60662c05675b61f7acfbde36ad46aa1351c44 100644 --- a/roles/build/templates/cortex/Dockerfile.j2 +++ b/roles/build/templates/cortex/Dockerfile.j2 @@ -1,9 +1,6 @@ FROM {{repo}}/openjdk:{{version}}{{suffix}} USER root -#COPY thehive.repo /etc/yum.repos.d/thehive.repo -#COPY supervisord.conf /etc/supervisord.conf -#COPY start.sh /start.sh RUN echo "[thehive-project]" > /etc/yum.repos.d/thehive.repo && \ echo "enabled=1" >> /etc/yum.repos.d/thehive.repo && \ echo "priority=1" >> /etc/yum.repos.d/thehive.repo && \ @@ -29,5 +26,3 @@ RUN echo "[thehive-project]" > /etc/yum.repos.d/thehive.repo && \ EXPOSE 9001 COPY cortexsupervisord.conf /etc/supervisord.conf ENTRYPOINT ["/usr/bin/supervisord", "-c", "/etc/supervisord.conf"] -#USER cortex -# ENTRYPOINT ["/start.sh"] diff --git a/roles/build/templates/haproxy/Dockerfile.j2 b/roles/build/templates/haproxy/Dockerfile.j2 index d9f84c4c3ec60e5593ab4a3ccffee1660585260e..a4d5e94aa6390579a41a62affb7b1adf4eea0799 100644 --- a/roles/build/templates/haproxy/Dockerfile.j2 +++ b/roles/build/templates/haproxy/Dockerfile.j2 @@ -24,6 +24,7 @@ RUN \ iptables \ pcre2-devel \ daemonize \ + supervisor \ pth-devel && \ `# Install newest openssl...` \ wget -O /tmp/openssl.tgz https://www.openssl.org/source/openssl-${OPENSSL_VERSION}.tar.gz && \ @@ -62,10 +63,5 @@ RUN \ && cp -R /usr/src/haproxy/examples/errorfiles /usr/local/etc/haproxy/errors \ && rm -rf /usr/src/haproxy -ENTRYPOINT ["/bin/bash"] - -# https://www.haproxy.org/download/1.8/doc/management.txt -# "4. Stopping and restarting HAProxy" -# "when the SIGTERM signal is sent to the haproxy process, it immediately quits and all established connections are closed" -# "graceful stop is triggered when the SIGUSR1 signal is sent to the haproxy process" -STOPSIGNAL SIGUSR1 +COPY haproxysupervisord.conf /etc/supervisord.conf +ENTRYPOINT ["/usr/bin/supervisord", "-c", "/etc/supervisord.conf"] diff --git a/roles/docker/tasks/haproxy.yml b/roles/docker/tasks/haproxy.yml index 155398aa241b3526848e47f096ff4019c69aa004..b0180761f4f3c18982f21d9f5b8307066146daed 100644 --- a/roles/docker/tasks/haproxy.yml +++ b/roles/docker/tasks/haproxy.yml @@ -19,7 +19,6 @@ - "6000-6099:6000-6099" - "9000:9000" - "9001:9001" - entrypoint: "/bin/bash" interactive: "yes" tags: - start diff --git a/roles/haproxy/tasks/main.yml b/roles/haproxy/tasks/main.yml index dc7055649ff3829f8c2f7f06447a1d5795311cee..73debe19f69d0a0281fde3029ea80d2008dd26ba 100644 --- a/roles/haproxy/tasks/main.yml +++ b/roles/haproxy/tasks/main.yml @@ -58,12 +58,17 @@ - start - name: Start haproxy - shell: "daemonize -c / -p /haproxy.pid /usr/local/sbin/haproxy -f /usr/local/etc/haproxy/haproxy.cfg" + shell: "supervisorctl start haproxy" + tags: + - start + +- name: Set Autostart for supervisord's services + shell: "sed -i 's/autostart=false/autostart=true/g' /etc/supervisord.conf" tags: - start - name: Stop haproxy - command: "pkill -SIGTERM -F /haproxy.pid" + command: "supervisorctl stop haproxy" tags: - stop