实际上我之前已经写过一篇不是docker容器部署的,说实话真的很麻烦,配置相关的东西真的不少~~~上了docker容器,是真的香,当然这个过程还是挺曲折的。
docker 安装
网上教程一大堆,最重要的是看官网就对了。我是在Ubuntu服务器上搭建的,所以进入官网 https://docs.docker.com/engine/install/ubuntu/
docker-compose 安装
访问官网 https://docs.docker.com/compose/install/
系统mmap设置
官方原话:Elasticsearch mmapfs默认使用目录来存储其索引。默认的操作系统对mmap计数的限制可能太低,这可能会导致内存不足异常。官方说法 https://www.elastic.co/guide/en/elasticsearch/reference/current/vm-max-map-count.html
设置命令
sysctl -w vm.max_map_count=262144
相关文件创建(默认用root用户操作)
创建elasticsearch数据挂载路径;并授权;创建插件挂载路径
mkdir -p /elk/elasticsearch/data
chmod 777 /elk/elasticsearch/data
mkdir -p /elk/elasticsearch/plugins
创建logstash配置文件夹,并创建配置文件
mkdir -p /elk/logstash
vi /elk/logstash/logstash.conf
#内容如下:
input {
tcp {
mode => "server"
host => "0.0.0.0"
port => 4560
codec => json_lines
}
}
output {
elasticsearch {
hosts => "es:9200"
index => "logstash-%{+YYYY.MM.dd}"
}
}
创建docker-compose文件,相关的配置资料可以去看菜鸟教程https://www.runoob.com/docker/docker-compose.html
vi /elk/docker-compose.yml
#内容如下,路径都是你上面配置的,用3的话要注意docker-compose的版本,以下是我版本
#Docker version 18.09.7, build 2d0083d
#docker-compose version 1.25.5, build 8a1c60f6
version: '3'
services:
elasticsearch:
image: e