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

centos上通过docker部署ELK(elasticsearch、filebeat、kibana)日志框架

2019-08-20 11:30 1391 查看
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。 本文链接:https://blog.csdn.net/fantasy_z/article/details/99828368

第一步:开启防火墙特定端口

  1. 如果关闭了防火墙,先开启:
    [code]systemctl start firewalld.service

     

  2. 设置开机自启动:
    [code]systemctl enable firewalld.service

     

  3. 重启防火墙:
    [code]systemctl restart firewalld.service

     

  4. 检查防火墙是否打开:
    [code]firewall-cmd --state

     

  5. 查看防火墙设置开机自启是否成功:
    [code]systemctl is-enabled firewalld.service;echo $?

     

  6. 开放特定端口:开端口命令:
    [code]firewall-cmd --zone=public --add-port=80/tcp --permanent
         需要开启:9200,9300,9000,5601
  7. 重启防火墙:
    [code]systemctl restart firewalld.service

     

 命令含义:

--zone #作用域

--add-port=80/tcp  #添加端口,格式为:端口/通讯协议

--permanent   #永久生效,没有此参数重启后失效

8.查看端口开放情况:netstat -ntlp

或:

[code]firewall-cmd --list-ports

 

第二步:调高JVM线程限制数量

  1. [code]vim /etc/sysctl.conf

     

  2. 在最后一行加入如下内容:
    [code]vm.max_map_count=262144

     

  3. 退出保存文件后,启用配置:
    [code]sysctl -p

     

 

第三步:EFK框架部署

一:elastcsearch环境

1.1安装elasticsearch 6.8.0:

[code]docker pull elasticsearch:6.8.0

1.2在centos中 创建对应映射目录:

[code]mkdir -p /home/software/es/data

1.3编写/home/software/elasticsearch/config/下es-single.yml,内容如下:

[code]network.bind_host: 0.0.0.0
http.cors.enabled: true
http.cors.allow-origin: "*"

1.4在centos中 执行如下命令搭建elasticsearch单例实例:

(1)

[code]chmod 777 /home/software/es/data

(2)

[code] docker run -e ES_JAVA_OPTS="-Xms512m -Xmx512m" -d -p 9200:9200 -p 9300:9300  -e "discovery.type=single-node" -v /home/software/es/data:/usr/share/elasticsearch/data -v /home/software/elasticsearch/config/es-single.yml:/usr/share/elasticsearch/config/elasticsearch.yml --name es-single elasticsearch:6.8.0

 

二:FileBeat环境

2.1 安装filebeat 6.8.0 :

[code]docker pull docker.elastic.co/beats/filebeat:6.8.0

2.2在centos的/home/software/filebeat/下 创建filebeat.yml,文件内容如下:

[code]filebeat.inputs:
- type: tcp
max_message_size: 10MiB
host: "0.0.0.0:9000"

2.3 在centos中 执行如下命令搭建logstash单例环境:

[code]docker run -d -p 9000:9000 --name filebeat-single -v /home/software/filebeat/filebeat.yml:/usr/share/filebeat/filebeat.yml  elastic/filebeat:6.8.0 -e -strict.perms=false -E output.elasticsearch.hosts=["192.168.199.192:9200"]

 

三:kibana环境

  1. docker安装kibana:6.8.0:
    [code]docker pull docker.elastic.co/kibana/kibana:6.8.0

     

  2. 在centos中 执行如下命令搭建kibana环境:
[code]docker run -d --name kibana-single -p 5601:5601 -e ELASTICSEARCH_URL=http://192.168.199.192:9200 -d kibana:6.8.0

3.6.7版本以后的kibana汉化:

(1)可以看到kibana的英文页面,我们需要在启动kibana以后,进入kibana的内部:

[code]docker exec -it [你的容器id]  /bin/bash

(2)进入内部以后,修改kibana.yml文件,在最后一行加入il8n.locale: zh-CN 注意冒号后面有个空格

[code]i18n.locale: zh-CN

 

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