ELK 配置 SSL【Docker 下操作】
介绍Elasticsearch 程序中提供 elasticsearch-certutil 命令来简化生成证书的过程。 该命令共有 3 种模式: CA 模式:用于生成一个新的证书颁发机构 CERT 模式:用于生成 X.509 证书和私钥 CSR 模式:用于生成证书签名请求,该请求指向受信任的证书颁发机构以获取签名的证书。签名证书必须为 PEM 或 PKCS#12 格式,才能与 Elasticsearch 安全功能一起使用 生成证书certutil 官方文档 如果集群部署,想为每个 node 都配置 SSL,就改 instance.yml 和 extra_hosts 参考:https://www.elastic.co/cn/blog/configuring-ssl-tls-and-https-to-secure-elasticsearch-kibana-beats-and-logstash 注意:证书位置必须写绝对路径 新建 instance.yml 以创建各容器的自签名证书123456789# name会对应到生成证书文件的路径名称# dns可以多个,对应其匹配域名in...
利用 pprof 分析 Filebeat 的 CPU 使用率过高
通过 pprof 调试 Filebeat因为 Filebeat 是用 Go 语言实现的,而 Go 语言本身的基础库里面就包含 pprof 这个功能极其强大的性能分析工具,因此,在 7.x 版本中,Beats 家族的工具,都提供了以下参数,方便用户在出现问题的时候,对应用进行调试: 12345678--cpuprofile FILE Writes CPU profile data to the specified file. This option is useful for troubleshooting Filebeat.-h, --help Shows help for the run command.--httpprof [HOST]:PORT Starts an http server for profiling. This option is useful for troubleshooting and profiling Filebeat.--memprofile FILE Writes memory profile data to the s...
Kibana 用法
Kibana 查询语法 要搜索一个确切的字符串,即精确搜索,需要使用双引号引起来:path:"/app/logs/nginx/access.log" 如果不带引号,将会匹配每个单词:uid token 模糊搜索:path:"/app/~" * 匹配 0 到多个字符:*oken ? 匹配单个字符:tok?n 匹配是否包含的条件: +:搜索结果中必须包含此项 -:不能含有此项 什么都没有则可有可无:+token -appVersion appCode 运算符 AND/OR/NOT 必须大写:token AND uid;token OR uid;NOT uid 允许一个字段值在某个区间([] 包含该值,{} 不包含):@version:[1 TO 3] 组合查询:(uid OR token) AND version 转义特殊字符 + – && || ! ( ) { } [ ] ^ " ~ * ? : \:转义特殊字符只需在字符前加上符号 \ 查询样例简单查...
日志生命周期处理
日志生命周期处理脚本方式查出 30 天以前的索引并删除: 123456789101112#!/bin/shcurl -H'Content-Type:application/json' -d'{ "query": { "range": { "pt": { "lt": "now-30d", "format": "epoch_millis" } } }}' -XPOST -H "Authorization:Basic ZWxhc3RpYzpTb3BlaU1HcjA5M0AkJV5FTEs=" "https://ip:9200/dev02-*/_delete_b...
Elastic APM
Elastic Application Performance Management (APM) 是基于 Elastic Stack 构建的应用性能监控系统。 背景目前我们日志系统已经投入生产使用,对于日常开发有了一个方便排查问题的途径。 但是,有些难题不是浮于表面的,下一步需要做的,便是找出这些埋于底层的性能及效率的问题。这便是 Application Performance Management (APM) 出现的目的。 目标 收集有关请求的响应时间、数据库查询 外部 HTTP 请求等的详细性能信息 对应用程序的请求期间发生的其他缓慢操作的跟踪 自动收集未处理的错误和异常,错误主要基于堆栈跟踪进行分组,因此可以识别出现的新错误,并密切关注特定错误发生的次数 价值依靠 APM,过滤出不合格的接口,根据具体情况加以改进,最终实现一个可以满足三高的理想状态。 我们可以对接口的所有信息进行追溯,现在我们已经有了 trace-id,可以反向拿"不合格的接口"的 trace-id 去日志里找原因。 APM ServerAPM Server 是用 Go 编写的...
Kibana Dashboard 结合 Filebeat 的使用
利用 Filebeat Module 监听/传输数据到 ES 并通过 Kibana 的面板显示要记得将 modules 功能打开 filebeat 安装完默认会在 /etc/filebeat/modules.d 下放着许多模块的 yml,需要哪个,就执行 filebeat modules enable xxx filebeat.yml 配置: 1234567891011121314151617181920212223filebeat.config: modules: enabled: true path: modules.d/*.yml reload.enabled: true reload.period: 10s# ------------------------------ Kibana Output -------------------------------output.elasticsearch: hosts: ["10.0.2.15:9200"] username: "elastic"...
Filebeat 多实例部署(守护进程方式 systemd)
安装好 Filebeat1站内搜索:记录日志系统的安装-部署-配置-使用文档(1) 复制两个子文件夹12cp -r /etc/filebeat{,1}cp -r /etc/filebeat{,2} 修改各自的 filebeat.yml1234...(省略 inputs 之类的)logging.files: # 这里修改文件夹路径 path: /var/log/filebeat1/2 查看机器 systemd 的 path 我这里是 /usr/lib/systemd/system 添加两份配置文件 vi /usr/lib/systemd/system/filebeat1.service 1234567891011121314151617[Unit]Description=Filebeat sends log files to Logstash or directly to Elasticsearch.Documentation=https://www.elastic.co/bea...
记录日志系统的安装-部署-配置-使用文档(1)
日志系统使用文档地址 站内搜索 [记录日志系统的安装->部署->配置->使用文档(3)] 服务器ES, Logstash, Kibana内存: 8G磁盘: 500G处理器: 4/8核带宽: 2m 以上配置是原来写的,在之后的线上环境很快就得到了验证,结果就是直接崩溃。 建议每天产生 20-30GB 日志的环境至少需要以下配置: 内存:16G 磁盘:500GB-1TB(硬盘不值钱) 处理器:4/8 核 带宽:5M Filebeat(被抓取服务所在机器)略... 端口 ELK 服务器对外开放 5601 ELK 服务器对 Filebeat 所在服务器内网开放 5044 安装(单点) 安装完 Filebeat 之后,需要给 inputs 下配置文件基于 root 权限或者 go+w 权限:chown root /etc/filebeat/inputs/* 或者 chown go+w /etc/filebeat/inputs/* Filebeat(基于 Docker)12345678910111213141516171819version: ...
记录日志系统的安装-部署-配置-使用文档(2)
日志系统配置(长期补充)elastic 各产品配置/学习手册 注意:所有的 IP 不要写本地 IP filebeat.yml 如果同时指定了 exclude_lines 和 include_lines,Filebeat 将会先校验 include_lines,再校验 exclude_lines 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150#...
记录日志系统的安装-部署-配置-使用文档(3)
日志系统使用文档(长期完善)登录输入对应用户密码 索引模式(管理级操作)默认初始进来是这个页面,建立匹配的索引模式方可进行日志查询。 创建索引模式先创建匹配模式,例如我这里创建的索引模式名称为 sopei-dev02*,则代表可查看以 sopei-dev02 开头的索引下的日志(备注:下面可以看到匹配到了 8 月 9 日的 debug 日志和 error 日志)。 选择全局时间筛选字段,创建模式完成 创建及分配用户和角色(管理级操作)目前先以查看日志者和创建索引模式者及管理者区分。 例如:设置一个 log-view 角色,仅可对 dev 机器上的日志进行读取操作,然后赋予 xiaowu 用户。 创建用户 日志查看日志流模式查看 例如:查看 module 为 xxx,trace-id 为 xiaowu-12345673453463 并且是 error 类型的日志。 discover 查看查询方式和流模式一样,看到的内容是以 ES(_source)实际存储格式展示的。
