ELK (Elasticsearch+Logstash+Kibana) 的安装

本文提供了ELK Stack(Elasticsearch、Logstash、Kibana)的详细安装步骤,包括安装Java环境、Elasticsearch、Kibana及Logstash的过程,并介绍了如何设置自动启动、启动与关闭服务的方法。

安装Java

> sudo apt-get install openjdk-8-jdk
> sudo apt-get install apt-transport-https

安装Elasticsearch

> wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-5.4.3.deb
> sudo dpkg -i elasticsearch-5.4.3.deb 
> sudo apt-get install -f
> dpkg -L elasticsearch

# 使elasticsearch自动启动,首先检查你的系统是使用什么管理服务:
> ps -p 1
如果是systemd:
> sudo systemctl daemon-reload
> sudo systemctl enable elasticsearch.service

# Elastic的启动与关闭:
> sudo systemctl start elasticsearch.service
> sudo journalctl --unit elasticsearch
> sudo systemctl stop elasticsearch.service

# Test:
> curl http://localhost:9200/

Note:
- 配置文件路径:/etc/elasticsearch/elasticsearch.yml
- Ubuntu系统的elastic配置文件:/etc/default/elasticsearch

安装Kibana

> wget https://artifacts.elastic.co/downloads/kibana/kibana-5.4.3-amd64.deb
> sudo dpkg -i kibana-5.4.3-amd64.deb
> sudo apt-get install -f

# 加入系统自动启动
> sudo /bin/systemctl daemon-reload
> sudo /bin/systemctl enable kibana.service

# 启动与关闭:
> sudo systemctl start kibana.service
> sudo journalctl --unit kibana
> sudo systemctl stop kibana.service

Note:
- 配置:/etc/kibana/kibana.yml

安装Logstash

首先在https://www.elastic.co/downloads/logstash下载deb包到本地,然后把包传到服务器上:

> scp -P 1215 logstash-5.4.3.deb hdgs@119.97.166.135:/home/hdgs
> sudo dpkg -i logstash-5.4.3.deb
> sudo apt-get install -f

# 加入系统自动启动
> sudo systemctl daemon-reload
> sudo systemctl enable logstash.service

# 启动与关闭:
> sudo systemctl start logstash.service
> sudo journalctl --unit logstash
> sudo systemctl stop logstash.service

Note:
- 配置目录:/etc/logstash/
- 主目录:/usr/share/logstash/

### ELK 堆栈的日志管理和分析 #### 工作原理概述 ELK 是由 ElasticsearchLogstashKibana 组成的一个开源工具链,用于日志管理与分析。其基本工作流如下: - **Logstash** 负责从各种来源收集日志数据,并对其进行过滤和格式化后发送至 Elasticsearch[^1]。 - **Elasticsearch** 提供强大的搜索引擎功能,负责对接收到的数据进行索引和存储。 - **Kibana** 则作为前端界面,允许用户通过图形化的方式查询、分析以及可视化这些数据[^3]。 #### 安装与配置步骤说明 ##### 1. 安装 Elasticsearch Elasticsearch 是整个系统的基石,它提供了分布式搜索和数据分析的能力。安装过程中需要注意版本兼容性问题。下载地址可以通过官方链接获取[^2]。完成安装后需调整 `elasticsearch.yml` 文件中的集群名称、节点名称以及其他必要的网络设置参数以适应实际环境需求。 ##### 2. 部署 Logstash Logstash 主要承担着数据输入端的角色,可以从文件系统、数据库或其他服务中提取原始记录再经过一系列插件处理之后传送给下游组件即 Elasticsearch 实例群组里去。具体操作包括解压软件包到目标目录下然后编辑对应的 configuration file 来定义 pipeline 的行为模式比如 source type filter output destination等等。 ##### 3. 设置 Kibana 最后一步就是启动 Kibana 应用来连接已有的 ES 数据库实例从而实现交互式的探索体验。同样地也需要修改默认路径下的 kibana.config.json 或者其他形式的初始化脚本来指定正确的 backend URL 地址确保两者之间能够正常通信握手成功建立联系。 以下是简单的 Python 示例来演示如何向运行中的 logstash 发送消息: ```python import logging import socket def send_log_to_logstash(message): host = 'localhost' # 替换为您的logstash主机名/IP port = 5000 # 替换为您所使用的TCP端口号 try: sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM) sock.connect((host, port)) sock.sendall(bytes(message + '\n', 'utf-8')) sock.close() except Exception as e: logger.error(f"Failed to send message {message} due to error: {e}") if __name__ == "__main__": test_message = "This is a test log entry" send_log_to_logstash(test_message) ``` 此代码片段展示了怎样利用标准库里的套接字模块构建起基础版客户端程序以便于测试目的验证我们的pipeline是否按预期那样运作良好。 #### 总结 综上所述,通过合理规划各部分之间的协作关系再加上细致入微得当的各项设定就可以顺利达成基于ELK框架之上高效稳定可靠的解决方案来满足企业级应用场合当中对于海量结构化半结构性乃至完全非结构化的各类事件追踪审计等方面提出的苛刻要求了。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值