ELK数据库使用,部署es数据库

项目一期使用了es数据库,二期需要迁移并在一期基础上添加功能。并且依赖的基础核心服务有所升级。服务器搭建环境基于微软服务器。开发基于一期项目代码(此前未了解)。
在开发以及部署中出现的问题予以记录:

1.ELK的安装使用:
ELK:es+logstash+kibana(都为7.5.1版本),安装命令都是用的公司的bash命令一键安装(都是间接使用的docker安装的),如果自行安装,还是得看教程(我这里只是简单记录安装过程中的大致步骤),安装顺序我是es>kibana>logstash。es安装好后,没有设置账号密码使用curl http://ip:port(端口一般是9200),如果显示了安装信息表明安装成功。
在这里插入图片描述
设置了账号密码就使用curl http://user:paasword@ip:port。
kibana安装好后,浏览器中输入http://ip:port(端口一般是5601),如果设置了密码,会有登录界面:在这里插入图片描述
没有设置密码会直接进入kibana界面,
在这里插入图片描述

我理解kibana就是以界面的形式为用户展示操作数据。如果出现登录不上的问题,例如Kibana server is not ready yet(这是比较常见的问题),cd到kibana下的config目录,有一个kibana.yml文件,不管路径localhost:9200还是elasticsearch(容器名):9200 都替换成IP地址+9200(还不行,ifconfig命令查看服务器内网ip,试试将ip换为内网ip)。
这是我的kibana配置文件信息:
在这里插入图片描述
安装logstash,logstash收集、分析日志插件,底层貌似用的是什么ruby语言实现。
下面是我的一些配置文件信息(在logstash下的config目录下):
logstash.conf:

input {
  tcp {
    port => 4560
    codec => json_lines
  }
}
filter {
  if [request_trace]=="true" {
    mutate {
      remove_field => "message"
      remove_field => "mydate"
      remove_field => "@version"
      remove_field => "level"
      remove_field => "level_value"
    }
  }
}
output {
  if [request_trace]=="true" {
    stdout {
      codec => json
    }
    elasticsearch {
      hosts => ["http://ip:9200"]
      index => "request-trace-%{+YYYY.MM}"
      template => "/usr/share/logstash/config/template.request-trace.json"
      template_name => "request-trace"
      template_overwrite => true
      user => "*******_es"
      password => "123456"
    }
  }
  else {
    elasticsearch {
      hosts => ["http://ip:9200"]
      index => "logstash-%{+YYYY.MM}"
      user => "*******_es"
      password => "123456"
    }
  }
}

由三部分组成,input,output,filter,input负责收集日志,并通过filter过滤,最终output输出。
1)首先,input表示数据源,数据源可以有多种形式,可以具体从某个文件,可以从es、redis等数据库。我的这个项目是表示日志数据是通过tcp形式传输,logstash将自己的4560端口暴露出来,codec嘛,字面理解是数据处理格式吧。
2)其次,filter是个过滤器,应该是个可选项(说白了,你可以不配置)。
mutate 对字段做处理 重命名、删除、替换和修改字段。那remove_field的话应该是删除不想要的字段。
3)最后,output把最终得到的日志文件输出,我这里存储到了es数据库中。index就是通过kibana去查看日志的索引。像下面各个月的日志存储在各个索引中,然后可以去具体某个索引中去查找对应的日志。kibana使用方法,还是得看具体教程。
在这里插入图片描述
可以参考这篇博文了解logstash配置文件具体含义:logstash配置文件具体含义
logstash.yml:

xpack.monitoring.elasticsearch.hosts: http://ip:9200
xpack.monitoring.elasticsearch.username: "*******_es"
xpack.monitoring.elasticsearch.password: "123456"

后续持续跟进Kibana页面查询操作。。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
部署ELK(Elasticsearch, Logstash, Kibana)和Zabbix可以提供强大的日志和监控功能。下面是一个简单的ELK和Zabbix部署步骤的概述: 1. 安装和配置Elasticsearch: - 下载并安装Elasticsearch。 - 配置Elasticsearch的`elasticsearch.yml`文件,指定节点名称、监听地址等配置。 - 启动Elasticsearch服务。 2. 安装和配置Logstash: - 下载并安装Logstash。 - 创建一个Logstash配置文件,指定输入、过滤器和输出。 - 启动Logstash服务。 3. 安装和配置Kibana: - 下载并安装Kibana。 - 配置Kibana的`kibana.yml`文件,指定Elasticsearch的地址等配置。 - 启动Kibana服务。 4. 配置日志数据源(例如,服务器日志): - 确保服务器上的日志文件可读取,并根据需要进行格式化。 - 在Logstash配置文件中指定要收集的日志文件路径和格式。 5. 配置Zabbix: - 下载并安装Zabbix Server。 - 创建Zabbix数据库,并为Zabbix Server配置数据库连接。 - 配置Zabbix Server的`zabbix_server.conf`文件,指定监听IP地址、数据库信息等配置。 - 启动Zabbix Server服务。 6. 设置监控项和触发器: - 在Zabbix Web界面中创建主机和监控项,设置需要监控的指标(例如CPU、内存、磁盘等)。 - 创建触发器,定义当指标达到某个阈值时触发的动作(例如发送警报、执行脚本等)。 7. 可选:集成Zabbix和ELK: - 配置Zabbix的ELK插件,以将Zabbix的告警事件发送到Elasticsearch。 - 在Kibana中创建相应的索引模式和可视化仪表板,以展示Zabbix的监控数据。 请注意,以上步骤只是一个概述,并且在实际部署过程中可能会有更多的配置和调整。建议参考官方文档和相关教程以获取更详细的步骤和指导。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值