Docker部署ELK环境
<p><strong>Logstash:</strong>是一个完全开源的工具,它可以对你的日志进行收集、分析,并将其存储供以后使用。
<strong>Elasticsearch:</strong>是个开源分布式搜索引擎,它的特点有:分布式,零配置,自动发现,索引自动分片,索引副本机制,restful风格接口,多数据源,自动搜索负载等。
<strong>Kibana:</strong>是一个开源和免费的工具,它可以为 Logstash 和 ElasticSearch 提供的日志分析友好的 Web 界面,可以帮助您汇总、分析和搜索重要数据日志。</p>
<p>三者关系:Logstash采集数据--->Elasticsearch存储数据--->Kibana可视化</p>
<p>下载地址:<a href="https://www.elastic.co/cn/downloads/">https://www.elastic.co/cn/downloads/</a></p>
<h2>Docker中国官方镜像加速</h2>
<pre><code>vim /etc/docker/daemon.json
#Docker中国官方镜像加速
{
"registry-mirrors": ["https://registry.docker-cn.com"]
}
#网易163镜像加速
{
"registry-mirrors": ["http://hub-mirror.c.163.com"]
}
#中科大镜像加速
{
"registry-mirrors": ["https://docker.mirrors.ustc.edu.cn"]
}</code></pre>
<h2>Docker部署Elasticsearch</h2>
<h3>拉取镜像</h3>
<pre><code>docker pull docker.elastic.co/elasticsearch/elasticsearch:7.5.2</code></pre>
<h3>运行镜像</h3>
<pre><code class="language-bash">docker run -d --name es \
-p 7106:9200 -p 9300:9300 \
-v /etc/elasticsearch.yml:/config/elasticsearch.yml
-e "discovery.type=single-node" \
docker.elastic.co/elasticsearch/elasticsearch:7.5.2
</code></pre>
<h3>web测试</h3>
<p>ip:7106</p>
<p><img src="https://www.showdoc.com.cn/server/api/attachment/visitFile?sign=078c77ae8df4f78a411f2da6efbfa94f&file=file.png" alt="" />
说明elasticsearch在docker环境里面运行没问题</p>
<h3>进入容器</h3>
<pre><code class="language-bash">[root@test ~]#docker exec -it es /bin/bash
[root@688aba21f08b elasticsearch]# vi config/elasticsearch.yml
cluster.name: "docker-cluster"
network.host: 0.0.0.0
#允许任何端口访问
transport.host: 0.0.0.0
#允许跨域,kibana和es-head需要
http.cors.enabled: true
http.cors.allow-origin: "*"
[root@688aba21f08b elasticsearch]# exit
exit
</code></pre>
<h3>重启容器</h3>
<pre><code class="language-bash">[root@test ~]# docker restart es</code></pre>
<h2>Docker部署Kibana</h2>
<pre><code>docker pull kibana:7.5.2</code></pre>