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选择相应视图进行搜索

相关推荐
鸡鸭扣1 小时前
Docker:3、在VSCode上安装并运行python程序或JavaScript程序
运维·vscode·python·docker·容器·js
A ?Charis2 小时前
k8s-对接NFS存储
linux·服务器·kubernetes
人工干智能4 小时前
科普:“Docker Desktop”和“Docker”以及“WSL”
运维·docker·容器
落笔画忧愁e4 小时前
FastGPT及大模型API(Docker)私有化部署指南
运维·docker·容器
前端郭德纲4 小时前
前端自动化部署的极简方案
运维·前端·自动化
DC_BLOG5 小时前
Linux-GlusterFS进阶配置
linux·运维·服务器
Blasit5 小时前
C++ Qt建立一个HTTP服务器
服务器·开发语言·c++·qt·http
我们的五年5 小时前
MAC地址是如何在局域网中工作的?
linux
浮华落定7 小时前
Centos开机自启动
linux·运维·centos
去看日出7 小时前
CentOS 7 企业级Redis 7部署指南
linux·redis·centos