利用docker-compose实现elk+redice的但宿主机环境搭建

第一步 环境准备---工作目录准备

1)C:\Users\xu\Desktop\elkcompose\compose\elk_stack

2)C:\Users\xu\Desktop\elkcompose\elasticsearch\config

3)C:\Users\xu\Desktop\elkcompose\elasticsearch\data

4)C:\Users\xu\Desktop\elkcompose\logstash\agent

5)C:\Users\xu\Desktop\elkcompose\logstash\central

6)C:\Users\xu\Desktop\elkcompose\logstash\data

第二部 先关配置文件内容

1)docker-compose.yml(放在C:\Users\xu\Desktop\elkcompose\compose\elk_stack),配置内容如下:

version: '2'
services:
    elasticsearch-central:
        image: elasticsearch:2
        container_name: elasticsearch-central
        volumes:
           - /c/Users/xu/Desktop/elkcompose/elasticsearch/data/:/usr/share/elasticsearch/data
           - /c/Users/xu/Desktop/elkcompose/elasticsearch/config/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml
        environment:
           - ES_CLUSTERNAME=elasticsearch
        command: elasticsearch
        ports:
           - "9200:9200"
           - "9300:9300"

    kibana-frontend:
        image: kibana:latest
        container_name: kibana-frontend
        ports:
           - "5601:5601"
        links:
           - elasticsearch-central:elasticsearch

    redis-cache:
        image: redis:latest
        container_name: redis-cache
        ports:
           - "6379:6379"

    logstash-central:
        image: logstash:latest
        container_name: logstash-central
        ports:
           - "25826:25826"
           - "25826:25826/udp"
        volumes:
           - /c/Users/xu/Desktop/elkcompose/logstash/central:/conf
           - /c/Users/xu/Desktop/elkcompose/logstash/data/:/data
        command: logstash -f /conf/central.conf
        links:
           - redis-cache:redis
           - elasticsearch-central:db

    logstash-agent:
        image: logstash:latest
        container_name: logstash-agent
        ports:
           - "25827:25827"
           - "25827:25827/udp"
        volumes:
           - /c/Users/xu/Desktop/elkcompose/logstash/agent:/conf
        command: logstash -f /conf/agent.conf
        links:
           - redis-cache:redis
2)elasticsearch.yml(位于 C:\Users\xu\Desktop\elkcompose\elasticsearch\config

cluster.name: ${ES_CLUSTERNAME}

node.name: ${HOSTNAME}

network.host: 0.0.0.0

discovery.zen.ping.multicast.enabled: true
3)agent.conf(位于C:\Users\xu\Desktop\elkcompose\logstash\agent)
input
{
  tcp
   {
    port => 25827
    type => syslog
   }
  udp
   {
    port => 25827
    type => syslog
   }
}

output
{
  stdout { codec => rubydebug }
  redis
        {
          host => "redis-cache"
          data_type => "list"
          key => "logstash"
        }
}

4)central.conf(位于 C:\Users\xu\Desktop\elkcompose\logstash\central

input
{
     file {
            path => "/data/test.txt"
     }
}

output
{

  stdout { }
  elasticsearch
         {
               # we must specify cluster name as we do not use default elasticsearch one
               hosts => "elasticsearch-central:9200"
               # Here not using host as we use cluster | host => db
         }
}

注意:要在C:\Users\xu\Desktop\elkcompose\logstash\data目录下的test.txt中添加测试数据,测试数据如下

2,xu,30,beijing,hebei

步骤三  创建test宿主机,创建命令是doecker-machine create -d cirtualbox test

步骤四  启动容器,相关命令是

1)eval $(docker-machine env test) 

2) docker-compose  up

步骤五  查看测试结果





评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值