ELK实践

ELK实践

  • ES启动
docker run --name myes -d -p 9200:9200 -p 9300:9300 elasticsearch
  • kibana启动
docker run --name mykibana --link myes:es -e ELASTICSEARCH_URL=http://es:9200 -p 5601:5601 -d kibana
  • logstash启动
    启动 配置 filebeats
docker run -it —rm -p 5044:5044 -v "/Users/jiangtao/logstash-conf":/config-dir logstash -f /config-dir/logstash-beats.conf

一定要开5044,不然filebeats连不上

  • filebeats启动
docker run -d -v /var/run/docker.sock:/tmp/docker.sock  -e LOGSTASH_HOST=192.168.1.115 -e LOGSTASH_PORT=5044 -e SHIPPER_NAME=$(hostname) bargenson/filebeat

参数:
LOGSTASH_HOST=192.168.1.115 logstash的ip地址
LOGSTASH_PORT=5044 logstash 端口
SHIPPER_NAME=$(hostname) 不知道何用这样写死

  • log-driver 使用
docker run -it --rm --log-driver=syslog --log-opt syslog-address=udp://localhost:25826 --log-opt syslog-facility=daemon myapp

参数:
syslog-facility=daemon 指定日志级别为守护进程
syslog-address=udp://localhost:25826 logstash服务器(tcp|udp)
log-driver=syslog 有多种

  • es-head 启动

起动时配置跨域:本地目录覆盖(切记把docker里原文件放入)

docker run -d  -p 9200:9200 -p 9300:9300 -v  /Users/jiangtao/config:/usr/share/elasticsearch/config  elasticsearch 

修改elasticsearch.yml加入,并起动时拉入
http.cors.enabled: true
http.cors.allow-origin: “*”

起动es-head

docker run -p 9100:9100 mobz/elasticsearch-head:5-alpine
  • 注意

(不推荐直接覆盖container的配置目录)挂入本地目录和配置文件

docker run -d -p 9200:9200 -p 9300:9300 -v /Users/jiangtao:/data -e -Des.config=/data/elasticsearch.yml elasticsearch1

参数:-v /Users/jiangtao:/data 本地目录:docker container 里的目录
参数:-e 加参数必加,否则异常:ERROR: D is not a recognized option

  • 这里面有两个坑:
    1.ELASTICSEARCH_URL的ip配置,可以直接写成服务器的docker machine的ip
    要么先用link ,再用link的别名–link myes:es -e ELASTICSEARCH_URL=http://es:9200
    注意:直接用myes不行
    参数:—network。 network有none,host,bridge,”container:name or id” 四种配置(docker network ls查看)
    host 可以查看本机所有服务
    none 没有ip地址。只能用link
    bridge 默认的
    container:name or id 是完全复用现成container的网络配置

  • 端口使用注意
    -p 80:80 指定映射端口
    -P 将容器内的端口随机映射

  • network 用法
    查看
    docker network ls
    添加
    docker network create mynet
    使用
    docker network connect myapp
    docker run –net mynet myapp
    查看网络信息
    docker inspect mynet
    可看当前网络连接了哪些容器

  • start up with config 写法

docker run -it --rm -v "$PWD/logstash-conf":/config-dir logstash -f /config-dir/logstash-sms.conf

参数说明: -v “$PWD/logstash-conf”:/config-dir 挂目录到docker容器上
注意$PWD参数

  • logstash收集日志三种方式:filebeats、log-driver、logspout、logz.io

filebeats在小的docker-machine上用,收集整个machine的日志
log-driver 每个容器启动时独立使用 非常灵活
logspout、logz.io 待研究

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/100421.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • LeetCode刷题笔记-回溯法-括号生成

    LeetCode刷题笔记-回溯法-括号生成

    2021年7月9日
    77
  • 偷偷地告诉学弟学妹们一个高效学习编程的秘密!大学四年悄悄惊艳他们,嘘

    偷偷地告诉学弟学妹们一个高效学习编程的秘密!大学四年悄悄惊艳他们,嘘今天来给大家谈一谈如何高效地学习编程。无论什么时候,找到学习的目标,以及学习的套路都非常的重要。找不到的话,就只能事倍功半,付出了很多努力,却迟迟得不到最好的回报。三四年前,我特别喜欢收藏文章,觉得有些技术文写得真好,忍不住收藏了!等过了一段时间后,闲得无聊,就去翻收藏夹,想着学一波,谁知道竟然找不到——不是微信给我删了,而是收藏夹里躺的“尸体”实在是太多了,根本就找不到。后来,我就总结了一个小窍门——每周收藏夹里最多躺五篇文章,如果想进来第六篇,之前的必须得清一篇。别小看这个小窍门,它真的有督促我去

    2022年9月27日
    2
  • 【CMake】cmake的install指令「建议收藏」

    【CMake】cmake的install指令「建议收藏」在cmake的时候,最常见的几个步骤就是:mkdirbuild&&cdbuildcmake..makemakeinstall那么,makeinstall的时候,是需要我们定义一个install的目标么?显然并不需要,作为一个经常需要被运行的指令,官方提供了一个命令install,只需要经过该命令的安装内容,不需要显示地定义install目标。此时,mak…

    2022年6月29日
    54
  • APP测试工具大全,建议收藏「建议收藏」

    APP测试工具大全(建议收藏!!!)一、APP自动化测试工具AppiumAirtestuiautomator2(python)二、APP稳定性测试工具MonkeyMonkeyRunnerMaximUICrawler三、APP性能测试工具GTPerfdogSoloPi四、APP弱网测试&抓包工具QNETFiddlerCharles五、APP兼容性测试工具TestIn腾讯优测百度MTC阿里MQC六、APP安全测试工具OWASPZA.

    2022年4月16日
    36
  • 编写sudoers文件

    编写sudoers文件前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到教程一、功能简介sudo能够限制指定用户在指定主机上运行某些命令。sudo可以提供日志,忠实地记录每个用户使用sudo做了些什么,并且能将日志传到中心主机或者日志服务器。sudo为系统管理员提供配置文件,允许系统管理员集中地管理用户的使用权限和使用的主机。它默认的存放位置是/etc/sudoers。sudo使用时间戳文件来完成类似“检票”的系统。当用户执行sudo并且输入密码后,用户获得了一张默认存活期为5

    2022年6月20日
    25
  • mysql 日志文件_mysql日志文件在哪「建议收藏」

    mysql 日志文件_mysql日志文件在哪「建议收藏」本篇文章将介绍mysql中的几种日志文件位置,如何能够找到。mysql日志文件的查询方法:查找错误日志文件路径showvariableslike‘log_error’;在mysql数据库中,错误日志功能是默认开启的。并且,错误日志无法被禁止。默认情况下,错误日志存储在mysql数据库的数据文件中。错误日志文件通常的名称为hostname.err。其中,hostname表示服务器主机名。错误日…

    2022年10月15日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号