ELKSTACK

本文详细介绍ELK Stack(Elasticsearch, Logstash, Kibana)的安装配置过程,包括依赖环境搭建、各组件安装步骤及集群创建方法。通过API方式采集数据,并展示如何使用JSON格式进行索引操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

ELKSTACK:
    日志分析

内存锁定
需要依赖与JAVA环境
[root@elk1 ~]# ls
elasticsearch-2.3.3.rpm
[root@elk1 ~]# rpm -ivh elasticsearch-2.3.3.rpm 
[root@elk1 ~]# cd /etc/elasticsearch/
[root@elk1 elasticsearch]# ls
elasticsearch.yml  logging.yml  scripts
[root@elk1 elasticsearch]# cd /var/lib/elasticsearch/
[root@elk1 elasticsearch]# pwd
/var/lib/elasticsearch
[root@elk1 elasticsearch]# vim /etc/elasticsearch/elasticsearch.yml 

[root@elk1 elasticsearch]# /etc/init.d/elasticsearch start
which: no java in (/sbin:/usr/sbin:/bin:/usr/bin)
Could not find any executable java binary. Please install java in your PATH or set JAVA_HOME
[root@elk1 elasticsearch]# cd
[root@elk1 ~]# rpm -ivh jdk-8u121-linux-x64.rpm 
[root@elk1 plugins]# /etc/init.d/elasticsearch start
Starting elasticsearch:                                    [  OK  ]
[root@elk1 ~]# rpm -ql elasticsearch
[root@elk1 plugins]# yum install unzip -y
[root@elk1 ~]# unzip -d  /usr/share/elasticsearch/plugins elasticsearch-head-master.zip 
[root@elk1 elasticsearch-head-master]# netstat -antlp
 0 ::ffff:172.25.30.1:9200     :::*                        LISTEN      1640/java           
tcp        0      0 ::ffff:172.25.30.1:9300     :::*                        LISTEN      1640/java   
[root@elk1 ~]# cd /usr/share/elasticsearch/
[root@elk1 elasticsearch]# ls
bin  lib  LICENSE.txt  modules  NOTICE.txt  plugins  README.textile
[root@elk1 elasticsearch]# cd plugins/
[root@elk1 plugins]# ls
elasticsearch-head-master
[root@elk1 plugins]# cd elasticsearch-head-master/
[root@elk1 elasticsearch-head-master]# ls
elasticsearch-head.sublime-project  LICENCE                       _site
Gruntfile.js                        package.json                  src
grunt_fileSets.js                   plugin-descriptor.properties  test
index.html                          README.textile
[root@elk1 elasticsearch-head-master]#    

&&浏览器访问:http://172.25.30.1:9200/




[root@elk1 ~]# /usr/share/elasticsearch/bin/plugin install file:/root/elasticsearch-head-master.zip 
-> Installing from file:/root/elasticsearch-head-master.zip...
Trying file:/root/elasticsearch-head-master.zip ...
Downloading .........DONE
Verifying file:/root/elasticsearch-head-master.zip checksums if available ...
NOTE: Unable to verify checksum for downloaded plugin (unable to find .sha1 or .md5 file to verify)
Installed head into /usr/share/elasticsearch/plugins/head

http://172.25.30.1:9200/_plugin/head/
    ***创建图形界面

&&创建集群

[root@elk2 ~]# rpm -ivh jdk-8u121-linux-x64.rpm elasticsearch-2.3.3.rpm 
[root@elk1 ~]# scp /etc/elasticsearch/elasticsearch.yml root@172.25.30.2:/etc/elasticsearch/
[root@elk1 ~]# scp /etc/elasticsearch/elasticsearch.yml root@172.25.30.3:/etc/elasticsearch/
vim /etc/elasticsearch/elasticsearch.yml 
.....
cluster.name: my-es
node.name: elk1 #需要主机名解析
path.data: /var/lib/elasticsearch
bootstrap.mlockall: true
network.host: 172.25.30.1
http.port: 9200
discovery.zen.ping.unicast.hosts: ["elk1", "elk2", "elk3"]
....
/etc/init.d/elasticsearch start

&&集群成功
粗的表示实体,细的表示副本

*五角星:主分片服务器
绿色:集群OK
红色:坏





API方式采集数据:
JSON格式:

API操作索引
[root@elk1 ~]# rpm -ivh logstash-2.3.3-1.noarch.rpm 
Preparing...                                                            (100########################################### [100%]
   1:logstash                                                           (  1########################################### [100%]
[root@elk1 logstash]# ./bin/logstash -e 'input { stdin {} } output { elasticsearch { hosts => ["172.25.30.1"] index => "logstash-%{+YYYY.MM.dd}" } }'
Settings: Default pipeline workers: 1
Pipeline main started
hello xiaxiaofan
电动汽车数据集:2025年3K+记录 真实电动汽车数据:特斯拉、宝马、日产车型,含2025年电池规格和销售数据 关于数据集 电动汽车数据集 这个合成数据集包含许多品牌和年份的电动汽车和插电式车型的记录,捕捉技术规格、性能、定价、制造来源、销售和安全相关属性。每一行代表由vehicle_ID标识的唯一车辆列表。 关键特性 覆盖范围:全球制造商和车型组合,包括纯电动汽车和插电式混合动力汽车。 范围:电池化学成分、容量、续航里程、充电标准和速度、价格、产地、自主水平、排放、安全等级、销售和保修。 时间跨度:模型跨度多年(包括传统和即将推出的)。 数据质量说明: 某些行可能缺少某些字段(空白)。 几个分类字段包含不同的、特定于供应商的值(例如,Charging_Type、Battery_Type)。 各列中的单位混合在一起;注意kWh、km、hr、USD、g/km和额定值。 列 列类型描述示例 Vehicle_ID整数每个车辆记录的唯一标识符。1 制造商分类汽车品牌或OEM。特斯拉 型号类别特定型号名称/变体。型号Y 与记录关联的年份整数模型。2024 电池_类型分类使用的电池化学/技术。磷酸铁锂 Battery_Capacity_kWh浮充电池标称容量,单位为千瓦时。75.0 Range_km整数表示充满电后的行驶里程(公里)。505 充电类型主要充电接口或功能。CCS、NACS、CHAdeMO、DCFC、V2G、V2H、V2L Charge_Time_hr浮动充电的大致时间(小时),上下文因充电方法而异。7.5 价格_USD浮动参考车辆价格(美元).85000.00 颜色类别主要外观颜色或饰面。午夜黑 制造国_制造类别车辆制造/组装的国家。美国 Autonomous_Level浮点自动化能力级别(例如0-5),可能包括子级别的小
### ELK Stack 的概述 ELK Stack 是由 Elasticsearch、Logstash 和 Kibana 组成的一个开源工具集合,用于日志管理、数据分析以及数据可视化。它能够高效地收集、存储并分析大规模的日志数据,从而帮助企业提升系统的稳定性与性能[^2]。 #### 主要组件及其功能 1. **Elasticsearch**: 这是一个分布式搜索引擎和分析引擎,支持全文检索、结构化查询等多种操作方式。它是整个 ELK Stack 中的核心部分,负责索引和搜索数据。 2. **Logstash**: Logstash 提供了一个灵活的数据采集管道,可以用来接收来自不同源的日志或其他形式的数据流,并对其进行过滤、转换后再发送到目标位置(通常是 Elasticsearch)。此外还支持多种输入插件和输出插件扩展其能力范围[^3]。 3. **Kibana**: Kibana 则专注于前端界面开发工作,在这里用户可以通过友好的图形界面对存放在 Elasticsearch 当中的海量信息执行探索式浏览或者创建自定义仪表板来进行更深入洞察[^4]。 --- ### ELK Stack 安装配置流程 以下是关于如何安装配置 ELK Stack 的基本指导: #### 准备环境 确保服务器已准备好运行 Linux 发行版 (如 Ubuntu),并且具备足够的硬件资源以满足各服务的需求。另外还需要确认 Java JDK 已经被正确设置好因为这三个程序都需要依赖于 JVM 来运作[^1]。 #### 下载软件包 访问官方下载页面获取最新版本号对应的操作系统二进制文件或使用 APT/YUM 软件仓库自动完成部署过程: ```bash sudo apt-get update && sudo apt-get install elasticsearch logstash kibana filebeat ``` #### 配置 ElasticSearch 编辑 `/etc/elasticsearch/elasticsearch.yml` 文件调整网络绑定地址及其他必要参数以便让外部客户端也能连接进来: ```yaml network.host: 0.0.0.0 discovery.type: single-node ``` 重启服务使更改生效: ```bash systemctl restart elasticsearch.service ``` #### 设置 LogStash 输入 输出规则 打开位于路径下的 `logstash.conf` 示例模板修改适合自己的业务场景逻辑表达式: ```conf input { beats { port => "5044" } } output { elasticsearch { hosts => ["http://localhost:9200"] } } ``` 保存之后重新加载进程: ```bash bin/logstash -f /path/to/config/file.conf --config.reload.automatic true ``` #### 启动 Kibana 并验证状态 最后一步就是开启 Kibana Web 应用程序监听端口,默认情况下应该是在 HTTP 协议下开放给本地主机使用的第 5601 号通道上等待请求到来: ```bash kibana & curl http://localhost:5601/status ``` 如果返回 JSON 响应则表明一切正常! --- ### 实战技巧分享 为了更好地发挥这套解决方案的价值所在,建议尝试以下几种方法论来优化实际应用场景的表现效果: - 数据建模:提前规划好字段映射关系有助于加快后续查询速度减少不必要的计算开销; - 性能调优:针对高并发读写压力较大的情况适当增加节点数量形成集群模式分摊负载; - 插件增强:利用社区贡献出来的第三方模块实现更多高级特性比如地理空间绘图等功能拓展视野边界. ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值