рд╕рд┐рд╕реНрдЯрдо рд▓реЙрдЧрд░ рдХреЗ рд░реВрдк рдореЗрдВ рдбреЙрдХ рдореЗрдВ рд╕реНрдкреНрд▓рд┐рдЯ рдпреВрдирд┐рд╡рд░реНрд╕рд▓ рдлрд╛рд░рд╡рд░реНрдбрд░



рд╕реНрдкреНрд▓рдВрдХ рд▓реЙрдЧ рдХреЛ рдЗрдХрдЯреНрдард╛ рдХрд░рдиреЗ рдФрд░ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рдорд╛рдиреНрдпрддрд╛ рдкреНрд░рд╛рдкреНрдд рд╡рд╛рдгрд┐рдЬреНрдпрд┐рдХ рдЙрддреНрдкрд╛рджреЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рд╣реИред рдЕрдм рднреА, рдЬрдм рд░реВрд╕ рдореЗрдВ рдмрд┐рдХреНрд░реА рдЕрдм рдирд╣реАрдВ рдХреА рдЬрд╛рддреА рд╣реИ, рддреЛ рдЗрд╕ рдЙрддреНрдкрд╛рдж рдкрд░ рдирд┐рд░реНрджреЗрд╢ / рдХреИрд╕реЗ-рдХреИрд╕реЗ рдирд╣реАрдВ рд▓рд┐рдЦрдирд╛ рдПрдХ рдХрд╛рд░рдг рдирд╣реАрдВ рд╣реИред

рдХрд╛рд░реНрдп : рдореЗрдЬрдмрд╛рди рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреЛ рдмрджрд▓рдиреЗ рдХреЗ рдмрд┐рдирд╛ рд╕реНрдкрдВрдХ рдореЗрдВ рдбреЙрдХ рдиреЛрдбреНрд╕ рд╕реЗ рд╕рд┐рд╕реНрдЯрдо рд▓реЙрдЧ рдХреЛ рдЗрдХрдЯреНрдард╛ рдХрд░реЗрдВ

рдореИрдВ рдПрдХ рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХреЗ рд╕рд╛рде рд╢реБрд░реБрдЖрдд рдХрд░рдирд╛ рдЪрд╛рд╣реВрдВрдЧрд╛, рдЬреЛ рдбреЙрдХрдЯрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╕рдордп рдЕрдЬреАрдм рд▓рдЧрддрд╛ рд╣реИред
рдбреЙрдХрдЯрд░ рд╣рдм рд╕реЗ рд▓рд┐рдВрдХ
рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдХреНрдпрд╛ рд╣реИ:

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 *********    ... 

рдмрд╣реБрдд рдмрдврд╝рд┐рдпрд╛ред рдЫрд╡рд┐ рдореЗрдВ рдПрдХ рдХрд▓рд╛рдХреГрддрд┐ рднреА рдирд╣реАрдВ рд╣реИред рдпрд╣реА рд╣реИ, рд╣рд░ рдмрд╛рд░ рдЬрдм рдЖрдк рд╢реБрд░реВ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рд╕рдВрдЧреНрд░рд╣ рдХреЛ рдмрд╛рдпрдиреЗрд░реА, рдЕрдирдкреИрдХ рдХреЗ рд╕рд╛рде рдбрд╛рдЙрдирд▓реЛрдб рдХрд░рдиреЗ рдФрд░ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдиреЗ рдореЗрдВ рд╕рдордп рд▓рдЧреЗрдЧрд╛ред
рд▓реЗрдХрд┐рди рдбреЙрдХрдЯрд░-рд╡реЗ рдФрд░ рдЙрд╕ рд╕рдм рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреНрдпрд╛?

рдХреЛрдИ рдзрдиреНрдпрд╡рд╛рдж рдирд╣реАрдВред рд╣рдо рджреВрд╕рд░реЗ рд░рд╛рд╕реНрддреЗ рд╕реЗ рдЬрд╛рдПрдВрдЧреЗред рдпрджрд┐ рд╣рдо рд╡рд┐рдзрд╛рдирд╕рднрд╛ рдЪрд░рдг рдореЗрдВ рдпреЗ рд╕рднреА рдХрд╛рд░реНрдп рдХрд░рддреЗ рд╣реИрдВ рддреЛ рдХреНрдпрд╛ рд╣реЛрдЧрд╛? рддреЛ рдлрд┐рд░ рдЪрд▓рд┐рдП!

рд▓рдВрдмреЗ рд╕рдордп рддрдХ рдЦреАрдВрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рдирд╣реАрдВ, рдореИрдВ рддреБрд░рдВрдд рдЕрдВрддрд┐рдо рдЫрд╡рд┐ рджрд┐рдЦрд╛рдКрдВрдЧрд╛:

Dockerfile
 #      FROM centos:7 #  ,         ENV SPLUNK_HOME /splunkforwarder ENV SPLUNK_ROLE splunk_heavy_forwarder ENV SPLUNK_PASSWORD changeme ENV SPLUNK_START_ARGS --accept-license #   # wget -    # expect -     Splunk    # jq -   ,     RUN yum install -y epel-release \ && yum install -y wget expect jq # , ,  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 #  shell   ,   inputs.conf, splunkclouduf.spl  first_start.sh   .     source . 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/ #    ,       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/entrypoint.sh", "init/checkstate.sh", "/sbin/" ] #  .     /,  . 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" ] 

рдФрд░ рдЗрд╕рд▓рд┐рдП, рдХреНрдпрд╛ рдирд┐рд╣рд┐рдд рд╣реИ

first_start.sh
 #!/usr/bin/expect -f set timeout -1 spawn /splunkforwarder/bin/splunk start --accept-license expect "Please enter an administrator username: " send -- "admin\r" expect "Please enter a new password: " send -- "changeme\r" expect "Please confirm new password: " send -- "changeme\r" expect eof 

рдкрд╣рд▓реА рд╢реБрд░реБрдЖрдд рдореЗрдВ, рд╕реНрдкреНрд▓рдВрдХ рдПрдХ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдирд╛рдо / рдкрд╛рд╕рд╡рд░реНрдб рдХреЗ рд▓рд┐рдП рдкреВрдЫрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЗрд╕ рдбреЗрдЯрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреЗрд╡рд▓ рдЗрд╕ рд╡рд┐рд╢реЗрд╖ рд╕реНрдерд╛рдкрдирд╛ рдХреЗ рд▓рд┐рдП рдкреНрд░рд╢рд╛рд╕рдирд┐рдХ рдХрдорд╛рдВрдб рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЕрд░реНрдерд╛рдд рдХрдВрдЯреЗрдирд░ рдХреЗ рдЕрдВрджрд░ред рд╣рдорд╛рд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рд╣рдо рдмрд╕ рдХрдВрдЯреЗрдирд░ рд▓реЙрдиреНрдЪ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ рддрд╛рдХрд┐ рд╕рдм рдХреБрдЫ рдХрд╛рдо рдХрд░реЗ рдФрд░ рд▓реЙрдЧ рдкрд╛рдиреА рдХреА рддрд░рд╣ рдмрд╣ рдЬрд╛рдПред рдмреЗрд╢рдХ, рдпрд╣ рд╣рд╛рд░реНрдбрдХреЛрдб рд╣реИ, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдЕрдиреНрдп рддрд░реАрдХреЗ рдирд╣реАрдВ рдорд┐рд▓реЗ рд╣реИрдВред

рдЖрдЧреЗ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдкрд░ рдЕрдорд▓ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ

 /splunkforwarder/bin/splunk install app /splunkclouduf.spl -auth admin:changeme 

splunkclouduf.spl - рдпрд╣ рд╕реНрдкреНрд▓рдВрдХ рдпреВрдирд┐рд╡рд░реНрд╕рд▓ рдлрд╛рд░рд╡рд░реНрдбрд░ рдХреЗ рд▓рд┐рдП рдПрдХ рдХреНрд░реЗрдбрд┐рдЯ рдлрд╝рд╛рдЗрд▓ рд╣реИ, рдЬрд┐рд╕реЗ рд╡реЗрдм рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рд╕реЗ рдбрд╛рдЙрдирд▓реЛрдб рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

рдбрд╛рдЙрдирд▓реЛрдб рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╣рд╛рдБ рдХреНрд▓рд┐рдХ рдХрд░реЗрдВ (рддрд╕реНрд╡реАрд░реЛрдВ рдореЗрдВ)



рдпрд╣ рдПрдХ рдирд┐рдпрдорд┐рдд рд╕рдВрдЧреНрд░рд╣ рд╣реИ рдЬрд┐рд╕реЗ рдЖрдк рдЕрдирдЬрд╝рд┐рдк рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдЕрдВрджрд░ - рд╣рдорд╛рд░реЗ рдЗрдирдкреБрдЯ рдЙрджрд╛рд╣рд░рдгреЛрдВ рдХреА рдПрдХ рд╕реВрдЪреА рдХреЗ рд╕рд╛рде рд╣рдорд╛рд░реЗ SplunkCloud рдФрд░ outputs.conf рд╕реЗ рдХрдиреЗрдХреНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд░рдорд╛рдг рдкрддреНрд░ рдФрд░ рдкрд╛рд╕рд╡рд░реНрдбред рдпрд╣ рдлрд╝рд╛рдЗрд▓ рддрдм рддрдХ рдкреНрд░рд╛рд╕рдВрдЧрд┐рдХ рд░рд╣реЗрдЧреА рдЬрдм рддрдХ рдЖрдк рдЕрдкрдиреА рд╕реНрдкреНрд▓рдВрдХ рд╕реНрдерд╛рдкрдирд╛ рдХреЛ рдкреБрдирд░реНрд╕реНрдерд╛рдкрд┐рдд рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ рдпрд╛ рдпрджрд┐ рдЗрдВрд╕реНрдЯреЙрд▓реЗрд╢рди рдСрди-рдкреНрд░рд┐рдорд╛рдЗрд╕реЗрд╕ рд╣реИ рддреЛ рдЗрдирдкреБрдЯ рдиреЛрдб рдЬреЛрдбрд╝реЗрдВред рдЗрд╕рд▓рд┐рдП, рдХрдВрдЯреЗрдирд░ рдХреЗ рдЕрдВрджрд░ рдЗрд╕реЗ рдЬреЛрдбрд╝рдирд╛ рдареАрдХ рд╣реИред

рдФрд░ рд╕рдмрд╕реЗ рдЖрдЦрд┐рд░реА рдореЗрдВ рдкреБрдирдГ рдЖрд░рдВрдн рд╣реЛрддрд╛ рд╣реИред рд╣рд╛рдВ, рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдЗрд╕реЗ рдкреБрдирдГ рдЖрд░рдВрдн рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред

рд╣рдорд╛рд░реЗ inputs.conf рдореЗрдВ рд╣рдо рд╡реЗ рд▓реЙрдЧреНрд╕ рдЬреЛрдбрд╝рддреЗ рд╣реИрдВ рдЬрд┐рдиреНрд╣реЗрдВ рд╣рдо рд╕реНрдкреНрд▓рдВрдХ рдХреЛ рднреЗрдЬрдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред рдЗрд╕ рдлрд╝рд╛рдЗрд▓ рдХреЛ рдЫрд╡рд┐ рдореЗрдВ рдЬреЛрдбрд╝рдирд╛ рдЖрд╡рд╢реНрдпрдХ рдирд╣реАрдВ рд╣реИ рдпрджрд┐, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЖрдк рдХрдардкреБрддрд▓реА рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рддреЗ рд╣реИрдВред рдореБрдЦреНрдп рдмрд╛рдд рдпрд╣ рд╣реИ рдХрд┐ рдлрд╛рд░рд╡рд░реНрдбрд░ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рддрд╛ рд╣реИ рдЬрдм рдбреЗрдореЙрди рд╢реБрд░реВ рд╣реЛрддрд╛ рд╣реИ, рдЕрдиреНрдпрдерд╛ ред/splunk рдкреБрдирд░рд╛рд░рдВрдн рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреАред

рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рдЖрдБрдХрдбрд╝реЗ рдХреНрдпрд╛ рд╣реИрдВ? рдЧрд┐рддреБрдм рдХрд╛ рдЖрдЙрдЯрдХреЛрд▓реНрдбрдореИрди рд╕реЗ рдкреБрд░рд╛рдирд╛ рд╕рдорд╛рдзрд╛рди рд╣реИ, рд▓рд┐рдкрд┐рдпреЛрдВ рдХреЛ рд╡рд╣рд╛рдВ рд╕реЗ рд▓реЗ рдЬрд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдФрд░ рдбреЙрдХрдЯрд░ (рд╕реА -17ред *) рдФрд░ рд╕реНрдкрдВрдХ (7. *) рдХреЗ рд╡рд░реНрддрдорд╛рди рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдВрддрд┐рдо рд░реВрдк рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

рдкреНрд░рд╛рдкреНрдд рдЖрдВрдХрдбрд╝реЛрдВ рдХреЗ рд╕рд╛рде, рдЖрдк рдРрд╕реЗ рдирд┐рд░реНрдорд╛рдг рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ

рдбреИрд╢рдмреЛрд░реНрдб: (рдЪрд┐рддреНрд░реЛрдВ рдХреЗ рдПрдХ рдЬреЛрдбрд╝реЗ)



рд▓реЗрдЦ рдХреЗ рдЕрдВрдд рдореЗрдВ рджрд░реНрд╢рд╛рдП рдЧрдП рд╢рд▓рдЬрдо рдореЗрдВ рд░реЗрдЧрд┐рд╕реНрддрд╛рди рдХрд╛ рд╕реНрд░реЛрдд рдХреЛрдб рдирд┐рд╣рд┐рдд рд╣реИред рдХреГрдкрдпрд╛ рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ 2 рдЪреБрдирд┐рдВрджрд╛ рдХреНрд╖реЗрддреНрд░ рд╣реИрдВ: 1 - рд╕реВрдЪрдХрд╛рдВрдХ рдХрд╛ рдЪрдпрди рдХрд░реЗрдВ (рдореБрдЦреМрдЯрд╛ рджреНрд╡рд╛рд░рд╛ рдЦреЛрдЬрд╛ рдЧрдпрд╛), рдореЗрдЬрдмрд╛рди / рдХрдВрдЯреЗрдирд░ рдХрд╛ рдЪрдпрди рдХрд░реЗрдВред рдЖрдкрдХреЛ рд╕рдВрднрд╡рддрдГ рдЖрдкрдХреЗ рджреНрд╡рд╛рд░рд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рдирд╛рдореЛрдВ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдЗрдВрдбреЗрдХреНрд╕ рдорд╛рд╕реНрдХ рдХреЛ рдЕрдкрдбреЗрдЯ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред

рдЕрдВрдд рдореЗрдВ, рдореИрдВ рдкреНрд░рд╛рд░рдВрдн () рдлрд╝рдВрдХреНрд╢рди рдореЗрдВ рдзреНрдпрд╛рди рджреЗрдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ

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 } 

рдореЗрд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рдкреНрд░рддреНрдпреЗрдХ рдкрд░реНрдпрд╛рд╡рд░рдг рдФрд░ рдкреНрд░рддреНрдпреЗрдХ рд╡реНрдпрдХреНрддрд┐ рдЗрдХрд╛рдИ рдХреЗ рд▓рд┐рдП, рдЪрд╛рд╣реЗ рд╡рд╣ рдПрдХ рдХрдВрдЯреЗрдирд░ рдпрд╛ рдПрдХ рдореЗрдЬрдмрд╛рди рдорд╢реАрди рдореЗрдВ рдПрдХ рдЕрдиреБрдкреНрд░рдпреЛрдЧ рд╣реЛ, рд╣рдо рдПрдХ рдЕрд▓рдЧ рд╕реВрдЪрдХрд╛рдВрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВред рддреЛ рдЦреЛрдЬ рдЧрддрд┐ рдбреЗрдЯрд╛ рдХреЗ рдПрдХ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╕рдВрдЪрдп рдХреЗ рд╕рд╛рде рдЧреНрд░рд╕реНрдд рдирд╣реАрдВ рд╣реЛрдЧреАред рдЗрдВрдбреЗрдХреНрд╕ рдХреЛ рдирд╛рдо рджреЗрдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕рд░рд▓ рдирд┐рдпрдо рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ: <environment_name> _ <рд╕реЗрд╡рд╛ / рдПрдкреНрд▓рд┐рдХреЗрд╢рди / рдЖрджрд┐> ред рдЗрд╕рд▓рд┐рдП, рдХрдВрдЯреЗрдирд░ рдХреЛ рд╕рд╛рд░реНрд╡рднреМрдорд┐рдХ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП, рд╕реАрдзреЗ рдбреЗрдореЙрди рд╢реБрд░реВ рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ, рд╣рдо рдкрд░реНрдпрд╛рд╡рд░рдг рдирд╛рдо рдХреЗ рд╕рд╛рде sed рд╡рд╛рдЗрд▓реНрдбрдХрд╛рд░реНрдб рдХреЛ рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрд┐рдд рдХрд░рддреЗ рд╣реИрдВред рдПрдХ рдкрд░реНрдпрд╛рд╡рд░рдг рдирд╛рдо рдХреЗ рд╕рд╛рде рдПрдХ рдЪрд░ рдкрд░реНрдпрд╛рд╡рд░рдг рдЪрд░ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдкрд╛рд░рд┐рдд рдХрд┐рдпрд╛ рд╣реИред рдпрд╣ рдЕрдЬреАрдм рд▓рдЧрддрд╛ рд╣реИред

рдпрд╣ рднреА рдзреНрдпрд╛рди рджреЗрдиреЗ рдпреЛрдЧреНрдп рд╣реИ рдХрд┐ рдХрд┐рд╕реА рдХрд╛рд░рдг рд╕реЗ, Splunk docker hostname рдкреИрд░рд╛рдореАрдЯрд░ рд╕реЗ рдкреНрд░рднрд╛рд╡рд┐рдд рдирд╣реАрдВ рд╣реИред рд╡реИрд╕реЗ рднреА, рд╡рд╣ рдЕрдкрдиреЗ рдХрдВрдЯреЗрдирд░ рдХреА рдЖрдИрдбреА рд╕реЗ рд▓рдЧрд╛рддрд╛рд░ рдореЗрдЬрдмрд╛рди рдХреНрд╖реЗрддреНрд░ рдореЗрдВ рд▓реЙрдЧ рднреЗрдЬреЗрдЧрд╛ред рд╕рдорд╛рдзрд╛рди рдХреЗ рд░реВрдк рдореЗрдВ, рдЖрдк рд╣реЛрд╕реНрдЯ рдорд╢реАрди рд╕реЗ / etc / hostname рдорд╛рдЙрдВрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░, рд╕реНрдЯрд╛рд░реНрдЯрдЕрдк рдкрд░, рдЗрдВрдбреЗрдХреНрд╕ рдирд╛рдореЛрдВ рдХреЗ рд╕рдорд╛рди рдПрдХ рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрди рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рдбреЙрдХрдЯрд░-рдХрдореНрдкреЛрдЬрд╝.рдЗрдореНрд▓ рдЙрджрд╛рд╣рд░рдг
 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 


рдкрд░рд┐рдгрд╛рдо

рд╣рд╛рдВ, рд╢рд╛рдпрдж рд╕рдорд╛рдзрд╛рди рд╕рд╣реА рдирд╣реАрдВ рд╣реИ рдФрд░ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рд╕рднреА рдХреЗ рд▓рд┐рдП рд╕рд╛рд░реНрд╡рднреМрдорд┐рдХ рдирд╣реАрдВ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ "рд╣рд╛рд░реНрдбрдХреЛрдб" рдХрд╛ рдПрдХ рдмрд╣реБрдд рдХреБрдЫ рд╣реИред рд▓реЗрдХрд┐рди рдЗрд╕рдХреЗ рдЖрдзрд╛рд░ рдкрд░, рд╣рд░ рдХреЛрдИ рдЕрдкрдиреА рдЦреБрдж рдХреА рдЫрд╡рд┐ рдХреЛ рдЗрдХрдЯреНрдард╛ рдХрд░ рд╕рдХрддрд╛ рд╣реИ рдФрд░ рдЗрд╕реЗ рдЕрдкрдиреА рдирд┐рдЬреА рдХрд▓рд╛рдХреГрддрд┐рдпреЛрдВ рдореЗрдВ рдбрд╛рд▓ рд╕рдХрддрд╛ рд╣реИ, рдпрджрд┐ рдРрд╕рд╛ рд╣реБрдЖ, рддреЛ рдЖрдкрдХреЛ рдбреЙрдХрдЯрд░ рдореЗрдВ рд╕реНрдкреНрд▓рдВрдХ рдлрд╛рд░рд╡рд░реНрдбрд░ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред

рд╕рдВрджрд░реНрдн:

рд▓реЗрдЦ рд╕реЗ рд╕рдорд╛рдзрд╛рди
рдЖрдЙрдЯрдХреЛрд▓реНрдбрдореИрди рдХреЗ рд╕рдорд╛рдзрд╛рди рдиреЗ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХреЗ рднрд╛рдЧ рдХрд╛ рдкреБрди: рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд░реЗрд░рд┐рдд рдХрд┐рдпрд╛
рдХреЗред рдпреВрдирд┐рд╡рд░реНрд╕рд▓ рдлрд╛рд░рд╡рд░реНрдбрд░ рд╕реЗрдЯрдЕрдк рдкреНрд░рд▓реЗрдЦрди

Source: https://habr.com/ru/post/hi447402/


All Articles