[架构之美]Ubuntu上离线安装ELK(Elasticsearch、Logstash、Kibana)(二)

在 Ubuntu 上离线安装 ELK(Elasticsearch、Logstash、Kibana)的完整步骤如下:

一.安装验证

在这里插入图片描述
在这里插入图片描述

二.安装步骤

1. 在联网机器上准备离线包

(1) 安装依赖工具
#联网机器
sudo apt update
sudo apt install apt-rdepends wget
(2) 下载 ELK 的 .deb 安装包
#创建目录将安装包下载在此目录下
mkdir ~/elk-offline
cd ~/elk-offline

wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.10.1-amd64.deb

wget https://artifacts.elastic.co/downloads/logstash/logstash-7.10.1-amd64.deb

wget https://artifacts.elastic.co/downloads/kibana/kibana-7.10.1-amd64.deb
(3)复制到离线机器并安装
#将ELK安装包复制到离线机器并安装
sudo dpkg -i elasticsearch-7.10.1-amd64.deb
sudo dpkg -i logstash-7.10.1-amd64.deb
sudo dpkg -i kibana-7.10.1-amd64.deb

3. 配置 Elasticsearch

(1) 调整内存限制
sudo vim /etc/elasticsearch/jvm.options

修改以下参数(根据机器配置调整):

-Xms1g
-Xmx1g
(2) 启动服务
sudo systemctl start elasticsearch
sudo systemctl enable elasticsearch
sudo systemctl status elasticsearch

#关闭服务(可选)
sudo systemctl stop elasticsearch

4. 配置 Kibana

(1) 允许远程访问
sudo nano /etc/kibana/kibana.yml
#保存离开
ctrl+X 

修改配置:

#允许远程访问,根据实际情况
server.host: "0.0.0.0"
#设置elasticsearch 地址
elasticsearch.hosts: ["http://localhost:9200"]
(2) 启动服务
sudo systemctl start kibana
sudo systemctl enable kibana
sudo systemctl status kibana
#停止服务(可选)
sudo systemctl stop kibana

5. 配置 Logstash

(1) 创建管道配置
sudo nano /etc/logstash/logstash.conf

添加示例配置:

input {
  file {
    path => "/var/log/*.log"
    start_position => "beginning"
  }
}
filter {
  mutate {
    add_tag => ["my_tag"]
  }
}
output {
  elasticsearch {
    hosts => ["localhost:9200"]
  }
}
(2) 启动服务
sudo systemctl start logstash
sudo systemctl enable logstash
sudo systemctl status logstash
#停止服务(可选)
sudo systemctl stop logstash

6. 验证安装

(1) 检查 Elasticsearch
curl -X GET "localhost:9200"

预期输出包含 "version" 字段。

(2) 访问 Kibana

浏览器打开 http://离线机器IP:5601,应看到 Kibana 界面。

三.常见问题解决

1. 依赖缺失(如 libc6 版本不符)
  • 解决:在联网机器下载对应版本的包:
    apt download libc6=2.35-0ubuntu3
    
    .deb 文件加入离线包重新传输。
2. Elasticsearch 启动失败
  • 查看日志
    journalctl -u elasticsearch
    
  • 常见原因:内存不足或文件句柄数限制。
    解决
    # 修改系统限制
    echo "elasticsearch - nofile 65535" | sudo tee -a /etc/security/limits.conf
    
3. Kibana 无法连接 Elasticsearch
  • 检查配置:确认 elasticsearch.hosts 地址正确。
  • 查看防火墙:开放端口 9200 和 5601:
    sudo ufw allow 9200/tcp
    sudo ufw allow 5601/tcp
    

总结

  • 核心步骤:优先保证 Java 环境正确安装。
  • 安全建议:生产环境需配置 Elasticsearch 的 TLS 加密和 Kibana 的登录认证。
  • 版本一致性:确保 Elasticsearch、Logstash、Kibana 版本严格匹配。

希望这篇文章对你有所帮助!如果觉得不错,别忘了点赞收藏哦!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

曼岛_

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值