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

相关推荐
镜子AI6 小时前
镜子AI 技术复盘:三条自动化链路上的“停止条件“设计
运维·人工智能·自动化
tianyuanwo7 小时前
NetBox 数据库详解:当“关系型数据库”被装进一个网络运维的领域模型里
运维·数据库·netbox
HideF7 小时前
Linux sudo
linux
FlightYe7 小时前
视界原理之3D视频(四):裸眼、眼镜和头显
android·linux·c++·3d·ffmpeg·音视频
蹊黎8 小时前
Linux 下用 C 语言实现进度条
linux·c语言·单片机
知已难寻9 小时前
03 · OpenStack的计算管理 Nova
运维·服务器·开发语言·云原生·云计算·openstack·开源软件
huainingning9 小时前
Windows syslog日志服务器搭建与模拟器对接
运维·服务器·智能路由器
牛马鸡niumasi9 小时前
【Linux】C语言文件操作
linux
say_fall9 小时前
【Linux系统编程】Ext 文件系统:磁盘与存储、文件与目录、现代计算机究竟如何寻找文件
linux·运维·服务器·数据库·c++
wacsii10 小时前
【Linux进程(一)】Linux 进程初探:操作系统如何管理进程?fork() 为什么返回两次?
linux·运维·服务器