使用Docker部署ELK

这篇文章主要是将之前部署的ELK改为docker部署,都使用5.6的镜像,因为最新的elk镜像改地址了,国内一直拉不下来

非Docker部署ELK:https://blog.csdn.net/fuckluy/article/details/80430732

环境:Centos 7   、 安装好了docker 、关闭防火墙

1、先安装Compose

$ sudo curl -L https://github.com/docker/compose/releases/download/1.17.1/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose

$ sudo chmod +x /usr/local/bin/docker-compose

测试是否安装成功:

 

$ docker-compose --version

 

2、创建相应的目录

mkdir  /root/elk

3、进入相应的目录编写配置文件

cd   /root/elk/

vim logstash.conf

输入以下内容:

input {
  tcp {
        port => 4567
        }
}
 
filter {
}
 
output {
  elasticsearch {
    hosts => ["elasticsearch:9200"]
    index => "logstash-%{type}-%{+YYYY.MM.dd}"
    document_type => "%{type}"
 }
}

4、制作自己的logstash镜像:

cd  /root/elk/

vim  dockerfile

输入以下内容

FROM logstash:5.6
COPY logstash.conf  /some/config-dir/
CMD ["-f","/some/config-dir/logstash.conf"]

然后build镜像:

docker build -t my-logstash:5.6 .

该image做好后可以推送到自己的镜像仓库,便于以后重复使用

 

5、my-logstash镜像做好后编写docker-compose.yml文件

cd   /root/elk

vim   docker-compose.yml

在yml文件中输入以下内容:

version: '2'
services:
  elasticsearch:
    image: elasticsearch:5.6
    container_name: elasticsearch 
    restart: always
    networks:
      - elk
    ports:
      - "9200:9200"
      - "9300:9300"
    volumes:
       - ./data:/usr/share/elasticsearch/data

  logstash:
    image: my-logstash:5.6
    container_name: logstash
    restart: always
    networks:
       - elk
    ports:
      - "4567:4567"
    depends_on:
      - elasticsearch

  kibana:
    image: kibana:5.6
    container_name: kibana
    restart: always
    networks:
       - elk
    ports:
       - "5601:5601"
    depends_on:
       - elasticsearch 
   
networks:
    elk:

然后保存退出,并在该路径下使用下面的命令运行该docker-compose.yml文件

 

docker-compose  up  -d

直接把compose中的内容复制过去可能会出现格式的问题,需要重新调整个是,在线编辑yml文件

logstash的conf文件也不要直接复制,否则会有格式问题,如果logstash的input是读文件,需要挂载主机目录到容器中,要修改docker-compose文件内容

至此,完成

 

 

 

 

 

 

 

 

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值