ELK8.17部署(Ubantu24x64)

检查java环境 ELK8.x不支持java8

若无环境可执行 sudo apt install openjdk-17-jre-headless

准备安装包

官网下载地址: ELK

products 搜Elasticsearch、Kibana、Logstash、Filebeat

versions需一致,这里使用8.17.0

Elasticsearch
Kibana
Logstash
Filebeat

elasticsarch安装

javascript 复制代码
# 建一个文件夹
cd /usr/local/
mkdir elk
# 我这里用的shell  使用rz上传文件  上传安装包
cd elk
rz
# 解压
tar -zxvf elasticsearch-x.x.x.xxxx
cd elasticsearch-xxx
mkdir data
# 修改配置文件
vim ./config/elasticsearch.yml
javascript 复制代码
cluster.name: es-application
node.name: node-1
# 这个地址是新建的data文件
path.data: /usr/local/elk/elasticsearch-8.17.0/data/
path.logs: /usr/local/elk/elasticsearch-8.17.0/logs/
# 允许外网访问
network.host: 0.0.0.0
http.port: 9200
# 关闭ssl
xpack.security.enabled: false
xpack.security.http.ssl:
  enabled: false
  keystore.path: certs/http.p12

如果没有安全证书需要申请:Elastic stack安全配置

elk不能root启动,可用安装系统时创建的用户启动,若无可创一个

javascript 复制代码
#创建新用户及授权
groupadd elk
 
useradd elk -g elk -p elkelk
 
chown -R elk:elk /usr/local/elk
javascript 复制代码
#切用户启动 
su elk
 
# 后台启动
./bin/elasticsearch -d
 
# 查看是否启动成功
ps -ef|grep elasticsearch
 
# 调用这个出现You Know, for Search就算成功
curl http://ip:9200

Kibana安装

切回root上传安装包后解压

修改配置:vim ./config/kibana.yml

javascript 复制代码
# 端口号
server.port: 5601

# 汉化
i18n.locale: "zh-CN"
 
# ip地址
server.host: "192.168.xx.xx"
 
# es连接
elasticsearch.url: "http://192.168.xx.xx:9200"
javascript 复制代码
#切用户
su elk
#非后台启动,关闭shell窗口即退出
./bin/kibana

#后台启动 (推荐使用后台启动)
nohup ./bin/kibana > kibana_start.log 2>&1 & 
 # 检查是否启动成功
ps -ef|grep kibana	

Logstash安装

切回root上传安装包后解压

cp ./config/logstash-sample.conf ./filebeat.conf

修改配置:vim ./config/filebeat.yml

javascript 复制代码
# Sample Logstash configuration for creating a simple
# Beats -> Logstash -> Elasticsearch pipeline.

input {
  beats {
    host => '0.0.0.0'
    port => 5044
  }
  #file{
  #  path => ['/mnt/coding/blog/storage/logs/*.log']
  #  type => 'user_log'
  #  start_position => "beginning"      
  #}
}

output {
   if [app] == "xxx" {
        if [type] == "xxx-log" {
           elasticsearch {
              hosts => ["http://192.168.xxx.xxx:9200"]
              index => "filebeat_blog_log-%{+YYYY.MM.dd}"
              user => "elastic"
              password => "changeme"
           }
        }
    }

#elasticsearch {
    #hosts => ["http://192.168.xxx.xxx:9200"]
   # index => "filebeat_log-%{+YYYY.MM.dd}"
    #index => "%{[@metadata][beat]}-%{[@metadata][version]}-%{+YYYY.MM.dd}"
    #user => "elastic"
    #password => "changeme"
  #}
}
javascript 复制代码
#切用户
su elk

#启动
nohup ./bin/logstash -f ./config/filebeat.conf > logstash_start.log 2>&1 &

 # 检查是否启动成功
ps -ef|grep logstash 

Filebeat安装

切回root上传安装包后解压

修改配置:vim ./filebeat.yml

复制代码
filebeat.inputs:
- type: log
  # 应用名
  id: xxx-java
  enabled: true
  paths:
  # 应用输出日志地址
    - /usr/local/java/xxx/*.log
  fields:
    level: debug
    review: 1
    # 应用名
    app: XXX
    # 应用类型
    type: XXX-log
  fields_under_root: true
setup.kibana:
  host: "192.168.XXX.XXX:5601"
output.logstash:
  hosts: ["192.168.XXX.XXX:5044"]

其他高级配置:Filebeat的高级配置详解

javascript 复制代码
#切用户
su elk

#启动
nohup ./filebeat > filebeat_start.log 2>&1 & 

 # 检查是否启动成功
ps -ef|grep filebeat 

生成模型

登录kibana:192.168.XXX.XXX:5601

选择菜单:Stack Management

继续选择菜单:索引管理/Index Management 出现索引文件就是日志上传成功了

若成功选择菜单:数据视图/index pattern

创建视图后即可选择菜单Discover选择相应视图进行搜索

相关推荐
敲代码的彭于晏7 小时前
2026 K8s 零基础入门:手把手教你一步步搭建 Kubernetes 集群
java·运维·全栈
土星云SaturnCloud7 小时前
土星云边缘计算+AI视觉+视频存管:连锁汽修数字化升级实践
服务器·人工智能·ai·边缘计算
ManageEngine卓豪7 小时前
智能运维如何降低 MTTR:告警聚类、因果分析与自动化修复的工程拆解
运维·智能运维·mttr
wangfenglei1234567 小时前
jenkins权限配置
运维·jenkins
ab1237688 小时前
Docker Compose 完整详解
运维·docker·容器
张洛闻Eren8 小时前
Ansible【第二课】:实施 Ansible Playbook
linux·运维·服务器·云原生·kubernetes·k8s·ansible
启博网络8 小时前
启博安企服务器与ERP加速服务器如何区分?一文讲透
运维·服务器
Zhu7588 小时前
【开源脚本】Ubuntu环境下载任意软件
linux·运维·ubuntu
吴声子夜歌8 小时前
Docker入门与实战——核心实现技术
运维·docker·容器
李纲明8 小时前
WordPress 安全加固基线:更新策略、文件权限、登录面收缩和备份验证(含回滚注意)
运维·安全·php·wordpress