{"id":317915,"date":"2021-02-12T15:01:13","date_gmt":"2021-02-12T15:01:13","guid":{"rendered":"http:\/\/savepearlharbor.com\/?p=317915"},"modified":"-0001-11-30T00:00:00","modified_gmt":"-0001-11-29T21:00:00","slug":"","status":"publish","type":"post","link":"https:\/\/savepearlharbor.com\/?p=317915","title":{"rendered":"\u0426\u0435\u043d\u0442\u0440\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u043d\u043d\u043e\u0435 \u043b\u043e\u0433\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0432 Docker \u0441 \u043f\u0440\u0438\u043c\u0435\u043d\u0435\u043d\u0438\u0435\u043c ELK Stack"},"content":{"rendered":"\n<div class=\"post__text post__text_v2\" id=\"post-content-body\">\n<blockquote>\n<p><em>\u0412 \u0440\u0430\u043c\u043a\u0430\u0445 \u0437\u0430\u043f\u0443\u0441\u043a\u0430 <\/em><a href=\"https:\/\/otus.pw\/ifoa\/\"><em>\u043f\u0440\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0433\u043e \u0438\u043d\u0442\u0435\u043d\u0441\u0438\u0432\u0430 \u043f\u043e ELK<\/em><\/a><em> \u043f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u0438\u043b\u0438 \u0434\u043b\u044f \u0432\u0430\u0441 \u043f\u0435\u0440\u0435\u0432\u043e\u0434 \u043f\u043e\u043b\u0435\u0437\u043d\u043e\u0433\u043e \u043c\u0430\u0442\u0435\u0440\u0438\u0430\u043b\u0430. \u041f\u0440\u0438\u0433\u043b\u0430\u0448\u0430\u0435\u043c \u0442\u0430\u043a\u0436\u0435 \u0432\u0441\u0435\u0445 \u0437\u0430\u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043e\u0432\u0430\u043d\u043d\u044b\u0445 \u043d\u0430 <\/em><a href=\"https:\/\/otus.pw\/OwaL\/\"><em>\u043e\u043d\u043b\u0430\u0439\u043d-\u0432\u0441\u0442\u0440\u0435\u0447\u0443 \u0441 \u043f\u0440\u0435\u043f\u043e\u0434\u0430\u0432\u0430\u0442\u0435\u043b\u0435\u043c \u0438\u043d\u0442\u0435\u043d\u0441\u0438\u0432\u0430<\/em><\/a><em>, \u0433\u0434\u0435 \u043f\u0440\u0435\u043f\u043e\u0434\u0430\u0432\u0430\u0442\u0435\u043b\u044c \u0440\u0430\u0441\u0441\u043a\u0430\u0436\u0435\u0442 \u043e \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0435, \u0444\u043e\u0440\u043c\u0430\u0442\u0435 \u043e\u0431\u0443\u0447\u0435\u043d\u0438\u044f \u0438 \u043f\u0435\u0440\u0441\u043f\u0435\u043a\u0442\u0438\u0432\u0430\u0445 \u0434\u043b\u044f \u0432\u044b\u043f\u0443\u0441\u043a\u043d\u0438\u043a\u043e\u0432.<\/em><\/p>\n<\/blockquote>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/0a1\/0f1\/cf9\/0a10f1cf9818b462f26bf8b2dea115ec\" width=\"780\" height=\"439\"><figcaption><\/figcaption><\/figure>\n<hr>\n<p>\u041f\u043e \u043c\u0435\u0440\u0435 \u0440\u043e\u0441\u0442\u0430 \u0432\u0430\u0448\u0435\u0439 \u0438\u043d\u0444\u0440\u0430\u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u044b \u043d\u0430\u043b\u0438\u0447\u0438\u0435 \u0440\u043e\u0431\u043e\u0442\u043e\u0432 \u0438 \u043d\u0430\u0434\u0435\u0436\u043d\u0430\u044f \u0446\u0435\u043d\u0442\u0440\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u043d\u043d\u0430\u044f \u0441\u0438\u0441\u0442\u0435\u043c\u0430 \u043b\u043e\u0433\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u0441\u044f \u043a\u0440\u0438\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u0432\u0430\u0436\u043d\u044b\u043c\u0438 \u0441\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u044e\u0449\u0438\u043c\u0438. \u0426\u0435\u043d\u0442\u0440\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u043b\u043e\u0433\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u0441\u044f \u043a\u043b\u044e\u0447\u0435\u0432\u044b\u043c \u0430\u0441\u043f\u0435\u043a\u0442\u043e\u043c \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u0430 IT-\u0437\u0430\u0434\u0430\u0447 \u0438 \u0434\u0430\u0435\u0442 \u0432\u0430\u043c \u0445\u043e\u0440\u043e\u0448\u0438\u0439 \u043e\u0431\u0437\u043e\u0440 \u0432\u0441\u0435\u0439 \u0432\u0430\u0448\u0435\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u044b.<\/p>\n<p>\u041b\u0443\u0447\u0448\u0435\u0435 \u0440\u0435\u0448\u0435\u043d\u0438\u0435 \u2014 \u0430\u0433\u0440\u0435\u0433\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043b\u043e\u0433\u0438 \u0441 \u043c\u0435\u0442\u0430\u0434\u0430\u043d\u043d\u044b\u043c\u0438 \u0438\u0437 \u0432\u0441\u0435\u0445 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u043e\u0432. \u042d\u0442\u043e \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u0438\u0442 \u0432\u0430\u043c \u043b\u0443\u0447\u0448\u0438\u0435 \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u044b \u043e\u0442\u0441\u043b\u0435\u0436\u0438\u0432\u0430\u043d\u0438\u044f \u0438 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u0445\u043e\u0440\u043e\u0448\u0443\u044e \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0443 \u043e\u0442 \u0441\u043e\u043e\u0431\u0449\u0435\u0441\u0442\u0432\u0430. \u0417\u0434\u0435\u0441\u044c \u043d\u0430 \u0441\u0446\u0435\u043d\u0443 \u0432\u044b\u0445\u043e\u0434\u0438\u0442 ELK Stack. ELK, \u0442\u0430\u043a\u0436\u0435 \u0438\u0437\u0432\u0435\u0441\u0442\u043d\u044b\u0439 \u043a\u0430\u043a Elastic stack, \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 \u0441\u043e\u0431\u043e\u0439 \u043a\u043e\u043c\u0431\u0438\u043d\u0430\u0446\u0438\u044e \u0441\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0445 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u043e\u0432 \u0441 \u043e\u0442\u043a\u0440\u044b\u0442\u044b\u043c \u0438\u0441\u0445\u043e\u0434\u043d\u044b\u043c \u043a\u043e\u0434\u043e\u043c, \u0442\u0430\u043a\u0438\u0445 \u043a\u0430\u043a ElasticSearch, Logstash \u0438 Kibana. \u042d\u0442\u043e \u043f\u043e\u043b\u043d\u043e\u0435 \u0440\u0435\u0448\u0435\u043d\u0438\u0435 \u0434\u043b\u044f \u0441\u043a\u0432\u043e\u0437\u043d\u043e\u0433\u043e \u0430\u043d\u0430\u043b\u0438\u0437\u0430 \u0436\u0443\u0440\u043d\u0430\u043b\u043e\u0432, \u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0432 \u0441\u0432\u043e\u0435\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u0435.<\/p>\n<p>\u041a\u0430\u0436\u0434\u043e\u043c\u0443 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u0443 \u043e\u0442\u0432\u0435\u0434\u0435\u043d\u0430 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u0430\u044f \u0440\u043e\u043b\u044c: ElasticSearch \u043b\u0443\u0447\u0448\u0435 \u0432\u0441\u0435\u0433\u043e \u0445\u0440\u0430\u043d\u0438\u0442 \u043d\u0435\u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0430\u043d\u043d\u044b\u0435 \u043b\u043e\u0433\u0438, Logstash \u043f\u043e\u043c\u043e\u0433\u0430\u0435\u0442 \u0441\u043e\u0431\u0438\u0440\u0430\u0442\u044c \u0438 \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u044b\u0432\u0430\u0442\u044c \u043b\u043e\u0433\u0438 \u0432 \u0441\u043e\u0433\u043b\u0430\u0441\u043e\u0432\u0430\u043d\u043d\u044b\u0439 \u0444\u043e\u0440\u043c\u0430\u0442, \u0430 Kibana \u0434\u043e\u0431\u0430\u0432\u043b\u044f\u0435\u0442 \u043e\u0442\u043b\u0438\u0447\u043d\u044b\u0439 \u0443\u0440\u043e\u0432\u0435\u043d\u044c \u0432\u0438\u0437\u0443\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u0438 \u043f\u043e\u043c\u043e\u0433\u0430\u0435\u0442 \u0432\u0430\u043c \u0443\u043f\u0440\u0430\u0432\u043b\u044f\u0442\u044c \u0432\u0430\u0448\u0435\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u043e\u0439 \u0432 \u0443\u0434\u043e\u0431\u043d\u043e\u0439 \u0434\u043b\u044f \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f \u043c\u0430\u043d\u0435\u0440\u0435.<\/p>\n<p>\u0412 \u044d\u0442\u043e\u043c \u0440\u0443\u043a\u043e\u0432\u043e\u0434\u0441\u0442\u0432\u0435 \u0432\u044b \u0443\u0437\u043d\u0430\u0435\u0442\u0435, \u043a\u0430\u043a \u0440\u0430\u0437\u0432\u0435\u0440\u043d\u0443\u0442\u044c ELK \u0438 \u043d\u0430\u043b\u0430\u0434\u0438\u0442\u044c \u0430\u0433\u0440\u0435\u0433\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u043d\u044b\u0445 \u043b\u043e\u0433\u043e\u0432. \u041c\u044b \u0441\u043e\u0431\u0438\u0440\u0430\u0435\u043c\u0441\u044f \u043e\u0431\u044a\u0435\u0434\u0438\u043d\u0438\u0442\u044c ELK \u0441 <a href=\"https:\/\/www.elastic.co\/products\/beats\/filebeat?ref=hackernoon.com\">Filebeat,<\/a> \u0447\u0442\u043e\u0431\u044b \u0430\u0433\u0440\u0435\u0433\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u043d\u044b\u0435 \u043b\u043e\u0433\u0438. \u0414\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u043c\u044b \u0441\u043e\u0431\u0438\u0440\u0430\u0435\u043c\u0441\u044f \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u0439 \u043e\u0431\u0440\u0430\u0437 Docker.<\/p>\n<h3>\u0428\u0430\u0433 1 &#8212; \u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 Filebeat:<\/h3>\n<p>\u041d\u0430\u0447\u043d\u0435\u043c \u0441 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 Filebeat. \u0412\u043e-\u043f\u0435\u0440\u0432\u044b\u0445, \u0434\u043b\u044f \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u043e\u0431\u0440\u0430\u0437\u0430 \u0432\u0430\u043c \u043d\u0443\u0436\u043d\u043e \u0441\u043e\u0437\u0434\u0430\u0442\u044c Dockerfile:<\/p>\n<pre><code class=\"java\">$ mkdir filebeat_docker &amp;&amp; cd $_ $ touch Dockerfile &amp;&amp; nano Dockerfile<\/code><\/pre>\n<p>\u0422\u0435\u043f\u0435\u0440\u044c \u043e\u0442\u043a\u0440\u043e\u0439\u0442\u0435 Dockerfile \u0432 \u0443\u0434\u043e\u0431\u043d\u043e\u043c \u0434\u043b\u044f \u0432\u0430\u0441 \u0442\u0435\u043a\u0441\u0442\u043e\u0432\u043e\u043c \u0440\u0435\u0434\u0430\u043a\u0442\u043e\u0440\u0435 \u0438 \u0441\u043a\u043e\u043f\u0438\u0440\u0443\u0439\u0442\u0435\/\u0432\u0441\u0442\u0430\u0432\u044c\u0442\u0435 \u0443\u043a\u0430\u0437\u0430\u043d\u043d\u044b\u0435 \u043d\u0438\u0436\u0435 \u0441\u0442\u0440\u043e\u043a\u0438:<\/p>\n<pre><code class=\"xml\">FROM docker.elastic.co\/beats\/filebeat:7.5.1   COPY filebeat.yml \/usr\/share\/filebeat\/filebeat.yml USER root RUN mkdir \/usr\/share\/filebeat\/dockerlogs RUN chown -R root \/usr\/share\/filebeat\/ RUN chmod -R go-w \/usr\/share\/filebeat\/<\/code><\/pre>\n<p>\u0412 \u043a\u0430\u0442\u0430\u043b\u043e\u0433\u0435 filebeat_docker \u0441\u043e\u0437\u0434\u0430\u0439\u0442\u0435 \u0444\u0430\u0439\u043b filebeat.yml, \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0449\u0438\u0439 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044e \u0434\u043b\u044f Filebeat. \u0412 \u044d\u0442\u043e\u043c \u0440\u0443\u043a\u043e\u0432\u043e\u0434\u0441\u0442\u0432\u0435 \u043c\u044b \u0431\u0443\u0434\u0435\u043c \u0434\u0435\u0442\u0430\u043b\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0444\u0430\u0439\u043b filebeat.yml \u043f\u043e \u043c\u0438\u043d\u0438\u043c\u0443\u043c\u0443.<\/p>\n<pre><code class=\"xml\">filebeat.inputs:   - type: docker     containers:       path: \"\/usr\/share\/dockerlogs\/data\"       stream: \"stdout\"       ids:         - \"*\"       cri.parse_flags: true       combine_partial: true       exclude_files: ['\\.gz$']   processors:   - add_docker_metadata:       host: \"unix:\/\/\/var\/run\/docker.sock\"   filebeat.config.modules:   path: ${path.config}\/modules.d\/*.yml   reload.enabled: false   output.logstash:   hosts: [\"127.0.0.1:5044\"]   log files: logging.level: error logging.to_files: false logging.to_syslog: false loggins.metrice.enabled: false logging.files:   path: \/var\/log\/filebeat   name: filebeat   keepfiles: 7   permissions: 0644 ssl.verification_mode: none<\/code><\/pre>\n<p>\u0422\u0435\u043f\u0435\u0440\u044c \u0441\u043e\u0437\u0434\u0430\u0434\u0438\u043c \u043e\u0431\u0440\u0430\u0437 Filebeat Docker:<\/p>\n<pre><code class=\"java\">$ docker build -t filebeatimage . Sending build context to Docker daemon  3.584kB Step 1\/6 : FROM docker.elastic.co\/beats\/filebeat:7.5.1 7.5.1: Pulling from beats\/filebeat c808caf183b6: Already exists  a07383b84bc8: Pull complete  a3c8dd4531b4: Pull complete  5547f4a87d0c: Pull complete  d68e041d92cd: Pull complete  7cfb3f76a272: Pull complete  748d7fe7bf07: Pull complete  Digest: sha256:68d87ae7e7bb99832187f8ed5931cd253d7a6fd816a4bf6a077519c8553074e4 Status: Downloaded newer image for docker.elastic.co\/beats\/filebeat:7.5.1  ---&gt; 00c5b17745d1 Step 2\/6 : COPY filebeat.yml \/usr\/share\/filebeat\/filebeat.yml  ---&gt; f6b75829d8d6 Step 3\/6 : USER root  ---&gt; Running in 262c41d7ce58 Removing intermediate container 262c41d7ce58  ---&gt; 1ffcda8f39cf Step 4\/6 : RUN mkdir \/usr\/share\/filebeat\/dockerlogs  ---&gt; Running in 8612b1895ac7 Removing intermediate container 8612b1895ac7  ---&gt; 483d29e65dc7 Step 5\/6 : RUN chown -R root \/usr\/share\/filebeat\/  ---&gt; Running in 4a6ad8b22705 Removing intermediate container 4a6ad8b22705  ---&gt; b779a9da7ac9 Step 6\/6 : RUN chmod -R go-w \/usr\/share\/filebeat\/  ---&gt; Running in bb9638d12090 Removing intermediate container bb9638d12090  ---&gt; 85ec125594ee Successfully built 85ec125594ee Successfully tagged filebeatimage:latest<\/code><\/pre>\n<p>\u0427\u0442\u043e\u0431\u044b \u043f\u0440\u043e\u0432\u0435\u0440\u0438\u0442\u044c, \u0431\u044b\u043b \u043b\u0438 \u043e\u0431\u0440\u0430\u0437 \u0443\u0441\u043f\u0435\u0448\u043d\u043e \u043f\u043e\u0441\u0442\u0440\u043e\u0435\u043d:<\/p>\n<pre><code class=\"java\">$ docker images REPOSITORY      TAG           IMAGE ID            CREATED             SIZE filebeatimage   latest        85ec125594ee        7 seconds ago       514MB<\/code><\/pre>\n<p>\u0414\u043b\u044f \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u0430 filebeat_elk \u043c\u044b \u0441\u043e\u0437\u0434\u0430\u043b\u0438 \u0434\u0432\u0435 \u0442\u043e\u0447\u043a\u0438 \u043c\u043e\u043d\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u0430 <code>-v<\/code>;<\/p>\n<ul>\n<li>\n<p><code>\/var\/lib\/docker\/containers:\/usr\/share\/dockerlogs\/data<\/code>: \u043c\u044b \u043f\u0440\u043e\u0435\u0446\u0438\u0440\u0443\u0435\u043c \u043b\u043e\u0433\u0438 \u0445\u043e\u0441\u0442-\u043c\u0430\u0448\u0438\u043d\u044b, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043d\u0430\u0445\u043e\u0434\u044f\u0442\u0441\u044f \u0432 <code>\/var\/lib\/docker\/containers<\/code> \u0432 <code>\/usr\/share\/dockerlogs\/data<\/code> \u0432\u043d\u0443\u0442\u0440\u0438 docker-\u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u0430. \u041e\u0431\u0440\u0430\u0442\u0438\u0442\u0435 \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u0435, \u0447\u0442\u043e \u0432\u044b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043b\u0438 <code>:ro<\/code>, \u0447\u0442\u043e \u043e\u0437\u043d\u0430\u0447\u0430\u0435\u0442, \u0447\u0442\u043e \u0443 \u043d\u0435\u0433\u043e \u0435\u0441\u0442\u044c \u0440\u0430\u0437\u0440\u0435\u0448\u0435\u043d\u0438\u0435 \u0442\u043e\u043b\u044c\u043a\u043e \u043d\u0430 \u0447\u0442\u0435\u043d\u0438\u0435.<\/p>\n<\/li>\n<\/ul>\n<ul>\n<li>\n<p><code>\/var\/run\/docker.sock<\/code> \u0441\u0432\u044f\u0437\u0430\u043d \u0441 docker-\u0434\u0435\u043c\u043e\u043d\u043e\u043c \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u0430 Filebeat, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u0443 Filebeat \u0441\u043e\u0431\u0438\u0440\u0430\u0442\u044c \u043c\u0435\u0442\u0430\u0434\u0430\u043d\u043d\u044b\u0435 Docker \u0438 \u0437\u0430\u043f\u0438\u0441\u0438 \u043b\u043e\u0433\u043e\u0432 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u0430.<\/p>\n<\/li>\n<\/ul>\n<p><strong>\u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 Filebeat \u0447\u0435\u0440\u0435\u0437 DEB:<\/strong><\/p>\n<p>\u0421\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u0435\u0442 \u0430\u043b\u044c\u0442\u0435\u0440\u043d\u0430\u0442\u0438\u0432\u043d\u044b\u0439 \u0441\u043f\u043e\u0441\u043e\u0431 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c Filebeat \u043d\u0430 \u0432\u0430\u0448\u0443 \u0445\u043e\u0441\u0442-\u043c\u0430\u0448\u0438\u043d\u0443. \u041d\u0430 \u043c\u043e\u043c\u0435\u043d\u0442 \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u0438\u044f \u0441\u0442\u0430\u0442\u044c\u0438, \u0432\u0435\u0440\u0441\u0438\u044f Filebeat &#8212; 7.5.1, \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0441\u043a\u0430\u0447\u0430\u0442\u044c \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u044e\u044e \u0432\u0435\u0440\u0441\u0438\u044e filebeat <a href=\"https:\/\/www.elastic.co\/downloads\/beats\/filebeat?ref=hackernoon.com\">\u043e\u0442\u0441\u044e\u0434\u0430<\/a>.<\/p>\n<p>\u0427\u0442\u043e\u0431\u044b \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u0437\u0430\u0433\u0440\u0443\u0436\u0435\u043d\u043d\u044b\u0439 .deb \u0444\u0430\u0439\u043b:<\/p>\n<pre><code class=\"java\">$ wget https:\/\/artifacts.elastic.co\/downloads\/beats\/filebeat\/filebeat-7.5.1-amd64.deb  $ sudo dpkg -i filebeat-7.5.1-amd64.deb<\/code><\/pre>\n<p>\u0412\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u043d\u0430\u0439\u0442\u0438 \u0444\u0430\u0439\u043b \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438 \u0432 \u043a\u0430\u0442\u0430\u043b\u043e\u0433\u0435 <code>\/etc\/filebeat\/filebeat.yml<\/code>.<\/p>\n<h3>\u0428\u0430\u0433 2 &#8212; \u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 ELK \u0438\u043b\u0438 Elastic Stack<\/h3>\n<p>\u0412\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0443\u0434\u0430\u043b\u0435\u043d\u043d\u044b\u0439 \u0441\u0435\u0440\u0432\u0435\u0440 \u0434\u043b\u044f \u0440\u0430\u0437\u043c\u0435\u0449\u0435\u043d\u0438\u044f \u0441\u0432\u043e\u0435\u0433\u043e ELK stack \u0438\u043b\u0438 \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0442\u044c \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u044b \u0432 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u044e\u0449\u0435\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u0435.<\/p>\n<p>\u041f\u0440\u0435\u0436\u0434\u0435 \u0447\u0435\u043c \u043d\u0430\u0447\u0430\u0442\u044c, \u0443\u0431\u0435\u0434\u0438\u0442\u0435\u0441\u044c, \u0447\u0442\u043e \u0441\u043b\u0443\u0448\u0430\u044e\u0442 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0435 \u043f\u043e\u0440\u0442\u044b:<\/p>\n<ul>\n<li>\n<p>Elasticsearch &#8212; \u043f\u043e\u0440\u0442 9200 \u0438 \u043f\u043e\u0440\u0442 9300<\/p>\n<\/li>\n<\/ul>\n<ul>\n<li>\n<p>Logstash &#8212; \u043f\u043e\u0440\u0442 5044<\/p>\n<\/li>\n<\/ul>\n<ul>\n<li>\n<p>Kibana &#8212; \u043f\u043e\u0440\u0442 5601<\/p>\n<\/li>\n<\/ul>\n<h4>ElasticSearch:&nbsp;<\/h4>\n<p>\u041c\u044b \u0441\u043e\u0431\u0438\u0440\u0430\u0435\u043c\u0441\u044f \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0441\u0430\u043c\u044b\u0439 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0439 \u043e\u0444\u0438\u0446\u0438\u0430\u043b\u044c\u043d\u044b\u0439 \u043e\u0431\u0440\u0430\u0437 Elasticsearch. \u0418\u0442\u0430\u043a, \u043d\u0430\u0447\u043d\u0435\u043c \u0441 \u043f\u043e\u0434\u0442\u044f\u0433\u0438\u0432\u0430\u043d\u0438\u044f \u043e\u0431\u0440\u0430\u0437\u0430 \u0438\u0437 Docker Hub:<\/p>\n<pre><code class=\"java\">$ docker pull docker.elastic.co\/elasticsearch\/elasticsearch:7.5.1 7.5.1: Pulling from elasticsearch\/elasticsearch c808caf183b6: Already exists  05ff3f896999: Pull complete  82fb7fb0a94e: Pull complete  c4d0024708f4: Pull complete  136650a16cfe: Pull complete  968db096c092: Pull complete  42547e91692f: Pull complete  Digest: sha256:b0960105e830085acbb1f9c8001f58626506ce118f33816ea5d38c772bfc7e6c Status: Downloaded newer image for docker.elastic.co\/elasticsearch\/elasticsearch:7.5.1 docker.elastic.co\/elasticsearch\/elasticsearch:7.5.1<\/code><\/pre>\n<p>\u0422\u0435\u043f\u0435\u0440\u044c \u0441\u043e\u0437\u0434\u0430\u0439\u0442\u0435 \u043a\u0430\u0442\u0430\u043b\u043e\u0433 \u0441 \u0438\u043c\u0435\u043d\u0435\u043c docker_elk, \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u043c \u0431\u0443\u0434\u0443\u0442 \u043d\u0430\u0445\u043e\u0434\u0438\u0442\u044c\u0441\u044f \u0432\u0441\u0435 \u0432\u0430\u0448\u0438 \u0444\u0430\u0439\u043b\u044b \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438 \u0438 Dockerfile:<\/p>\n<pre><code class=\"java\">$ mkdir docker_elk &amp;&amp; cd $_<\/code><\/pre>\n<p>\u0412\u043d\u0443\u0442\u0440\u0438 docker_elk, \u0441\u043e\u0437\u0434\u0430\u0439\u0442\u0435 \u0435\u0449\u0435 \u043e\u0434\u0438\u043d \u043a\u0430\u0442\u0430\u043b\u043e\u0433 \u0434\u043b\u044f elasticsearch \u0438 \u0441\u043e\u0437\u0434\u0430\u0439\u0442\u0435 \u0444\u0430\u0439\u043b\u044b Dockerfile \u0438 elasticsearch.yml:<\/p>\n<pre><code class=\"java\">$ mkdir elasticsearch &amp;&amp; cd $_ $ touch Dockerfile &amp;&amp; touch elasticsearch.yml<\/code><\/pre>\n<p>\u041e\u0442\u043a\u0440\u043e\u0439\u0442\u0435 \u0444\u0430\u0439\u043b elasticsearch.yml \u0432 \u043b\u044e\u0431\u043e\u043c \u0442\u0435\u043a\u0441\u0442\u043e\u0432\u043e\u043c \u0440\u0435\u0434\u0430\u043a\u0442\u043e\u0440\u0435 \u0438 \u0441\u043a\u043e\u043f\u0438\u0440\u0443\u0439\u0442\u0435 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438 \u043a\u0430\u043a \u0435\u0441\u0442\u044c:<\/p>\n<pre><code class=\"java\">--- cluster.name: \"docker-cluster\" network.host: 0.0.0.0   xpack.license.self_generated.type: basic xpack.security.enabled: true xpack.monitoring.collection.enabled: true<\/code><\/pre>\n<p>\u041e\u0431\u0440\u0430\u0442\u0438\u0442\u0435 \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u0435, \u0447\u0442\u043e \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u043f\u043e\u043c\u0435\u043d\u044f\u0442\u044c <code>xpack.license.self_generated.type<\/code> \u0441 basic \u043d\u0430 trial, \u0435\u0441\u043b\u0438 \u0432\u044b \u0445\u043e\u0442\u0438\u0442\u0435 \u043f\u043e\u043f\u0440\u043e\u0431\u043e\u0432\u0430\u0442\u044c \u043a\u043e\u043c\u043c\u0435\u0440\u0447\u0435\u0441\u043a\u0443\u044e \u0432\u0435\u0440\u0441\u0438\u044e x-pack \u0432 \u0442\u0435\u0447\u0435\u043d\u0438\u0438 30 \u0434\u043d\u0435\u0439.<\/p>\n<p>\u041e\u0442\u043a\u0440\u043e\u0439\u0442\u0435 Dockerfile \u0432 \u043b\u044e\u0431\u043e\u043c \u0442\u0435\u043a\u0441\u0442\u043e\u0432\u043e\u043c \u0440\u0435\u0434\u0430\u043a\u0442\u043e\u0440\u0435, \u0441\u043a\u043e\u043f\u0438\u0440\u0443\u0439\u0442\u0435 \u0443\u043a\u0430\u0437\u0430\u043d\u043d\u044b\u0435 \u043d\u0438\u0436\u0435 \u0441\u0442\u0440\u043e\u043a\u0438 \u0438 \u0432\u0441\u0442\u0430\u0432\u044c\u0442\u0435 \u0438\u0445 \u043a\u0430\u043a \u0435\u0441\u0442\u044c:<\/p>\n<pre><code class=\"java\">FROM docker.elastic.co\/elasticsearch\/elasticsearch:7.5.1 COPY --chown=elasticsearch:elasticsearch .\/elasticsearch.yml \/usr\/share\/elasticsearch\/config\/<\/code><\/pre>\n<p>\u041a\u043e\u043c\u0430\u043d\u0434\u0430 <code>chown<\/code> \u043f\u0440\u0435\u0434\u043d\u0430\u0437\u043d\u0430\u0447\u0435\u043d\u0430 \u0434\u043b\u044f \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u0432\u043b\u0430\u0434\u0435\u043b\u044c\u0446\u0430 \u0444\u0430\u0439\u043b\u0430 \u043d\u0430 elasticsearch, \u043a\u0430\u043a \u0438 \u0434\u043b\u044f \u0434\u0440\u0443\u0433\u0438\u0445 \u0444\u0430\u0439\u043b\u043e\u0432 \u0432 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u0435.<\/p>\n<h4>Kibana:<\/h4>\n<p>\u0422\u0435\u043f\u0435\u0440\u044c \u043c\u044b \u0441\u043e\u0431\u0438\u0440\u0430\u0435\u043c\u0441\u044f \u043d\u0430\u0441\u0442\u0440\u043e\u0438\u0442\u044c Dockerfile \u0434\u043b\u044f Kibana, \u0438 \u0441\u043d\u043e\u0432\u0430 \u0432\u0430\u043c \u043d\u0443\u0436\u043d\u043e \u043f\u043e\u0434\u0442\u044f\u043d\u0443\u0442\u044c \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0439 \u043e\u0431\u0440\u0430\u0437 \u0438\u0437 \u0440\u0435\u0435\u0441\u0442\u0440\u0430 Elastic Docker:<\/p>\n<pre><code class=\"java\">$ docker pull docker.elastic.co\/kibana\/kibana:7.5.1 7.5.1: Pulling from kibana\/kibana c808caf183b6: Already exists  e12a414b7b04: Pull complete  20714d0b39d8: Pull complete  393e0a5bccf2: Pull complete  b142626e938b: Pull complete  b28e35a143ca: Pull complete  728725922476: Pull complete  96692e1a8406: Pull complete  e4c3cbe1dbbe: Pull complete  bb6fc46a19d1: Pull complete  Digest: sha256:12b5e37e0f960108750e84f6b2f8acce409e01399992636b2a47d88bbc7c2611 Status: Downloaded newer image for docker.elastic.co\/kibana\/kibana:7.5.1 docker.elastic.co\/kibana\/kibana:7.5.1<\/code><\/pre>\n<p>\u0421\u043e\u0437\u0434\u0430\u0439\u0442\u0435 \u043a\u0430\u0442\u0430\u043b\u043e\u0433 \u0432\u043d\u0443\u0442\u0440\u0438 \u0432\u0430\u0448\u0435\u0433\u043e docker_elk, \u0438 \u0432\u043d\u0443\u0442\u0440\u0438 \u043d\u0435\u0433\u043e \u0432\u044b \u0434\u043e\u043b\u0436\u043d\u044b \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u0444\u0430\u0439\u043b\u044b Dockerfile \u0438 kibana.yml:<\/p>\n<pre><code class=\"java\">$ mkdir kibana &amp;&amp; cd $_ $ touch Dockerfile &amp;&amp; touch kibana.yml<\/code><\/pre>\n<p>kibana.yml \u0431\u0443\u0434\u0435\u0442 \u0441\u043e\u0441\u0442\u043e\u044f\u0442\u044c \u0438\u0437 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0445 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0439. \u041e\u0431\u0440\u0430\u0442\u0438\u0442\u0435 \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u0435, \u0447\u0442\u043e \u0432\u0430\u043c \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0438\u0437\u043c\u0435\u043d\u0438\u0442\u044c \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f <code>elasticsearch.user<\/code> \u0438 <code>elasticsearch.password<\/code>:<\/p>\n<pre><code class=\"java\">--- server.name: kibana server.host: \"0\" elasticsearch.hosts: [ \"http:\/\/elasticsearch:9200\" ] xpack.monitoring.ui.container.elasticsearch.enabled: true   elasticsearch.username: elastic elasticsearch.password: yourstrongpasswordhere<\/code><\/pre>\n<p>\u0412 \u0442\u043e \u0432\u0440\u0435\u043c\u044f \u043a\u0430\u043a \u0432 Dockerfile \u044d\u0442\u043e \u0431\u0443\u0434\u0435\u0442 \u0432\u044b\u0433\u043b\u044f\u0434\u0435\u0442\u044c \u043f\u0440\u0438\u043c\u0435\u0440\u043d\u043e \u0442\u0430\u043a:<\/p>\n<pre><code class=\"java\">FROM docker.elastic.co\/kibana\/kibana:7.5.1 COPY .\/kibana.yml \/usr\/share\/kibana\/config\/<\/code><\/pre>\n<h4>Logstash:<\/h4>\n<p>\u041e\u0431\u0440\u0430\u0437 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u0430 \u0434\u043b\u044f Logstash \u0434\u043e\u0441\u0442\u0443\u043f\u0435\u043d \u0432 \u0440\u0435\u0435\u0441\u0442\u0440\u0435 Elastic Docker. \u041e\u043f\u044f\u0442\u044c \u0436\u0435, \u043d\u0430 \u043c\u043e\u043c\u0435\u043d\u0442 \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u0438\u044f \u0442\u0435\u043a\u0443\u0449\u0430\u044f \u0432\u0435\u0440\u0441\u0438\u044f &#8212; 7.5.1, \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u044e\u044e \u0432\u0435\u0440\u0441\u0438\u044e Logstash \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u043d\u0430\u0439\u0442\u0438 <a href=\"https:\/\/www.docker.elastic.co\/?ref=hackernoon.com#logstash\">\u0437\u0434\u0435\u0441\u044c<\/a>.<\/p>\n<pre><code class=\"java\">$ docker pull docker.elastic.co\/logstash\/logstash:7.5.1 7.5.1: Pulling from logstash\/logstash c808caf183b6: Already exists  7c07521065ed: Pull complete  d0d212a3b734: Pull complete  418bd04a229b: Pull complete  b22f374f97b1: Pull complete  b65908943591: Pull complete  2ee12bfc6e9c: Pull complete  309701bd1d88: Pull complete  b3555469618d: Pull complete  2834c4c48906: Pull complete  bae432e5da20: Pull complete  Digest: sha256:5bc89224f65459072931bc782943a931f13b92a1a060261741897e724996ac1a Status: Downloaded newer image for docker.elastic.co\/logstash\/logstash:7.5.1 docker.elastic.co\/logstash\/logstash:7.5.1<\/code><\/pre>\n<p>\u0422\u0435\u043f\u0435\u0440\u044c \u0441\u043e\u0437\u0434\u0430\u0439\u0442\u0435 \u043a\u0430\u0442\u0430\u043b\u043e\u0433 \u0434\u043b\u044f Logstash \u0432\u043d\u0443\u0442\u0440\u0438 docker_elk \u0438 \u0434\u043e\u0431\u0430\u0432\u044c\u0442\u0435 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u044b\u0435 \u0444\u0430\u0439\u043b\u044b, \u043a\u0430\u043a \u043f\u043e\u043a\u0430\u0437\u0430\u043d\u043e \u043d\u0438\u0436\u0435:<\/p>\n<pre><code class=\"java\">$ mkdir logstash &amp;&amp; cd $_ $ touch Dockerfile &amp;&amp; touch logstash.yml<\/code><\/pre>\n<p>\u0421\u043a\u043e\u043f\u0438\u0440\u0443\u0439\u0442\u0435 \u0441\u0442\u0440\u043e\u043a\u0438 \u043d\u0438\u0436\u0435 \u0432 logstash.yml. \u0423\u0431\u0435\u0434\u0438\u0442\u0435\u0441\u044c, \u0447\u0442\u043e \u0432\u044b \u0432\u0432\u043e\u0434\u0438\u0442\u0435 \u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u043e\u0435 \u0438\u043c\u044f \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f \u0438 \u043f\u0430\u0440\u043e\u043b\u044c \u0432 <code>xpack.monitoring.elasticsearch.username<\/code> \u0438 <code>xpack.monitoring.elasticsearch.password<\/code> \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0435\u043d\u043d\u043e:<\/p>\n<pre><code class=\"java\">--- http.host: \"0.0.0.0\" xpack.monitoring.elasticsearch.hosts: [ \"http:\/\/elasticsearch:9200\" ]   xpack.monitoring.enabled: true xpack.monitoring.elasticsearch.username: elastic xpack.monitoring.elasticsearch.password: yourstrongpasswordhere<\/code><\/pre>\n<p>\u0422\u0435\u043f\u0435\u0440\u044c \u0434\u043e\u0431\u0430\u0432\u044c\u0442\u0435 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0435 \u0441\u0442\u0440\u043e\u043a\u0438 \u0432 \u0441\u0432\u043e\u0439 Dockerfile:<\/p>\n<pre><code class=\"java\">FROM docker.elastic.co\/logstash\/logstash:7.5.1 COPY .\/logstash.yml \/usr\/share\/logstash\/config\/ COPY .\/logstash.conf \/usr\/share\/logstash\/pipeline\/<\/code><\/pre>\n<p>\u041a\u0440\u043e\u043c\u0435 \u044d\u0442\u043e\u0433\u043e, \u0432\u0430\u043c \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u0444\u0430\u0439\u043b logstash.conf. \u0417\u0434\u0435\u0441\u044c, \u0432 \u0441\u043f\u0440\u0430\u0432\u043e\u0447\u043d\u0438\u043a\u0435 elasticsearch, \u0432\u044b \u043d\u0430\u0439\u0434\u0435\u0442\u0435 host, user \u0438 password, \u0443\u0431\u0435\u0434\u0438\u0442\u0435\u0441\u044c, \u0447\u0442\u043e \u0432\u044b \u0438\u0437\u043c\u0435\u043d\u0438\u043b\u0438 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u0432 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0438\u0438 \u0441 \u0432\u0430\u0448\u0435\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u043e\u0439:<\/p>\n<pre><code class=\"java\">input {     tcp {     port =&gt; 5000     codec =&gt; json   } } output {   elasticsearch {     hosts =&gt; \"elasticsearch:9200\"     user =&gt; elastic     password =&gt; yourstrongpasswordhere   } }<\/code><\/pre>\n<p>\u041a\u0430\u043a \u0442\u043e\u043b\u044c\u043a\u043e \u0432\u044b \u0437\u0430\u043a\u043e\u043d\u0447\u0438\u0442\u0435 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0443 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u043e\u0432 \u0432\u0430\u0448\u0435\u0433\u043e \u0441\u0442\u0435\u043a\u0430, \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0430 \u043a\u0430\u0442\u0430\u043b\u043e\u0433\u043e\u0432 \u0432\u0430\u0448\u0435\u0433\u043e \u043f\u0440\u043e\u0435\u043a\u0442\u0430 \u0434\u043e\u043b\u0436\u043d\u0430 \u0432\u044b\u0433\u043b\u044f\u0434\u0435\u0442\u044c \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c:<\/p>\n<pre><code class=\"java\">. \u251c\u2500\u2500 elasticsearch \u2502   \u251c\u2500\u2500 Dockerfile \u2502   \u2514\u2500\u2500 elasticsearch.yml \u251c\u2500\u2500 kibana \u2502   \u251c\u2500\u2500 Dockerfile \u2502   \u2514\u2500\u2500 kibana.yml \u2514\u2500\u2500 logstash     \u251c\u2500\u2500 Dockerfile     \u251c\u2500\u2500 logstash.conf     \u2514\u2500\u2500 logstash.yml   3 directories, 7 files<\/code><\/pre>\n<p>\u0422\u0435\u043f\u0435\u0440\u044c \u043f\u0440\u0438\u0448\u043b\u043e \u0432\u0440\u0435\u043c\u044f \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u0444\u0430\u0439\u043b Docker Compose, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043f\u043e\u0437\u0432\u043e\u043b\u0438\u0442 \u0432\u0430\u043c \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c \u0441\u0442\u0435\u043a.<\/p>\n<h3>\u0428\u0430\u0433 3 &#8212; Docker Compose<\/h3>\n<p>\u0421\u043e\u0437\u0434\u0430\u0439\u0442\u0435 \u0444\u0430\u0439\u043b docker-compose.yml \u0432 \u043a\u0430\u0442\u0430\u043b\u043e\u0433\u0435 docker_elk. \u0417\u0434\u0435\u0441\u044c \u0432\u044b \u0431\u0443\u0434\u0435\u0442\u0435 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0442\u044c \u0438 \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0442\u044c \u0441\u0432\u043e\u0435 \u043c\u043d\u043e\u0433\u043e\u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u043d\u043e\u0435 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435, \u0441\u043e\u0441\u0442\u043e\u044f\u0449\u0435\u0435 \u0438\u0437 Elasticsearch, Kibana \u0438 Logstash.<\/p>\n<p>\u0412\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0441\u043a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043f\u0440\u0438\u0432\u0435\u0434\u0435\u043d\u043d\u044b\u0439 \u043d\u0438\u0436\u0435 \u043a\u043e\u043d\u0442\u0435\u043a\u0441\u0442 \u0432 \u0444\u0430\u0439\u043b docker-compose.yml. \u0423\u0431\u0435\u0434\u0438\u0442\u0435\u0441\u044c, \u0447\u0442\u043e \u0432\u044b \u0438\u0437\u043c\u0435\u043d\u0438\u043b\u0438 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f <code>ELASTIC_PASSWORD<\/code> \u0438 <code>ES_JAVA_OPTS<\/code>. \u0412 \u044d\u0442\u043e\u043c \u0440\u0443\u043a\u043e\u0432\u043e\u0434\u0441\u0442\u0432\u0435 \u0434\u043b\u044f <code>ES_JAVA_OPTS<\/code> \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u043e \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u0432 256 \u041c\u0411, \u043d\u043e \u0432 \u0440\u0435\u0430\u043b\u044c\u043d\u044b\u0445 \u0441\u0446\u0435\u043d\u0430\u0440\u0438\u044f\u0445 \u043c\u043e\u0436\u0435\u0442 \u043f\u043e\u0442\u0440\u0435\u0431\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u0443\u0432\u0435\u043b\u0438\u0447\u0438\u0442\u044c \u0440\u0430\u0437\u043c\u0435\u0440 \u043a\u0443\u0447\u0438 \u0432 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0438\u0438 \u0441 \u0432\u0430\u0448\u0438\u043c\u0438 \u0437\u0430\u043f\u0440\u043e\u0441\u0430\u043c\u0438.<\/p>\n<pre><code class=\"java\">version: '3.2'   services:  elasticsearch:    build:      context: elasticsearch\/    volumes:      - type: volume        source: elasticsearch        target: \/usr\/share\/elasticsearch\/data    ports:      - \"9200:9200\"      - \"9300:9300\"    environment:      ES_JAVA_OPTS: \"-Xmx256m -Xms256m\"      ELASTIC_PASSWORD: yourstrongpasswordhere      discovery.type: single-node    networks:      - elk_stack    logstash:    build:      context: logstash\/    ports:      - \"5000:5000\"      - \"9600:9600\"    environment:      LS_JAVA_OPTS: \"-Xmx256m -Xms256m\"    networks:      - elk_stack    depends_on:      - elasticsearch    kibana:    build:      context: kibana\/    ports:      - \"5601:5601\"    networks:      - elk_stack    depends_on:      - elasticsearch   networks:  elk_stack:    driver: bridge   volumes:  elasticsearch:<\/code><\/pre>\n<p>\u0422\u0435\u043f\u0435\u0440\u044c, \u0434\u043b\u044f \u0442\u043e\u0433\u043e, \u0447\u0442\u043e\u0431\u044b \u0441\u043e\u0431\u0440\u0430\u0442\u044c ELK stack, \u0432\u0430\u043c \u043d\u0443\u0436\u043d\u043e \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0443\u044e \u043a\u043e\u043c\u0430\u043d\u0434\u0443 \u0432 \u043a\u0430\u0442\u0430\u043b\u043e\u0433\u0435&nbsp;<\/p>\n<p><code>docker_elk :<\/code><\/p>\n<pre><code class=\"java\">$ docker-compose up -d Starting elastic_elk ... done Starting kibana_elk   ... done Starting logstash_elk ... done<\/code><\/pre>\n<p>\u0423\u0431\u0435\u0434\u0438\u0442\u0435\u0441\u044c, \u0447\u0442\u043e \u043a\u043e\u043d\u0432\u0435\u0439\u0435\u0440 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u043d\u043e\u0440\u043c\u0430\u043b\u044c\u043d\u043e \u2014 \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u0435 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0443\u044e \u043a\u043e\u043c\u0430\u043d\u0434\u0443, \u0447\u0442\u043e\u0431\u044b \u0443\u0432\u0438\u0434\u0435\u0442\u044c \u0438\u043d\u0434\u0435\u043a\u0441\u044b Elasticsearch:<\/p>\n<pre><code class=\"java\">$ curl 'localhost:9200\/_cat\/indices?v' -u elastic:yourstrongpasswordhere  health status index                             uuid                   pri rep docs.count docs.deleted store.size pri.store.size green  open   .triggered_watches                m-l01yMmT7y2PYU4mZ6-RA   1   0          0            0      6.5kb          6.5kb green  open   .watcher-history-10-2020.01.10    SX3iYGedRKKCC6JLx_W8fA   1   0       1523            0        2mb            2mb green  open   .management-beats                 ThHV2q9iSfiYo__s2rouIw   1   0          6            1     40.5kb         40.5kb green  open   .ml-annotations-6                 PwK7Zuw7RjytoWFuCCulJg   1   0          0            0       283b           283b green  open   .monitoring-kibana-7-2020.01.10   8xVnx0ksTHShds7yDlHQvw   1   0       1006            0    385.4kb        385.4kb green  open   .monitoring-es-7-2020.01.10       CZd89LiNS7q-RepP5ZWhEQ   1   0      36412          340     16.4mb         16.4mb green  open   .apm-agent-configuration          e7PRBda_QdGrWtV6KECsMA   1   0          0            0       283b           283b green  open   .ml-anomalies-shared              MddTZQ7-QBaHNTSmOtUqiQ   1   0          1            0      5.5kb          5.5kb green  open   .kibana_1                         akgBeG32QcS7AhjBOed3LA   1   0       1105           28    687.1kb        687.1kb green  open   .ml-config                        CTLI-eNdTkyBmgLj3JVrEA   1   0         22            0     56.6kb         56.6kb green  open   .ml-state                         gKx28CMGQiuZyx82bNUoYg   1   0          0            0       283b           283b green  open   .security-7                       krH4NlJeThyQRA-hwhPXEA   1   0         36            0     83.6kb         83.6kb green  open   .logstash                         7wxswFtbR3eepuWZHEIR9w   1   0          0            0       281b           281b green  open   .kibana_task_manager_1            ft60q2R8R8-nviAyc0caoQ   1   0          2            1     16.2kb         16.2kb yellow open   filebeat-7.5.1-2020.01.10-000001  1-RGhyG9Tf-wGcepQ49mmg   1   1          0            0       283b           283b green  open   .monitoring-alerts-7              TLxewhFyTKycI9IsjX0iVg   1   0          6            0     40.9kb         40.9kb green  open   .monitoring-logstash-7-2020.01.10 dc_S5BhsRNuukwTxbrxvLw   1   0       4774            0      1.1mb          1.1mb green  open   .watches                          x7QAcAQZTrab-pQuvonXpg   1   0          6            6    120.2kb        120.2kb green  open   .ml-notifications-000001          vFYzmHorTVKZplMuW7VSmw   1   0         52            0     81.6kb         81.6kb<\/code><\/pre>\n<p>\u0422\u0435\u043f\u0435\u0440\u044c \u043f\u043e\u0440\u0430 \u043f\u043e\u0441\u0435\u0442\u0438\u0442\u044c \u043d\u0430\u0448\u0443 \u043f\u0430\u043d\u0435\u043b\u044c \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f (dashboard) Kibana. \u041e\u0442\u043a\u0440\u043e\u0439\u0442\u0435 \u0431\u0440\u0430\u0443\u0437\u0435\u0440 \u0438 \u0432\u0432\u0435\u0434\u0438\u0442\u0435 URL-\u0430\u0434\u0440\u0435\u0441 http:\/\/your-ip-addr-here:5601. \u0422\u0435\u043f\u0435\u0440\u044c \u0432\u0432\u0435\u0434\u0438\u0442\u0435 \u0437\u0430\u0440\u0430\u043d\u0435\u0435 \u0437\u0430\u0434\u0430\u043d\u043d\u044b\u0435 \u0438\u043c\u044f \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f \u0438 \u043f\u0430\u0440\u043e\u043b\u044c; \u0432 \u043d\u0430\u0448\u0435\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u044d\u0442\u043e <code>elastic<\/code> \u0438 <code>yourstrongpasswordhere<\/code> \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0435\u043d\u043d\u043e.<\/p>\n<p>\u0412 \u043f\u0430\u043d\u0435\u043b\u0438 \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f Kibana \u043f\u0435\u0440\u0435\u0439\u0434\u0438\u0442\u0435 \u043d\u0430 \u0432\u043a\u043b\u0430\u0434\u043a\u0443 \u00ab<em>Management<\/em>\u00bb (\u0423\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435) \u0438 \u0432 \u0440\u0430\u0437\u0434\u0435\u043b\u0435 \u00ab<em>Kibana<\/em>\u00bb \u043d\u0430\u0436\u043c\u0438\u0442\u0435 \u00ab<em>Index Patterns\u00bb<\/em> (\u0428\u0430\u0431\u043b\u043e\u043d\u044b \u0438\u043d\u0434\u0435\u043a\u0441\u0430). \u0412 \u043f\u0435\u0440\u0432\u043e\u0439 \u0441\u0442\u0440\u043e\u043a\u0435 \u0432\u044b \u043d\u0430\u0439\u0434\u0435\u0442\u0435 \u0438\u043d\u0434\u0435\u043a\u0441 filebeat-*, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0443\u0436\u0435 \u0431\u044b\u043b \u0438\u0434\u0435\u043d\u0442\u0438\u0444\u0438\u0446\u0438\u0440\u043e\u0432\u0430\u043d Kibana.<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/c20\/e56\/954\/c20e5695480d7d5969447c4ade851327\" width=\"1344\" height=\"696\"><figcaption><\/figcaption><\/figure>\n<p>\u0422\u0435\u043f\u0435\u0440\u044c \u043f\u0435\u0440\u0435\u0439\u0434\u0438\u0442\u0435 \u043a \u0442\u0435\u0433\u0443 Discover \u043d\u0430 \u043f\u0430\u043d\u0435\u043b\u0438 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u043e\u0432 Kibana \u0438 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0438\u0442\u0435 \u043b\u043e\u0433\u0438 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u043e\u0432 \u0432\u043c\u0435\u0441\u0442\u0435 \u0441 \u043c\u0435\u0442\u0430\u0434\u0430\u043d\u043d\u044b\u043c\u0438 \u0432 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0438\u0438 \u0441 \u0432\u044b\u0431\u0440\u0430\u043d\u043d\u044b\u043c \u0448\u0430\u0431\u043b\u043e\u043d\u043e\u043c \u0438\u043d\u0434\u0435\u043a\u0441\u0430, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043c\u043e\u0436\u0435\u0442 \u0432\u044b\u0433\u043b\u044f\u0434\u0435\u0442\u044c \u043f\u0440\u0438\u043c\u0435\u0440\u043d\u043e \u0442\u0430\u043a:<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/9d5\/998\/367\/9d59983673412083c7d180dfc42bc117\" width=\"1344\" height=\"696\"><figcaption><\/figcaption><\/figure>\n<h3>\u0417\u0430\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435:<\/h3>\n<p>\u0412\u043e\u0442 \u0432\u044b \u0438 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u043b\u0438 \u0438 \u043d\u0430\u0441\u0442\u0440\u043e\u0438\u043b\u0438 \u0441\u0442\u0435\u043a ELK Stack \u043d\u0430 \u0441\u0432\u043e\u0435\u0439 \u0445\u043e\u0441\u0442-\u043c\u0430\u0448\u0438\u043d\u0435, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0441\u043e\u0431\u0438\u0440\u0430\u0435\u0442 \u043d\u0435\u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0430\u043d\u043d\u044b\u0435 \u043b\u043e\u0433\u0438 \u0438\u0437 \u0432\u0430\u0448\u0435\u0433\u043e Docker \u0432 \u0441\u0442\u0435\u043a, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043f\u043e\u0437\u0436\u0435 \u043c\u043e\u0436\u043d\u043e \u0431\u0443\u0434\u0435\u0442 \u043f\u0440\u043e\u0430\u043d\u0430\u043b\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0438\u043b\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0434\u043b\u044f \u043e\u0442\u043b\u0430\u0434\u043a\u0438 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439.<\/p>\n<p><em>\u041e\u0431 \u0430\u0432\u0442\u043e\u0440\u0435 \u2014 \u0421\u0443\u0434\u0438\u043f \u2014 \u043e\u0441\u043d\u043e\u0432\u0430\u0442\u0435\u043b\u044c <\/em><a href=\"http:\/\/www.javelynn.com\/?ref=hackernoon.com\"><em>Javelynn<\/em><\/a><em> \u0438 Solution Architect \u0441 \u0431\u043e\u043b\u0435\u0435 \u0447\u0435\u043c 15-\u043b\u0435\u0442\u043d\u0438\u043c \u043e\u043f\u044b\u0442\u043e\u043c \u0440\u0430\u0431\u043e\u0442\u044b. \u041e\u043d \u043b\u044e\u0431\u0438\u0442 \u0434\u0435\u043b\u0438\u0442\u044c\u0441\u044f \u0441\u0432\u043e\u0438\u043c\u0438 \u0437\u043d\u0430\u043d\u0438\u044f\u043c\u0438, \u0440\u0435\u0433\u0443\u043b\u044f\u0440\u043d\u043e \u043f\u0438\u0448\u0435\u0442 \u0434\u043b\u044f <\/em><a href=\"https:\/\/www.hackernoon.com\/?ref=hackernoon.com\"><em>Hackernoon<\/em><\/a><em>, <\/em><a href=\"https:\/\/dzone.com\/?ref=hackernoon.com\"><em>DZone<\/em><\/a><em>, <\/em><a href=\"https:\/\/appfleet.com\/?ref=hackernoon.com\"><em>Appfleet<\/em><\/a><em> \u0438 \u043c\u043d\u043e\u0433\u0438\u0445 \u0434\u0440\u0443\u0433\u0438\u0445 \u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432. \u0410 \u0435\u0441\u043b\u0438 \u043e\u043d \u043d\u0435 \u0437\u0430\u043d\u044f\u0442 \u044d\u0442\u0438\u043c \u0432 \u0434\u0430\u043d\u043d\u044b\u0439 \u043c\u043e\u043c\u0435\u043d\u0442, \u043e\u043d \u043d\u0430\u0432\u0435\u0440\u043d\u044f\u043a\u0430 \u0440\u044b\u0431\u0430\u0447\u0438\u0442 \u0438\u043b\u0438 \u0438\u0433\u0440\u0430\u0435\u0442 \u0432 \u0448\u0430\u0445\u043c\u0430\u0442\u044b.<\/em><\/p>\n<hr>\n<blockquote>\n<p><a href=\"https:\/\/otus.pw\/ifoa\/\"><strong>\u0423\u0437\u043d\u0430\u0442\u044c \u043f\u043e\u0434\u0440\u043e\u0431\u043d\u0435\u0435 \u043e\u0431 \u044d\u043a\u0441\u043f\u0440\u0435\u0441\u0441-\u043a\u0443\u0440\u0441\u0435 ELK.<\/strong><\/a><strong><\/p>\n<p><\/strong><a href=\"https:\/\/otus.pw\/OwaL\/\"><strong>\u0421\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u043e\u043d\u043b\u0430\u0439\u043d-\u0432\u0441\u0442\u0440\u0435\u0447\u0443<\/strong><\/a><strong> \u0441 \u043f\u0440\u0435\u043f\u043e\u0434\u0430\u0432\u0430\u0442\u0435\u043b\u0435\u043c<\/strong><a href=\"https:\/\/otus.pw\/OwaL\/\"><strong> <\/strong><\/a><strong>\u044d\u043a\u0441\u043f\u0440\u0435\u0441\u0441-\u043a\u0443\u0440\u0441\u0430 ELK.<\/strong><\/p>\n<\/blockquote>\n<\/div>\n<p> \u0441\u0441\u044b\u043b\u043a\u0430 \u043d\u0430 \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b \u0441\u0442\u0430\u0442\u044c\u0438 <a href=\"https:\/\/habr.com\/ru\/company\/otus\/blog\/542144\/\"> https:\/\/habr.com\/ru\/company\/otus\/blog\/542144\/<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"\n<div class=\"post__text post__text_v2\" id=\"post-content-body\">\n<blockquote>\n<p><em>\u0412 \u0440\u0430\u043c\u043a\u0430\u0445 \u0437\u0430\u043f\u0443\u0441\u043a\u0430 <\/em><a href=\"https:\/\/otus.pw\/ifoa\/\"><em>\u043f\u0440\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0433\u043e \u0438\u043d\u0442\u0435\u043d\u0441\u0438\u0432\u0430 \u043f\u043e ELK<\/em><\/a><em> \u043f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u0438\u043b\u0438 \u0434\u043b\u044f \u0432\u0430\u0441 \u043f\u0435\u0440\u0435\u0432\u043e\u0434 \u043f\u043e\u043b\u0435\u0437\u043d\u043e\u0433\u043e \u043c\u0430\u0442\u0435\u0440\u0438\u0430\u043b\u0430. \u041f\u0440\u0438\u0433\u043b\u0430\u0448\u0430\u0435\u043c \u0442\u0430\u043a\u0436\u0435 \u0432\u0441\u0435\u0445 \u0437\u0430\u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043e\u0432\u0430\u043d\u043d\u044b\u0445 \u043d\u0430 <\/em><a href=\"https:\/\/otus.pw\/OwaL\/\"><em>\u043e\u043d\u043b\u0430\u0439\u043d-\u0432\u0441\u0442\u0440\u0435\u0447\u0443 \u0441 \u043f\u0440\u0435\u043f\u043e\u0434\u0430\u0432\u0430\u0442\u0435\u043b\u0435\u043c \u0438\u043d\u0442\u0435\u043d\u0441\u0438\u0432\u0430<\/em><\/a><em>, \u0433\u0434\u0435 \u043f\u0440\u0435\u043f\u043e\u0434\u0430\u0432\u0430\u0442\u0435\u043b\u044c \u0440\u0430\u0441\u0441\u043a\u0430\u0436\u0435\u0442 \u043e \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0435, \u0444\u043e\u0440\u043c\u0430\u0442\u0435 \u043e\u0431\u0443\u0447\u0435\u043d\u0438\u044f \u0438 \u043f\u0435\u0440\u0441\u043f\u0435\u043a\u0442\u0438\u0432\u0430\u0445 \u0434\u043b\u044f \u0432\u044b\u043f\u0443\u0441\u043a\u043d\u0438\u043a\u043e\u0432.<\/em><\/p>\n<\/blockquote>\n<figure class=\"full-width\"><figcaption><\/figcaption><\/figure>\n<hr>\n<p>\u041f\u043e \u043c\u0435\u0440\u0435 \u0440\u043e\u0441\u0442\u0430 \u0432\u0430\u0448\u0435\u0439 \u0438\u043d\u0444\u0440\u0430\u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u044b \u043d\u0430\u043b\u0438\u0447\u0438\u0435 \u0440\u043e\u0431\u043e\u0442\u043e\u0432 \u0438 \u043d\u0430\u0434\u0435\u0436\u043d\u0430\u044f \u0446\u0435\u043d\u0442\u0440\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u043d\u043d\u0430\u044f \u0441\u0438\u0441\u0442\u0435\u043c\u0430 \u043b\u043e\u0433\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u0441\u044f \u043a\u0440\u0438\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u0432\u0430\u0436\u043d\u044b\u043c\u0438 \u0441\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u044e\u0449\u0438\u043c\u0438. \u0426\u0435\u043d\u0442\u0440\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u043b\u043e\u0433\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u0441\u044f \u043a\u043b\u044e\u0447\u0435\u0432\u044b\u043c \u0430\u0441\u043f\u0435\u043a\u0442\u043e\u043c \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u0430 IT-\u0437\u0430\u0434\u0430\u0447 \u0438 \u0434\u0430\u0435\u0442 \u0432\u0430\u043c \u0445\u043e\u0440\u043e\u0448\u0438\u0439 \u043e\u0431\u0437\u043e\u0440 \u0432\u0441\u0435\u0439 \u0432\u0430\u0448\u0435\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u044b.<\/p>\n<p>\u041b\u0443\u0447\u0448\u0435\u0435 \u0440\u0435\u0448\u0435\u043d\u0438\u0435 \u2014 \u0430\u0433\u0440\u0435\u0433\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043b\u043e\u0433\u0438 \u0441 \u043c\u0435\u0442\u0430\u0434\u0430\u043d\u043d\u044b\u043c\u0438 \u0438\u0437 \u0432\u0441\u0435\u0445 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u043e\u0432. \u042d\u0442\u043e \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u0438\u0442 \u0432\u0430\u043c \u043b\u0443\u0447\u0448\u0438\u0435 \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u044b \u043e\u0442\u0441\u043b\u0435\u0436\u0438\u0432\u0430\u043d\u0438\u044f \u0438 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u0445\u043e\u0440\u043e\u0448\u0443\u044e \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0443 \u043e\u0442 \u0441\u043e\u043e\u0431\u0449\u0435\u0441\u0442\u0432\u0430. \u0417\u0434\u0435\u0441\u044c \u043d\u0430 \u0441\u0446\u0435\u043d\u0443 \u0432\u044b\u0445\u043e\u0434\u0438\u0442 ELK Stack. ELK, \u0442\u0430\u043a\u0436\u0435 \u0438\u0437\u0432\u0435\u0441\u0442\u043d\u044b\u0439 \u043a\u0430\u043a Elastic stack, \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 \u0441\u043e\u0431\u043e\u0439 \u043a\u043e\u043c\u0431\u0438\u043d\u0430\u0446\u0438\u044e \u0441\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0445 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u043e\u0432 \u0441 \u043e\u0442\u043a\u0440\u044b\u0442\u044b\u043c \u0438\u0441\u0445\u043e\u0434\u043d\u044b\u043c \u043a\u043e\u0434\u043e\u043c, \u0442\u0430\u043a\u0438\u0445 \u043a\u0430\u043a ElasticSearch, Logstash \u0438 Kibana. \u042d\u0442\u043e \u043f\u043e\u043b\u043d\u043e\u0435 \u0440\u0435\u0448\u0435\u043d\u0438\u0435 \u0434\u043b\u044f \u0441\u043a\u0432\u043e\u0437\u043d\u043e\u0433\u043e \u0430\u043d\u0430\u043b\u0438\u0437\u0430 \u0436\u0443\u0440\u043d\u0430\u043b\u043e\u0432, \u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0432 \u0441\u0432\u043e\u0435\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u0435.<\/p>\n<p>\u041a\u0430\u0436\u0434\u043e\u043c\u0443 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u0443 \u043e\u0442\u0432\u0435\u0434\u0435\u043d\u0430 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u0430\u044f \u0440\u043e\u043b\u044c: ElasticSearch \u043b\u0443\u0447\u0448\u0435 \u0432\u0441\u0435\u0433\u043e \u0445\u0440\u0430\u043d\u0438\u0442 \u043d\u0435\u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0430\u043d\u043d\u044b\u0435 \u043b\u043e\u0433\u0438, Logstash \u043f\u043e\u043c\u043e\u0433\u0430\u0435\u0442 \u0441\u043e\u0431\u0438\u0440\u0430\u0442\u044c \u0438 \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u044b\u0432\u0430\u0442\u044c \u043b\u043e\u0433\u0438 \u0432 \u0441\u043e\u0433\u043b\u0430\u0441\u043e\u0432\u0430\u043d\u043d\u044b\u0439 \u0444\u043e\u0440\u043c\u0430\u0442, \u0430 Kibana \u0434\u043e\u0431\u0430\u0432\u043b\u044f\u0435\u0442 \u043e\u0442\u043b\u0438\u0447\u043d\u044b\u0439 \u0443\u0440\u043e\u0432\u0435\u043d\u044c \u0432\u0438\u0437\u0443\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u0438 \u043f\u043e\u043c\u043e\u0433\u0430\u0435\u0442 \u0432\u0430\u043c \u0443\u043f\u0440\u0430\u0432\u043b\u044f\u0442\u044c \u0432\u0430\u0448\u0435\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u043e\u0439 \u0432 \u0443\u0434\u043e\u0431\u043d\u043e\u0439 \u0434\u043b\u044f \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f \u043c\u0430\u043d\u0435\u0440\u0435.<\/p>\n<p>\u0412 \u044d\u0442\u043e\u043c \u0440\u0443\u043a\u043e\u0432\u043e\u0434\u0441\u0442\u0432\u0435 \u0432\u044b \u0443\u0437\u043d\u0430\u0435\u0442\u0435, \u043a\u0430\u043a \u0440\u0430\u0437\u0432\u0435\u0440\u043d\u0443\u0442\u044c ELK \u0438 \u043d\u0430\u043b\u0430\u0434\u0438\u0442\u044c \u0430\u0433\u0440\u0435\u0433\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u043d\u044b\u0445 \u043b\u043e\u0433\u043e\u0432. \u041c\u044b \u0441\u043e\u0431\u0438\u0440\u0430\u0435\u043c\u0441\u044f \u043e\u0431\u044a\u0435\u0434\u0438\u043d\u0438\u0442\u044c ELK \u0441 <a href=\"https:\/\/www.elastic.co\/products\/beats\/filebeat?ref=hackernoon.com\">Filebeat,<\/a> \u0447\u0442\u043e\u0431\u044b \u0430\u0433\u0440\u0435\u0433\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u043d\u044b\u0435 \u043b\u043e\u0433\u0438. \u0414\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u043c\u044b \u0441\u043e\u0431\u0438\u0440\u0430\u0435\u043c\u0441\u044f \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u0439 \u043e\u0431\u0440\u0430\u0437 Docker.<\/p>\n<h3>\u0428\u0430\u0433 1 &#8212; \u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 Filebeat:<\/h3>\n<p>\u041d\u0430\u0447\u043d\u0435\u043c \u0441 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 Filebeat. \u0412\u043e-\u043f\u0435\u0440\u0432\u044b\u0445, \u0434\u043b\u044f \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u043e\u0431\u0440\u0430\u0437\u0430 \u0432\u0430\u043c \u043d\u0443\u0436\u043d\u043e \u0441\u043e\u0437\u0434\u0430\u0442\u044c Dockerfile:<\/p>\n<pre><code class=\"java\">$ mkdir filebeat_docker &amp;&amp; cd $_ $ touch Dockerfile &amp;&amp; nano Dockerfile<\/code><\/pre>\n<p>\u0422\u0435\u043f\u0435\u0440\u044c \u043e\u0442\u043a\u0440\u043e\u0439\u0442\u0435 Dockerfile \u0432 \u0443\u0434\u043e\u0431\u043d\u043e\u043c \u0434\u043b\u044f \u0432\u0430\u0441 \u0442\u0435\u043a\u0441\u0442\u043e\u0432\u043e\u043c \u0440\u0435\u0434\u0430\u043a\u0442\u043e\u0440\u0435 \u0438 \u0441\u043a\u043e\u043f\u0438\u0440\u0443\u0439\u0442\u0435\/\u0432\u0441\u0442\u0430\u0432\u044c\u0442\u0435 \u0443\u043a\u0430\u0437\u0430\u043d\u043d\u044b\u0435 \u043d\u0438\u0436\u0435 \u0441\u0442\u0440\u043e\u043a\u0438:<\/p>\n<pre><code class=\"xml\">FROM docker.elastic.co\/beats\/filebeat:7.5.1   COPY filebeat.yml \/usr\/share\/filebeat\/filebeat.yml USER root RUN mkdir \/usr\/share\/filebeat\/dockerlogs RUN chown -R root \/usr\/share\/filebeat\/ RUN chmod -R go-w \/usr\/share\/filebeat\/<\/code><\/pre>\n<p>\u0412 \u043a\u0430\u0442\u0430\u043b\u043e\u0433\u0435 filebeat_docker \u0441\u043e\u0437\u0434\u0430\u0439\u0442\u0435 \u0444\u0430\u0439\u043b filebeat.yml, \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0449\u0438\u0439 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044e \u0434\u043b\u044f Filebeat. \u0412 \u044d\u0442\u043e\u043c \u0440\u0443\u043a\u043e\u0432\u043e\u0434\u0441\u0442\u0432\u0435 \u043c\u044b \u0431\u0443\u0434\u0435\u043c \u0434\u0435\u0442\u0430\u043b\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0444\u0430\u0439\u043b filebeat.yml \u043f\u043e \u043c\u0438\u043d\u0438\u043c\u0443\u043c\u0443.<\/p>\n<pre><code class=\"xml\">filebeat.inputs:   - type: docker     containers:       path: \"\/usr\/share\/dockerlogs\/data\"       stream: \"stdout\"       ids:         - \"*\"       cri.parse_flags: true       combine_partial: true       exclude_files: ['\\.gz$']   processors:   - add_docker_metadata:       host: \"unix:\/\/\/var\/run\/docker.sock\"   filebeat.config.modules:   path: ${path.config}\/modules.d\/*.yml   reload.enabled: false   output.logstash:   hosts: [\"127.0.0.1:5044\"]   log files: logging.level: error logging.to_files: false logging.to_syslog: false loggins.metrice.enabled: false logging.files:   path: \/var\/log\/filebeat   name: filebeat   keepfiles: 7   permissions: 0644 ssl.verification_mode: none<\/code><\/pre>\n<p>\u0422\u0435\u043f\u0435\u0440\u044c \u0441\u043e\u0437\u0434\u0430\u0434\u0438\u043c \u043e\u0431\u0440\u0430\u0437 Filebeat Docker:<\/p>\n<pre><code class=\"java\">$ docker build -t filebeatimage . Sending build context to Docker daemon  3.584kB Step 1\/6 : FROM docker.elastic.co\/beats\/filebeat:7.5.1 7.5.1: Pulling from beats\/filebeat c808caf183b6: Already exists  a07383b84bc8: Pull complete  a3c8dd4531b4: Pull complete  5547f4a87d0c: Pull complete  d68e041d92cd: Pull complete  7cfb3f76a272: Pull complete  748d7fe7bf07: Pull complete  Digest: sha256:68d87ae7e7bb99832187f8ed5931cd253d7a6fd816a4bf6a077519c8553074e4 Status: Downloaded newer image for docker.elastic.co\/beats\/filebeat:7.5.1  ---&gt; 00c5b17745d1 Step 2\/6 : COPY filebeat.yml \/usr\/share\/filebeat\/filebeat.yml  ---&gt; f6b75829d8d6 Step 3\/6 : USER root  ---&gt; Running in 262c41d7ce58 Removing intermediate container 262c41d7ce58  ---&gt; 1ffcda8f39cf Step 4\/6 : RUN mkdir \/usr\/share\/filebeat\/dockerlogs  ---&gt; Running in 8612b1895ac7 Removing intermediate container 8612b1895ac7  ---&gt; 483d29e65dc7 Step 5\/6 : RUN chown -R root \/usr\/share\/filebeat\/  ---&gt; Running in 4a6ad8b22705 Removing intermediate container 4a6ad8b22705  ---&gt; b779a9da7ac9 Step 6\/6 : RUN chmod -R go-w \/usr\/share\/filebeat\/  ---&gt; Running in bb9638d12090 Removing intermediate container bb9638d12090  ---&gt; 85ec125594ee Successfully built 85ec125594ee Successfully tagged filebeatimage:latest<\/code><\/pre>\n<p>\u0427\u0442\u043e\u0431\u044b \u043f\u0440\u043e\u0432\u0435\u0440\u0438\u0442\u044c, \u0431\u044b\u043b \u043b\u0438 \u043e\u0431\u0440\u0430\u0437 \u0443\u0441\u043f\u0435\u0448\u043d\u043e \u043f\u043e\u0441\u0442\u0440\u043e\u0435\u043d:<\/p>\n<pre><code class=\"java\">$ docker images REPOSITORY      TAG           IMAGE ID            CREATED             SIZE filebeatimage   latest        85ec125594ee        7 seconds ago       514MB<\/code><\/pre>\n<p>\u0414\u043b\u044f \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u0430 filebeat_elk \u043c\u044b \u0441\u043e\u0437\u0434\u0430\u043b\u0438 \u0434\u0432\u0435 \u0442\u043e\u0447\u043a\u0438 \u043c\u043e\u043d\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u0430 <code>-v<\/code>;<\/p>\n<ul>\n<li>\n<p><code>\/var\/lib\/docker\/containers:\/usr\/share\/dockerlogs\/data<\/code>: \u043c\u044b \u043f\u0440\u043e\u0435\u0446\u0438\u0440\u0443\u0435\u043c \u043b\u043e\u0433\u0438 \u0445\u043e\u0441\u0442-\u043c\u0430\u0448\u0438\u043d\u044b, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043d\u0430\u0445\u043e\u0434\u044f\u0442\u0441\u044f \u0432 <code>\/var\/lib\/docker\/containers<\/code> \u0432 <code>\/usr\/share\/dockerlogs\/data<\/code> \u0432\u043d\u0443\u0442\u0440\u0438 docker-\u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u0430. \u041e\u0431\u0440\u0430\u0442\u0438\u0442\u0435 \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u0435, \u0447\u0442\u043e \u0432\u044b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043b\u0438 <code>:ro<\/code>, \u0447\u0442\u043e \u043e\u0437\u043d\u0430\u0447\u0430\u0435\u0442, \u0447\u0442\u043e \u0443 \u043d\u0435\u0433\u043e \u0435\u0441\u0442\u044c \u0440\u0430\u0437\u0440\u0435\u0448\u0435\u043d\u0438\u0435 \u0442\u043e\u043b\u044c\u043a\u043e \u043d\u0430 \u0447\u0442\u0435\u043d\u0438\u0435.<\/p>\n<\/li>\n<\/ul>\n<ul>\n<li>\n<p><code>\/var\/run\/docker.sock<\/code> \u0441\u0432\u044f\u0437\u0430\u043d \u0441 docker-\u0434\u0435\u043c\u043e\u043d\u043e\u043c \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u0430 Filebeat, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u0443 Filebeat \u0441\u043e\u0431\u0438\u0440\u0430\u0442\u044c \u043c\u0435\u0442\u0430\u0434\u0430\u043d\u043d\u044b\u0435 Docker \u0438 \u0437\u0430\u043f\u0438\u0441\u0438 \u043b\u043e\u0433\u043e\u0432 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u0430.<\/p>\n<\/li>\n<\/ul>\n<p><strong>\u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 Filebeat \u0447\u0435\u0440\u0435\u0437 DEB:<\/strong><\/p>\n<p>\u0421\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u0435\u0442 \u0430\u043b\u044c\u0442\u0435\u0440\u043d\u0430\u0442\u0438\u0432\u043d\u044b\u0439 \u0441\u043f\u043e\u0441\u043e\u0431 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c Filebeat \u043d\u0430 \u0432\u0430\u0448\u0443 \u0445\u043e\u0441\u0442-\u043c\u0430\u0448\u0438\u043d\u0443. \u041d\u0430 \u043c\u043e\u043c\u0435\u043d\u0442 \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u0438\u044f \u0441\u0442\u0430\u0442\u044c\u0438, \u0432\u0435\u0440\u0441\u0438\u044f Filebeat &#8212; 7.5.1, \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0441\u043a\u0430\u0447\u0430\u0442\u044c \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u044e\u044e \u0432\u0435\u0440\u0441\u0438\u044e filebeat <a href=\"https:\/\/www.elastic.co\/downloads\/beats\/filebeat?ref=hackernoon.com\">\u043e\u0442\u0441\u044e\u0434\u0430<\/a>.<\/p>\n<p>\u0427\u0442\u043e\u0431\u044b \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u0437\u0430\u0433\u0440\u0443\u0436\u0435\u043d\u043d\u044b\u0439 .deb \u0444\u0430\u0439\u043b:<\/p>\n<pre><code class=\"java\">$ wget https:\/\/artifacts.elastic.co\/downloads\/beats\/filebeat\/filebeat-7.5.1-amd64.deb  $ sudo dpkg -i filebeat-7.5.1-amd64.deb<\/code><\/pre>\n<p>\u0412\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u043d\u0430\u0439\u0442\u0438 \u0444\u0430\u0439\u043b \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438 \u0432 \u043a\u0430\u0442\u0430\u043b\u043e\u0433\u0435 <code>\/etc\/filebeat\/filebeat.yml<\/code>.<\/p>\n<h3>\u0428\u0430\u0433 2 &#8212; \u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 ELK \u0438\u043b\u0438 Elastic Stack<\/h3>\n<p>\u0412\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0443\u0434\u0430\u043b\u0435\u043d\u043d\u044b\u0439 \u0441\u0435\u0440\u0432\u0435\u0440 \u0434\u043b\u044f \u0440\u0430\u0437\u043c\u0435\u0449\u0435\u043d\u0438\u044f \u0441\u0432\u043e\u0435\u0433\u043e ELK stack \u0438\u043b\u0438 \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0442\u044c \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u044b \u0432 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u044e\u0449\u0435\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u0435.<\/p>\n<p>\u041f\u0440\u0435\u0436\u0434\u0435 \u0447\u0435\u043c \u043d\u0430\u0447\u0430\u0442\u044c, \u0443\u0431\u0435\u0434\u0438\u0442\u0435\u0441\u044c, \u0447\u0442\u043e \u0441\u043b\u0443\u0448\u0430\u044e\u0442 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0435 \u043f\u043e\u0440\u0442\u044b:<\/p>\n<ul>\n<li>\n<p>Elasticsearch &#8212; \u043f\u043e\u0440\u0442 9200 \u0438 \u043f\u043e\u0440\u0442 9300<\/p>\n<\/li>\n<\/ul>\n<ul>\n<li>\n<p>Logstash &#8212; \u043f\u043e\u0440\u0442 5044<\/p>\n<\/li>\n<\/ul>\n<ul>\n<li>\n<p>Kibana &#8212; \u043f\u043e\u0440\u0442 5601<\/p>\n<\/li>\n<\/ul>\n<h4>ElasticSearch:&nbsp;<\/h4>\n<p>\u041c\u044b \u0441\u043e\u0431\u0438\u0440\u0430\u0435\u043c\u0441\u044f \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0441\u0430\u043c\u044b\u0439 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0439 \u043e\u0444\u0438\u0446\u0438\u0430\u043b\u044c\u043d\u044b\u0439 \u043e\u0431\u0440\u0430\u0437 Elasticsearch. \u0418\u0442\u0430\u043a, \u043d\u0430\u0447\u043d\u0435\u043c \u0441 \u043f\u043e\u0434\u0442\u044f\u0433\u0438\u0432\u0430\u043d\u0438\u044f \u043e\u0431\u0440\u0430\u0437\u0430 \u0438\u0437 Docker Hub:<\/p>\n<pre><code class=\"java\">$ docker pull docker.elastic.co\/elasticsearch\/elasticsearch:7.5.1 7.5.1: Pulling from elasticsearch\/elasticsearch c808caf183b6: Already exists  05ff3f896999: Pull complete  82fb7fb0a94e: Pull complete  c4d0024708f4: Pull complete  136650a16cfe: Pull complete  968db096c092: Pull complete  42547e91692f: Pull complete  Digest: sha256:b0960105e830085acbb1f9c8001f58626506ce118f33816ea5d38c772bfc7e6c Status: Downloaded newer image for docker.elastic.co\/elasticsearch\/elasticsearch:7.5.1 docker.elastic.co\/elasticsearch\/elasticsearch:7.5.1<\/code><\/pre>\n<p>\u0422\u0435\u043f\u0435\u0440\u044c \u0441\u043e\u0437\u0434\u0430\u0439\u0442\u0435 \u043a\u0430\u0442\u0430\u043b\u043e\u0433 \u0441 \u0438\u043c\u0435\u043d\u0435\u043c docker_elk, \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u043c \u0431\u0443\u0434\u0443\u0442 \u043d\u0430\u0445\u043e\u0434\u0438\u0442\u044c\u0441\u044f \u0432\u0441\u0435 \u0432\u0430\u0448\u0438 \u0444\u0430\u0439\u043b\u044b \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438 \u0438 Dockerfile:<\/p>\n<pre><code class=\"java\">$ mkdir docker_elk &amp;&amp; cd $_<\/code><\/pre>\n<p>\u0412\u043d\u0443\u0442\u0440\u0438 docker_elk, \u0441\u043e\u0437\u0434\u0430\u0439\u0442\u0435 \u0435\u0449\u0435 \u043e\u0434\u0438\u043d \u043a\u0430\u0442\u0430\u043b\u043e\u0433 \u0434\u043b\u044f elasticsearch \u0438 \u0441\u043e\u0437\u0434\u0430\u0439\u0442\u0435 \u0444\u0430\u0439\u043b\u044b Dockerfile \u0438 elasticsearch.yml:<\/p>\n<pre><code class=\"java\">$ mkdir elasticsearch &amp;&amp; cd $_ $ touch Dockerfile &amp;&amp; touch elasticsearch.yml<\/code><\/pre>\n<p>\u041e\u0442\u043a\u0440\u043e\u0439\u0442\u0435 \u0444\u0430\u0439\u043b elasticsearch.yml \u0432 \u043b\u044e\u0431\u043e\u043c \u0442\u0435\u043a\u0441\u0442\u043e\u0432\u043e\u043c \u0440\u0435\u0434\u0430\u043a\u0442\u043e\u0440\u0435 \u0438 \u0441\u043a\u043e\u043f\u0438\u0440\u0443\u0439\u0442\u0435 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438 \u043a\u0430\u043a \u0435\u0441\u0442\u044c:<\/p>\n<pre><code class=\"java\">--- cluster.name: \"docker-cluster\" network.host: 0.0.0.0   xpack.license.self_generated.type: basic xpack.security.enabled: true xpack.monitoring.collection.enabled: true<\/code><\/pre>\n<p>\u041e\u0431\u0440\u0430\u0442\u0438\u0442\u0435 \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u0435, \u0447\u0442\u043e \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u043f\u043e\u043c\u0435\u043d\u044f\u0442\u044c <code>xpack.license.self_generated.type<\/code> \u0441 basic \u043d\u0430 trial, \u0435\u0441\u043b\u0438 \u0432\u044b \u0445\u043e\u0442\u0438\u0442\u0435 \u043f\u043e\u043f\u0440\u043e\u0431\u043e\u0432\u0430\u0442\u044c \u043a\u043e\u043c\u043c\u0435\u0440\u0447\u0435\u0441\u043a\u0443\u044e \u0432\u0435\u0440\u0441\u0438\u044e x-pack \u0432 \u0442\u0435\u0447\u0435\u043d\u0438\u0438 30 \u0434\u043d\u0435\u0439.<\/p>\n<p>\u041e\u0442\u043a\u0440\u043e\u0439\u0442\u0435 Dockerfile \u0432 \u043b\u044e\u0431\u043e\u043c \u0442\u0435\u043a\u0441\u0442\u043e\u0432\u043e\u043c \u0440\u0435\u0434\u0430\u043a\u0442\u043e\u0440\u0435, \u0441\u043a\u043e\u043f\u0438\u0440\u0443\u0439\u0442\u0435 \u0443\u043a\u0430\u0437\u0430\u043d\u043d\u044b\u0435 \u043d\u0438\u0436\u0435 \u0441\u0442\u0440\u043e\u043a\u0438 \u0438 \u0432\u0441\u0442\u0430\u0432\u044c\u0442\u0435 \u0438\u0445 \u043a\u0430\u043a \u0435\u0441\u0442\u044c:<\/p>\n<pre><code class=\"java\">FROM docker.elastic.co\/elasticsearch\/elasticsearch:7.5.1 COPY --chown=elasticsearch:elasticsearch .\/elasticsearch.yml \/usr\/share\/elasticsearch\/config\/<\/code><\/pre>\n<p>\u041a\u043e\u043c\u0430\u043d\u0434\u0430 <code>chown<\/code> \u043f\u0440\u0435\u0434\u043d\u0430\u0437\u043d\u0430\u0447\u0435\u043d\u0430 \u0434\u043b\u044f \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u0432\u043b\u0430\u0434\u0435\u043b\u044c\u0446\u0430 \u0444\u0430\u0439\u043b\u0430 \u043d\u0430 elasticsearch, \u043a\u0430\u043a \u0438 \u0434\u043b\u044f \u0434\u0440\u0443\u0433\u0438\u0445 \u0444\u0430\u0439\u043b\u043e\u0432 \u0432 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u0435.<\/p>\n<h4>Kibana:<\/h4>\n<p>\u0422\u0435\u043f\u0435\u0440\u044c \u043c\u044b \u0441\u043e\u0431\u0438\u0440\u0430\u0435\u043c\u0441\u044f \u043d\u0430\u0441\u0442\u0440\u043e\u0438\u0442\u044c Dockerfile \u0434\u043b\u044f Kibana, \u0438 \u0441\u043d\u043e\u0432\u0430 \u0432\u0430\u043c \u043d\u0443\u0436\u043d\u043e \u043f\u043e\u0434\u0442\u044f\u043d\u0443\u0442\u044c \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0439 \u043e\u0431\u0440\u0430\u0437 \u0438\u0437 \u0440\u0435\u0435\u0441\u0442\u0440\u0430 Elastic Docker:<\/p>\n<pre><code class=\"java\">$ docker pull docker.elastic.co\/kibana\/kibana:7.5.1 7.5.1: Pulling from kibana\/kibana c808caf183b6: Already exists  e12a414b7b04: Pull complete  20714d0b39d8: Pull complete  393e0a5bccf2: Pull complete  b142626e938b: Pull complete  b28e35a143ca: Pull complete  728725922476: Pull complete  96692e1a8406: Pull complete  e4c3cbe1dbbe: Pull complete  bb6fc46a19d1: Pull complete  Digest: sha256:12b5e37e0f960108750e84f6b2f8acce409e01399992636b2a47d88bbc7c2611 Status: Downloaded newer image for docker.elastic.co\/kibana\/kibana:7.5.1 docker.elastic.co\/kibana\/kibana:7.5.1<\/code><\/pre>\n<p>\u0421\u043e\u0437\u0434\u0430\u0439\u0442\u0435 \u043a\u0430\u0442\u0430\u043b\u043e\u0433 \u0432\u043d\u0443\u0442\u0440\u0438 \u0432\u0430\u0448\u0435\u0433\u043e docker_elk, \u0438 \u0432\u043d\u0443\u0442\u0440\u0438 \u043d\u0435\u0433\u043e \u0432\u044b \u0434\u043e\u043b\u0436\u043d\u044b \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u0444\u0430\u0439\u043b\u044b Dockerfile \u0438 kibana.yml:<\/p>\n<pre><code class=\"java\">$ mkdir kibana &amp;&amp; cd $_ $ touch Dockerfile &amp;&amp; touch kibana.yml<\/code><\/pre>\n<p>kibana.yml \u0431\u0443\u0434\u0435\u0442 \u0441\u043e\u0441\u0442\u043e\u044f\u0442\u044c \u0438\u0437 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0445 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0439. \u041e\u0431\u0440\u0430\u0442\u0438\u0442\u0435 \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u0435, \u0447\u0442\u043e \u0432\u0430\u043c \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0438\u0437\u043c\u0435\u043d\u0438\u0442\u044c \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f <code>elasticsearch.user<\/code> \u0438 <code>elasticsearch.password<\/code>:<\/p>\n<pre><code class=\"java\">--- server.name: kibana server.host: \"0\" elasticsearch.hosts: [ \"http:\/\/elasticsearch:9200\" ] xpack.monitoring.ui.container.elasticsearch.enabled: true   elasticsearch.username: elastic elasticsearch.password: yourstrongpasswordhere<\/code><\/pre>\n<p>\u0412 \u0442\u043e \u0432\u0440\u0435\u043c\u044f \u043a\u0430\u043a \u0432 Dockerfile \u044d\u0442\u043e \u0431\u0443\u0434\u0435\u0442 \u0432\u044b\u0433\u043b\u044f\u0434\u0435\u0442\u044c \u043f\u0440\u0438\u043c\u0435\u0440\u043d\u043e \u0442\u0430\u043a:<\/p>\n<pre><code class=\"java\">FROM docker.elastic.co\/kibana\/kibana:7.5.1 COPY .\/kibana.yml \/usr\/share\/kibana\/config\/<\/code><\/pre>\n<h4>Logstash:<\/h4>\n<p>\u041e\u0431\u0440\u0430\u0437 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u0430 \u0434\u043b\u044f Logstash \u0434\u043e\u0441\u0442\u0443\u043f\u0435\u043d \u0432 \u0440\u0435\u0435\u0441\u0442\u0440\u0435 Elastic Docker. \u041e\u043f\u044f\u0442\u044c \u0436\u0435, \u043d\u0430 \u043c\u043e\u043c\u0435\u043d\u0442 \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u0438\u044f \u0442\u0435\u043a\u0443\u0449\u0430\u044f \u0432\u0435\u0440\u0441\u0438\u044f &#8212; 7.5.1, \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u044e\u044e \u0432\u0435\u0440\u0441\u0438\u044e Logstash \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u043d\u0430\u0439\u0442\u0438 <a href=\"https:\/\/www.docker.elastic.co\/?ref=hackernoon.com#logstash\">\u0437\u0434\u0435\u0441\u044c<\/a>.<\/p>\n<pre><code class=\"java\">$ docker pull docker.elastic.co\/logstash\/logstash:7.5.1 7.5.1: Pulling from logstash\/logstash c808caf183b6: Already exists  7c07521065ed: Pull complete  d0d212a3b734: Pull complete  418bd04a229b: Pull complete  b22f374f97b1: Pull complete  b65908943591: Pull complete  2ee12bfc6e9c: Pull complete  309701bd1d88: Pull complete  b3555469618d: Pull complete  2834c4c48906: Pull complete  bae432e5da20: Pull complete  Digest: sha256:5bc89224f65459072931bc782943a931f13b92a1a060261741897e724996ac1a Status: Downloaded newer image for docker.elastic.co\/logstash\/logstash:7.5.1 docker.elastic.co\/logstash\/logstash:7.5.1<\/code><\/pre>\n<p>\u0422\u0435\u043f\u0435\u0440\u044c \u0441\u043e\u0437\u0434\u0430\u0439\u0442\u0435 \u043a\u0430\u0442\u0430\u043b\u043e\u0433 \u0434\u043b\u044f Logstash \u0432\u043d\u0443\u0442\u0440\u0438 docker_elk \u0438 \u0434\u043e\u0431\u0430\u0432\u044c\u0442\u0435 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u044b\u0435 \u0444\u0430\u0439\u043b\u044b, \u043a\u0430\u043a \u043f\u043e\u043a\u0430\u0437\u0430\u043d\u043e \u043d\u0438\u0436\u0435:<\/p>\n<pre><code class=\"java\">$ mkdir logstash &amp;&amp; cd $_ $ touch Dockerfile &amp;&amp; touch logstash.yml<\/code><\/pre>\n<p>\u0421\u043a\u043e\u043f\u0438\u0440\u0443\u0439\u0442\u0435 \u0441\u0442\u0440\u043e\u043a\u0438 \u043d\u0438\u0436\u0435 \u0432 logstash.yml. \u0423\u0431\u0435\u0434\u0438\u0442\u0435\u0441\u044c, \u0447\u0442\u043e \u0432\u044b \u0432\u0432\u043e\u0434\u0438\u0442\u0435 \u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u043e\u0435 \u0438\u043c\u044f \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f \u0438 \u043f\u0430\u0440\u043e\u043b\u044c \u0432 <code>xpack.monitoring.elasticsearch.username<\/code> \u0438 <code>xpack.monit<\/code><\/p>\n<\/hr>\n<\/div>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[],"tags":[],"class_list":["post-317915","post","type-post","status-publish","format-standard","hentry"],"_links":{"self":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/317915","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=317915"}],"version-history":[{"count":0,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/317915\/revisions"}],"wp:attachment":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=317915"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=317915"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=317915"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}