您的位置:首页 > 运维架构 > Docker

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

2016-07-25 20:27 756 查看
第一步 环境准备---工作目录准备

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:redis2)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: true3)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

步骤五  查看测试结果
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: