ELK日志分析系统迁移记录

本文涉及的产品
Redis 开源版,标准版 2GB
推荐场景:
搭建游戏排行榜
云数据库 Tair(兼容Redis),内存型 2GB
检索分析服务 Elasticsearch 版,2核4GB开发者规格 1个月
简介: 写在开始 阿里云ECS即将到期,由于之前ELK日志分析是在自己的服务器上进行试水,断断续续运行了一年多时间。 今天抽空赶紧把ELK迁移一下,由于Logstash本身就配置于各个系统之中,所以这里只是对Redis、Elasticsearch和Kibana进行了配置,当然还有一些邮件发送的配置。

写在开始

做项目不记录日志?线上的问题永远不会知道何时发生过?只会在出现事故之后身处茫然之中。

阿里云ECS即将到期,由于之前ELK日志分析是在自己的服务器上进行试水,断断续续运行了一年多时间。

今天抽空赶紧把ELK迁移一下,由于Logstash本身就配置于各个系统之中,所以这里只是对Redis、Elasticsearch和Kibana进行了配置,当然还有一些邮件发送的配置。

看了下官网,Elasticsearch和Kibana已经进行了升级,Kibana更新到了版本5,而Elasticsearch也跟随升级到了5。由于系统环境是JDK1.7,而Elasticsearch依赖JDK1.8,同时Kibana又必须依赖Elasticsearch,只能升级作罢,按照原来的迁移。

系统架构

2731325935

平台优势

为什么要搭建ELK系统?

方便开发或者运维人员统计分析和查询日志信息。
对于错误日志统一处理并发送通知。

相关软件

Logstash-2.1.1

Redis-3.2.8

Elasticsearch-2.4.4

Kibana-4.3.1

Nginx-1.6.2

JDK-1.7

sendmail

迁移说明

配置Redis

  • 建议使用内网IP
  • 建议修改 默认端口6379
  • 配置文件在redis.conf,修改相关的host、IP以及密码
  • 启动 ./redis-server /home/tools/redis-3.2.8/redis.conf& #加&实现后台运行
  • 测试连接 ./redis-cli -h 127.0.0.1 -p 6379

文档: http://blog.52itstyle.com/archives/590/

配置Elasticsearch

  • 版本选择 2.4.4,由于5以上版本要基于JDK1.8以上,所以放弃。
  • 禁止使用root启动(自行创建用户),这不是一个好的主意,启动时有警告。
  • 建议内网配置通信,不要暴露IP
  • 建议修改默认端口9200
  • 最后Elasticsearch是从2版本直接跳跃到5版本的,可能是要配置kinbana

启动说明
elasticsearch -h # 查看相关参数
elasticsearch -d # 后台运行
curl -X GET http://127.0.0.1:9200 # 测试是否启动

默认配置下是不允许root用户启动的,危险系数比较高。当然这里也有解决方法,但不建议使用。
编辑bin目录下的elasticsearch 加上ES_JAVA_OPTS属性即可。

ES_JAVA_OPTS="-Des.insecure.allow.root=true"

配置kinbana

  • 建议内网配置通信,不要暴露IP,可以通过Nginx做反向代理实现鉴权登陆
  • 登陆后,需要等Elasticsearch中有数据才可以创建index
  • 启动命令 nohup kibana &

注意:
当输入nohup kibana & 命令后,需要按任意键返回到shell窗口。
退出当前登录窗口用exit命令,不要直接点击窗口上的叉来关闭。

配置邮件发送

  • 安装 yum install -y sendmail
  • 配置 文件 vi /etc/mail.rc
#参数自行修改
set from=admin@52itstyle.com smtp=smtp.52itstyle.com smtp-auth-user=admin@52itstyle.com smtp-auth-password=123456 set smtp-auth=login
  • 启动服务 service sendmail start
  • 检测服务 chkconfig --list |grep sendmail
  • 测试 mail -s "test" 345849402@qq.com

最后的最后,这些配置一定要配置开机启动。

相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
目录
相关文章
|
2天前
|
存储 安全 Java
Spring Boot 3 集成Spring AOP实现系统日志记录
本文介绍了如何在Spring Boot 3中集成Spring AOP实现系统日志记录功能。通过定义`SysLog`注解和配置相应的AOP切面,可以在方法执行前后自动记录日志信息,包括操作的开始时间、结束时间、请求参数、返回结果、异常信息等,并将这些信息保存到数据库中。此外,还使用了`ThreadLocal`变量来存储每个线程独立的日志数据,确保线程安全。文中还展示了项目实战中的部分代码片段,以及基于Spring Boot 3 + Vue 3构建的快速开发框架的简介与内置功能列表。此框架结合了当前主流技术栈,提供了用户管理、权限控制、接口文档自动生成等多项实用特性。
27 8
|
4月前
|
存储 消息中间件 网络协议
日志平台-ELK实操系列(一)
日志平台-ELK实操系列(一)
|
1月前
|
存储 监控 安全
什么是事件日志管理系统?事件日志管理系统有哪些用处?
事件日志管理系统是IT安全的重要工具,用于集中收集、分析和解释来自组织IT基础设施各组件的事件日志,如防火墙、路由器、交换机等,帮助提升网络安全、实现主动威胁检测和促进合规性。系统支持多种日志类型,包括Windows事件日志、Syslog日志和应用程序日志,通过实时监测、告警及可视化分析,为企业提供强大的安全保障。然而,实施过程中也面临数据量大、日志管理和分析复杂等挑战。EventLog Analyzer作为一款高效工具,不仅提供实时监测与告警、可视化分析和报告功能,还支持多种合规性报告,帮助企业克服挑战,提升网络安全水平。
|
2月前
|
存储 监控 安全
|
2月前
|
存储 Linux Docker
centos系统清理docker日志文件
通过以上方法,可以有效清理和管理CentOS系统中的Docker日志文件,防止日志文件占用过多磁盘空间。选择合适的方法取决于具体的应用场景和需求,可以结合手动清理、logrotate和调整日志驱动等多种方式,确保系统的高效运行。
210 2
|
3月前
|
XML JSON 监控
告别简陋:Java日志系统的最佳实践
【10月更文挑战第19天】 在Java开发中,`System.out.println()` 是最基本的输出方法,但它在实际项目中往往被认为是不专业和不足够的。本文将探讨为什么在现代Java应用中应该避免使用 `System.out.println()`,并介绍几种更先进的日志解决方案。
84 1
|
3月前
|
监控 网络协议 安全
Linux系统日志管理
Linux系统日志管理
72 3
|
3月前
|
监控 应用服务中间件 网络安全
#637481#基于django和neo4j的日志分析系统
#637481#基于django和neo4j的日志分析系统
49 4
|
3月前
|
SQL 关系型数据库 MySQL
Hadoop-25 Sqoop迁移 增量数据导入 CDC 变化数据捕获 差量同步数据 触发器 快照 日志
Hadoop-25 Sqoop迁移 增量数据导入 CDC 变化数据捕获 差量同步数据 触发器 快照 日志
57 0
|
3月前
|
监控 Linux 测试技术
Linux系统命令与网络,磁盘和日志监控总结
Linux系统命令与网络,磁盘和日志监控总结
76 0