
рд╕реНрдкреНрд▓рдВрдХ рд▓реЙрдЧ рдХреЛ рдЗрдХрдЯреНрдард╛ рдХрд░рдиреЗ рдФрд░ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдмрд╕реЗ рдкреНрд░рд╕рд┐рджреНрдз рд╡рд╛рдгрд┐рдЬреНрдпрд┐рдХ рдЙрддреНрдкрд╛рдж рд╣реИред рдЕрдм рднреА, рдЬрдм рд╕реНрдкреНрд▓рдВрдХ рдиреЗ рд░реВрд╕реА рд╕рдВрдШ рдореЗрдВ рдмрд┐рдХреНрд░реА рдмрдВрдж рдХрд░ рджреА рд╣реИред рдФрд░ рдпрд╣ рдПрдХ рдХрд╛рд░рдг рдирд╣реАрдВ рд╣реИ рдХрд┐ рдЗрд╕ рдЙрддреНрдкрд╛рдж рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд▓реЗрдЦ рдХреИрд╕реЗ рд▓рд┐рдЦреЗрдВред
рд▓рдХреНрд╖реНрдп : рдореЗрдЬрдмрд╛рди рдХреЗ рдорд╢реАрди рд╡рд┐рдиреНрдпрд╛рд╕ рдХреЛ рдмрджрд▓рдиреЗ рдХреЗ рдмрд┐рдирд╛ рдбреЙрдХрд░ рдиреЛрдбреНрд╕ рд╕реЗ рд╕рд┐рд╕реНрдЯрдо рдХреЗ рд▓реЙрдЧ рдХреЛ рдЗрдХрдЯреНрдард╛ рдХрд░реЗрдВ
рдЖрдЗрдП рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рддрд░реАрдХреЗ рд╕реЗ рд╢реБрд░реВ рдХрд░реЗрдВ рдЬреЛ рдбреЛрдХрд░ рдХреЗ рдЙрдкрдпреЛрдЧ рд╕реЗ рдЕрдЬреАрдм рд▓рдЧрддрд╛ рд╣реИред
рдбреЙрдХрдЯрд░ рд╣рдм рд▓рд┐рдВрдХрдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдЪрд░рдг:
1. рдЫрд╡рд┐ рдЦреАрдВрдЪреЛ
$ docker pull splunk/universalforwarder:latest
2. рдЖрдк рдХреА рдЬрд░реВрд░рдд рдорд╛рдкрджрдВрдбреЛрдВ рдХреЗ рд╕рд╛рде рдХрдВрдЯреЗрдирд░ рдЪрд▓рд╛рдПрдБ
$ docker run -d -p 9997:9997 -e 'SPLUNK_START_ARGS=--accept-license' -e 'SPLUNK_PASSWORD=<password>' splunk/universalforwarder:latest
3. рдХрдВрдЯреЗрдирд░ рдореЗрдВ рдкреНрд░рд╡реЗрд╢ рдХрд░реЗрдВ
docker exec -it <container-id> /bin/bash
рдлрд┐рд░ рд╣рдореЗрдВ рдбреЙрдХреНрд╕ рдкреЗрдЬ рдкрд░ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред
рдФрд░ рдХрдВрдЯреЗрдирд░ рдХреЛ рд╢реБрд░реВ рд╣реЛрдиреЗ рдХреЗ рдмрд╛рдж рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░реЗрдВ:
./splunk add forward-server <host name or ip address>:<listening port> ./splunk add monitor /var/log ./splunk restart
рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░реЗрдВред рдХреНрдпрд╛?
рд▓реЗрдХрд┐рди рдпрд╣ рдЖрдЦрд┐рд░реА рдЖрд╢реНрдЪрд░реНрдп рдирд╣реАрдВ рд╣реИред рдпрджрд┐ рдЖрдк рдЗрдВрдЯрд░реИрдХреНрдЯрд┐рд╡ рдореЛрдб рдореЗрдВ рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рдХрдВрдЯреЗрдирд░ рдЪрд▓рд╛рддреЗ рд╣реИрдВ, рддреЛ рдЖрдк рдирд┐рдореНрди рдХрд╛рд░реНрдп рдХрд░реЗрдВрдЧреЗ:
рдХреБрдЫ рдирд┐рд░рд╛рд╢рд╛ $ docker run -it -p 9997:9997 -e 'SPLUNK_START_ARGS=--accept-license' -e 'SPLUNK_PASSWORD=password' splunk/universalforwarder:latest PLAY [Run default Splunk provisioning] ******************************************************************************************************************************************************************************************************* Tuesday 09 April 2019 13:40:38 +0000 (0:00:00.096) 0:00:00.096 ********* TASK [Gathering Facts] *********************************************************************************************************************************************************************************************************************** ok: [localhost] Tuesday 09 April 2019 13:40:39 +0000 (0:00:01.520) 0:00:01.616 ********* TASK [Get actual hostname] ******************************************************************************************************************************************************************************************************************* changed: [localhost] Tuesday 09 April 2019 13:40:40 +0000 (0:00:00.599) 0:00:02.215 ********* Tuesday 09 April 2019 13:40:40 +0000 (0:00:00.054) 0:00:02.270 ********* TASK [set_fact] ****************************************************************************************************************************************************************************************************************************** ok: [localhost] Tuesday 09 April 2019 13:40:40 +0000 (0:00:00.075) 0:00:02.346 ********* Tuesday 09 April 2019 13:40:40 +0000 (0:00:00.067) 0:00:02.413 ********* Tuesday 09 April 2019 13:40:40 +0000 (0:00:00.060) 0:00:02.473 ********* Tuesday 09 April 2019 13:40:40 +0000 (0:00:00.051) 0:00:02.525 ********* Tuesday 09 April 2019 13:40:40 +0000 (0:00:00.056) 0:00:02.582 ********* Tuesday 09 April 2019 13:40:41 +0000 (0:00:00.216) 0:00:02.798 ********* included: /opt/ansible/roles/splunk_common/tasks/change_splunk_directory_owner.yml for localhost Tuesday 09 April 2019 13:40:41 +0000 (0:00:00.087) 0:00:02.886 ********* TASK [splunk_common : Update Splunk directory owner] ***************************************************************************************************************************************************************************************** ok: [localhost] Tuesday 09 April 2019 13:40:41 +0000 (0:00:00.324) 0:00:03.210 ********* included: /opt/ansible/roles/splunk_common/tasks/get_facts.yml for localhost Tuesday 09 April 2019 13:40:41 +0000 (0:00:00.094) 0:00:03.305 ********* etc...
рдорд╣рд╛рдиред рдбреЙрдХрд░ рдЫрд╡рд┐ рдореЗрдВ рд╡рд┐рд░реВрдкрдг рд╕рд╛рдХреНрд╖реНрдп рдирд╣реАрдВ рд╣реИред рдЗрд╕ рдкреНрд░рдХрд╛рд░, рд╣рд░ рдмрд╛рд░ рдЬрдм рдЖрдк рдХрдВрдЯреЗрдирд░ рдЪрд▓рд╛рддреЗ рд╣реИрдВ, рддреЛ рдЖрдк рдмрд╛рдпрдиреЗрд░реА рдбрд╛рдЙрдирд▓реЛрдб рдХрд░реЗрдВрдЧреЗ, рдЗрд╕реЗ рдЕрдирдкреИрдХ рдХрд░реЗрдВрдЧреЗ, рдЗрд╕реЗ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░реЗрдВрдЧреЗред
рдбреЙрдХрдЯрд░-рд╡реЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреНрдпрд╛? рдХрд╣рд╛рдБ рд╣реИ?
рдирд╣реАрдВ, рдзрдиреНрдпрд╡рд╛рджред рд╣рдо рд╕рд╣реА рд░рд╛рд╕реНрддрд╛ рдЪреБрдиреЗрдВрдЧреЗред рдХреНрдпрд╛ рд╣реЛрдЧрд╛ рдЕрдЧрд░ рд╣рдо рдмрд┐рд▓реНрдб рд╕реНрдЯреЗрдЬ рдХреЗ рджреМрд░рд╛рди рд╕рднреА рдХрдорд╛рдВрдб рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рддреЗ рд╣реИрдВ? рдЪрд▓реЛ рдЪрд▓реЗрдВ!
рдмреЛрд░рд┐рдВрдЧ рднрд╛рдЧ рдХреЛ рдЫреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП, рдПрдХ рдЕрдВрддрд┐рдо рдЫрд╡рд┐ рд╣реИ:
Dockerfile # Depends on your preferences FROM centos:7 # Define env variables only once and don't define it any more ENV SPLUNK_HOME /splunkforwarder ENV SPLUNK_ROLE splunk_heavy_forwarder ENV SPLUNK_PASSWORD changeme ENV SPLUNK_START_ARGS --accept-license # Install required packages # wget - to download artifacts # expect - for the first run step of Splunk for build stage # jq - using in the shell scripts RUN yum install -y epel-release \ && yum install -y wget expect jq # Download, unpack, remove RUN wget -O splunkforwarder-7.2.4-8a94541dcfac-Linux-x86_64.tgz 'https://www.splunk.com/bin/splunk/DownloadActivityServlet?architecture=x86_64&platform=linux&version=7.2.4&product=universalforwarder&filename=splunkforwarder-7.2.4-8a94541dcfac-Linux-x86_64.tgz&wget=true' \ && wget -O docker-18.09.3.tgz 'https://download.docker.com/linux/static/stable/x86_64/docker-18.09.3.tgz' \ && tar -xvf splunkforwarder-7.2.4-8a94541dcfac-Linux-x86_64.tgz \ && tar -xvf docker-18.09.3.tgz \ && rm -f splunkforwarder-7.2.4-8a94541dcfac-Linux-x86_64.tgz \ && rm -f docker-18.09.3.tgz # Everything is simple with shell scripts, but inputs.conf, splunkclouduf.spl and first_start.sh should have an explanation. I'll tell more about it below. COPY [ "inputs.conf", "docker-stats/props.conf", "/splunkforwarder/etc/system/local/" ] COPY [ "docker-stats/docker_events.sh", "docker-stats/docker_inspect.sh", "docker-stats/docker_stats.sh", "docker-stats/docker_top.sh", "/splunkforwarder/bin/scripts/" ] COPY splunkclouduf.spl /splunkclouduf.spl COPY first_start.sh /splunkforwarder/bin/ # Grant execute permissions, add user, execute pre-configuration RUN chmod +x /splunkforwarder/bin/scripts/*.sh \ && groupadd -r splunk \ && useradd -r -m -g splunk splunk \ && echo "%sudo ALL=NOPASSWD:ALL" >> /etc/sudoers \ && chown -R splunk:splunk $SPLUNK_HOME \ && /splunkforwarder/bin/first_start.sh \ && /splunkforwarder/bin/splunk install app /splunkclouduf.spl -auth admin:changeme \ && /splunkforwarder/bin/splunk restart # Copy init scripts COPY [ "init/entrypoint.sh", "init/checkstate.sh", "/sbin/" ] # It depends. If you need it locally - go on. VOLUME [ "/splunkforwarder/etc", "/splunkforwarder/var" ] HEALTHCHECK --interval=30s --timeout=30s --start-period=3m --retries=5 CMD /sbin/checkstate.sh || exit 1 ENTRYPOINT [ "/sbin/entrypoint.sh" ] CMD [ "start-service" ]
рддреЛ, рдХреА рд╕рд╛рдордЧреНрд░реА
рдкрд╣рд▓реА рд╢реБрд░реБрдЖрдд рдХреЗ рджреМрд░рд╛рди рд╕реНрдкреНрд▓рдВрдХ рд▓реЙрдЧрд┐рди / рдкрд╛рд╕рд╡рд░реНрдб рдХреЗ рд▓рд┐рдП рдкреВрдЫреЗрдЧрд╛, рд▓реЗрдХрд┐рди рдмреАрдпреВрдЯреА рдХреНрд░реЗрдбреЗрдВрд╢рд┐рдпрд▓реНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ
рдХреЗрд╡рд▓ рдХрдВрдЯреЗрдирд░ рдХреЗ рдЕрдВрджрд░ рдЗрд╕ рд╡рд┐рд╢реЗрд╖ рд╕реНрдерд╛рдкрдирд╛ рдореЗрдВ рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ рдХреЗ рдХрдорд╛рдВрдб рдирд┐рд╖реНрдкрд╛рджрди рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рд╣рдорд╛рд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рд╣рдо рдмрд╕ рдХрдВрдЯреЗрдирд░ рдЪрд▓рд╛рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ рдФрд░ рд╕рдм рдХреБрдЫ рдмрд┐рдирд╛ рдХрд┐рд╕реА рдХрд╛рд░реНрдп рдХреЗ рдХрд╛рдо рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред рдпрд╣ "рд╣рд╛рд░реНрдбрдХреЛрдб" рдХреА рддрд░рд╣ рд▓рдЧ рд╕рдХрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдХреЛрдИ рдЕрдиреНрдп рд╕рдорд╛рдзрд╛рди рдирд╣реАрдВ рдорд┐рд▓рд╛ рд╣реИред
рдмрд┐рд▓реНрдб рдХрд╛ рдЕрдЧрд▓рд╛ рдЪрд░рдг рд╣реИ
/splunkforwarder/bin/splunk install app /splunkclouduf.spl -auth admin:changeme
splunkclouduf.spl - рдпрд╣ рд╕реНрдкреНрд▓рдВрдХ рдпреВрдирд┐рд╡рд░реНрд╕рд▓ рдлрд╛рд░рд╡рд░реНрдбрд░ рдХреНрд░реЗрдбреЗрдВрд╢рд┐рдпрд▓ рдлрд╝рд╛рдЗрд▓ рд╣реИ, рдЬрд┐рд╕реЗ рдЖрдк UI рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
рдореБрдЭреЗ рдХреМрди рд╕реЗ рдмрдЯрди рджрдмрд╛рдиреЗ рдЪрд╛рд╣рд┐рдП (рдЪрд┐рддреНрд░) рдпрд╣ рдПрдХ рд╕рд░рд▓ рд╕рдВрдЧреНрд░рд╣ рд╣реИ рдЬрд┐рд╕реЗ рдЖрдк рдЖрд╕рд╛рдиреА рд╕реЗ рдЕрдирдкреИрдХ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдЗрд╕рдореЗрдВ рд╢рд╛рдорд┐рд▓ рд╣реИ - рдкреНрд░рдорд╛рдгрдкрддреНрд░ рдФрд░ рдкрд╛рд╕рд╡рд░реНрдб рд╣рдорд╛рд░реЗ рд╕реНрдкреНрд▓рдВрдХрдХреНрд▓рд╛рдЙрдб рд╕реЗ рдХрдиреЗрдХреНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП;
рдЖрдЙрдЯрдкреБрдЯ рдиреЛрдбреНрд╕ рдЗрдирдкреБрдЯ рдиреЛрдбреНрд╕ рдХреА рд╕реВрдЪреА рдХреЗ рд╕рд╛рдеред рдпрд╣ рдлрд╝рд╛рдЗрд▓ рддрдм рддрдХ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╣реЛрдЧреА рдЬрдм рддрдХ рдЖрдк рд╕реНрдкреНрд▓рдВрдХ рдЗрдВрд╕реНрдЯреЙрд▓реЗрд╢рди рдХреЛ рдлрд┐рд░ рд╕реЗ рд╕реНрдерд╛рдкрд┐рдд рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ рдпрд╛ рдирдП рдЗрдирдкреБрдЯ рдиреЛрдбреНрд╕ рдЬреЛрдбрд╝рддреЗ рд╣реИрдВ рдпрджрд┐ рдпрд╣ рдСрди-рдкреНрд░рд┐рдорд╛рдЗрд╕реЗрд╕ рд╣реИред рд╡реИрд╕реЗ рднреА, рдХреБрдЫ рднреА рдЧрдВрднреАрд░ рдирд╣реАрдВ рд╣реЛрдЧрд╛ рдпрджрд┐ рдЖрдк рдЗрд╕реЗ рдЫрд╡рд┐ рдкрд░ рдбрд╛рд▓рддреЗ рд╣реИрдВред
рдЕрдВрддрд┐рдо рдЪрд░рдг - рдкреБрдирдГ рдЖрд░рдВрднред рд╣рд╛рдВ, рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЗрд╕реЗ рдкреБрдирдГ рдЖрд░рдВрдн рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред
рдЗрдирдкреБрдЯреНрд╕ рдореЗрдВ рд▓реЙрдЧреНрд╕ рдЬреЛрдбрд╝реЗрдВред рдЬрд┐рд╕реЗ рд╣рдо рд╕реНрдкреНрд▓рдВрдХ рдХреЛ рднреЗрдЬрдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред рдпрджрд┐ рдЖрдк рдХрдардкреБрддрд▓реА рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рджреЗрддреЗ рд╣реИрдВ, рддреЛ рдЖрдкрдХреЛ рдЗрд╕ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреЛ рдЫрд╡рд┐ рдореЗрдВ рдЬреЛрдбрд╝рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред рдмрд╕ рдпрд╣ рдзреНрдпрд╛рди рд░рдЦреЗрдВ рдХрд┐ рдХреЙрдиреНрдлрд┐рдЧ рдлрд╛рдЗрд▓ рдЖрд░реЛрд╣рд┐рдд рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдПред
Docker рд╕реНрдЯреЗрдЯ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреНрдпрд╛ рд╣реИрдВ? рдЖрдк
рдЖрдЙрдЯрдХреЛрд▓реНрдбрдореИрди рд╕реЗ
рдЧрд┐рддреБрдм рдкрд░ рд╕рдорд╛рдзрд╛рди рдкрд╛ рд╕рдХрддреЗ рд╣реИрдВ, рдореИрдВрдиреЗ рд╡рд╣рд╛рдВ рд╕реЗ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд▓реА рдФрд░ рдЗрд╕реЗ рдЕрджреНрдпрддрди рдХрд┐рдпрд╛ рддрд╛рдХрд┐ рдЗрд╕реЗ рдбреЛрдХрд░ (рд╕реАрдИ -17ред *) рдФрд░ рд╕реНрдкрдВрдХ (7. *) рдХреЗ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рджрд┐рдпрд╛ рдЬрд╛ рд╕рдХреЗред
рдЖрдк рдПрдХрддреНрд░рд┐рдд рдбреЗрдЯрд╛ рдХреЗ рд╕рд╛рде рдлреИрдВрд╕реА рдбреИрд╢рдмреЛрд░реНрдб рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВ:
рдбреИрд╢рдмреЛрд░реНрдб: (рдЪрд┐рддреНрд░) рдЖрдк рд░реЗрдкреЛ рдореЗрдВ рдбреИрд╢рдмреЛрд░реНрдб рд╕реНрд░реЛрдд рдХреЛрдб рдкрд╛ рд╕рдХрддреЗ рд╣реИрдВ, рдЬрд┐рд╕рдХрд╛ рдореИрдВрдиреЗ рд▓реЗрдЦ рдХреЗ рдЕрдВрдд рдореЗрдВ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рдерд╛ред рдкрд╣рд▓реА рдЪреБрдирд┐рдВрджрд╛ рдлрд╝реАрд▓реНрдб рдкрд░ рдзреНрдпрд╛рди рджреЗрдВ: рдЗрдВрдбреЗрдХреНрд╕ рдЪреБрдиреЗрдВ (рдорд╛рд╕реНрдХ рджреНрд╡рд╛рд░рд╛ рдЦреЛрдЬреЗрдВ)ред рдЖрдкрдХреЛ рдорд╛рд╕реНрдХ рдЕрдкрдбреЗрдЯ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред рдпрд╣ рдЗрдВрдбреЗрдХреНрд╕ рдирд╛рдореЛрдВ рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИ рдЬреЛ рдЖрдкрдХреЗ рдкрд╛рд╕ рд╣реИрдВред
рдЕрдВрдд рдореЗрдВ, рдореИрдВ
рдкреНрд░рд╛рд░рдВрдн () рдлрд╝рдВрдХреНрд╢рди рдкрд░ рдзреНрдпрд╛рди рджреЗрдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ
entrypoint.sh start() { trap teardown EXIT if [ -z $SPLUNK_INDEX ]; then echo "'SPLUNK_INDEX' env variable is empty or not defined. Should be 'dev' or 'prd'." >&2 exit 1 else sed -e "s/@index@/$SPLUNK_INDEX/" -i ${SPLUNK_HOME}/etc/system/local/inputs.conf fi sed -e "s/@hostname@/$(cat /etc/hostname)/" -i ${SPLUNK_HOME}/etc/system/local/inputs.conf sh -c "echo 'starting' > /tmp/splunk-container.state" ${SPLUNK_HOME}/bin/splunk start watch_for_failure }
рдореЗрд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рдкреНрд░рддреНрдпреЗрдХ рдкрд░реНрдпрд╛рд╡рд░рдг рдХреЗ рд▓рд┐рдП, рдФрд░ рдкреНрд░рддреНрдпреЗрдХ рд╕реЗрд╡рд╛ рдХреЗ рд▓рд┐рдП, рдореЗрдЬрдмрд╛рди рдорд╢реАрди рдпрд╛ рдбреЙрдХрдЯрд░ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЗ рд▓рд┐рдП рдХреЛрдИ рдлрд░реНрдХ рдирд╣реАрдВ рдкрдбрд╝рддрд╛, рд╣рдо рдПрдХ рдЕрд▓рдЧ рд╕реВрдЪрдХрд╛рдВрдХ рдмрдирд╛рддреЗ рд╣реИрдВред рдпрд╣ рд╕реВрдЪрдХрд╛рдВрдХ рдореЗрдВ рдбреЗрдЯрд╛ рдХреА рдЙрдЪреНрдЪ рдорд╛рддреНрд░рд╛ рд╕реЗ рдЦреЛрдЬ рдХреА рдЧрддрд┐ рдХреЛ рдХрдо рдХрд░рдиреЗ рд╕реЗ рд░реЛрдХрддрд╛ рд╣реИред рд╣рдо рд╕рд░рд▓ рдирд╛рдордХрд░рдг рд░реВрдкрд╛рдВрддрд░рдг рдирд┐рдпрдо рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ:
<рдкрд░реНрдпрд╛рд╡рд░рдг_рдирд╛рдо> _ <рд╕реЗрд╡рд╛ / рдЖрд╡реЗрджрди / рдЖрджрд┐> ред рдЗрд╕ рдкреНрд░рдХрд╛рд░, рдПрдХ рд╕рд╛рд░реНрд╡рднреМрдорд┐рдХ рдХрдВрдЯреЗрдирд░ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдо рд╡рд╛рдЗрд▓реНрдбрдХрд╛рд░реНрдб рдХреЛ рдкрд░реНрдпрд╛рд╡рд░рдг рдХреЗ рдирд╛рдо рд╕реЗ рдмрджрд▓ рджреЗрддреЗ рд╣реИрдВред рдкрд░реНрдпрд╛рд╡рд░рдг рдирд╛рдо рдЪрд░ рдкрд░реНрдпрд╛рд╡рд░рдг рдЪрд░ рджреНрд╡рд╛рд░рд╛ рд╡рд┐рд░рд╛рд╕рдд рдореЗрдВ рдорд┐рд▓рд╛ рд╣реИред рдЕрдЬреАрдм рд▓рдЧрддрд╛ рд╣реИред
рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдореИрдВ рдпрд╣ рдмрддрд╛рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ рдХрд┐ рдХрд┐рд╕реА рдХрд╛рд░рдг рд╕реЗ рд╕реНрдкрдВрдХ рд▓реЙрдЧ рдореЗрдВ рд╣реЛрд╕реНрдЯ рдлрд╝реАрд▓реНрдб рдХреЗ рд░реВрдк рдореЗрдВ docker рдкреИрд░рд╛рдореАрдЯрд░
hostname рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред рдпрд╣ рд╣реЛрд╕реНрдЯ рдХреЗ рд╕рд╛рде рд▓реЙрдЧ рднреЗрдЬрдирд╛ рдЬрд╛рд░реА рд░рдЦреЗрдЧрд╛ = <рдлреЙрд░рд╡рд░реНрдб_рдХрдВрдЯреЗрдирд░_рдЖрдИрдбреА> рднрд▓реЗ рд╣реА рдЖрдк рд╣реЛрд╕реНрдЯрдирд╛рдо рдкреИрд░рд╛рдореАрдЯрд░ рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░реЗрдВред рд╕рдорд╛рдзрд╛рди: рдЖрдк рд╣реЛрд╕реНрдЯ рдорд╢реАрди рд╕реЗ
/ etc / hostname рдорд╛рдЙрдВрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдЗрдВрдбреЗрдХреНрд╕ рдирд╛рдо рдЬреИрд╕реЗ рд╣реЛрд╕реНрдЯ рдкреИрд░рд╛рдореАрдЯрд░ рдХреЛ рдмрджрд▓ рд╕рдХрддреЗ рд╣реИрдВред
docker-compose.yml рдЙрджрд╛рд╣рд░рдг version: '2' services: splunk-forwarder: image: "${IMAGE_REPO}/docker-stats-splunk-forwarder:${IMAGE_VERSION}" environment: SPLUNK_INDEX: ${ENVIRONMENT} volumes: - /etc/hostname:/etc/hostname:ro - /var/log:/var/log - /var/run/docker.sock:/var/run/docker.sock:ro
рд╕рд╛рд░рд╛рдВрд╢редрд╣рд╛рдВ, рд╢рд╛рдпрдж, рдореЗрд░рд╛ рд╕рдорд╛рдзрд╛рди рдЖрджрд░реНрд╢ рдирд╣реАрдВ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдФрд░ рдпрд╣ рд╕рднреА рдХреЗ рд▓рд┐рдП рд╕рд╛рд░реНрд╡рднреМрдорд┐рдХ рдирд╣реАрдВ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдЗрд╕рдореЗрдВ
"рд╣рд╛рд░реНрдбрдХреЛрдб" рд╢рд╛рдорд┐рд▓ рд╣реИ ред рд▓реЗрдХрд┐рди рдпрд╣ рдХрд┐рд╕реА рдРрд╕реЗ рд╡реНрдпрдХреНрддрд┐ рдХреЗ рд▓рд┐рдП рдорджрджрдЧрд╛рд░ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдЬреЛ рдЕрдкрдиреА рдЦреБрдж рдХреА рдЫрд╡рд┐ рдмрдирд╛ рд╕рдХрддрд╛ рд╣реИ рдФрд░ рдЗрд╕реЗ рдирд┐рдЬреА рд░рдЬрд┐рд╕реНрдЯреНрд░реА рдореЗрдВ рд░рдЦ рд╕рдХрддрд╛ рд╣реИред рдЦрд╛рд╕рддреМрд░ рдкрд░ рдЕрдЧрд░ рдЖрдкрдХреЛ рдбреЙрдХрд░ рдореЗрдВ рд╕реНрдкреНрд▓рдВрдХ рдлрд╛рд░рд╡рд░реНрдбрд░ рдХреА рдЬрд░реВрд░рдд рд╣реЛред
рд▓рд┐рдВрдХ:
рдпрд╣ рд╕рдорд╛рдзрд╛рдирдЖрдЙрдЯрдХреЛрд▓реНрдбрдореИрди рд╕реЗ рд╕рдорд╛рдзрд╛рди рдЬрд┐рд╕рдиреЗ рдореБрдЭреЗ рдХреБрдЫ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХрд╛ рдлрд┐рд░ рд╕реЗ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдкреНрд░реЗрд░рдгрд╛ рджреАрдЖрдзрд┐рдХрд╛рд░рд┐рдХ рдкреНрд░рд▓реЗрдЦрди рдкреГрд╖реНрдаред рдпреВрдирд┐рд╡рд░реНрд╕рд▓ рдлрд╛рд░рд╡рд░реНрдбрд░ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди