手把手教你在CentOS上安装ELK,对服务器日志进行收集(三)

本文涉及的产品
检索分析服务 Elasticsearch 版,2核4GB开发者规格 1个月
日志服务 SLS,月写入数据量 50GB 1个月
简介: ELK 不是一款软件,而是 Elasticsearch、Logstash 和 Kibana 三种软件产品的首字母缩写。这三者都是开源软件,通常配合使用,而且又先后归于 Elastic.co 公司名下,所以被简称为 ELK Stack。根据 Google Trend 的信息显示,ELK Stack 已经成为目前最流行的集中式日志解决方案。

3.2、Logstash安装

3.2.1、安装logstash
rpm -ivh logstash-6.1.0.rpm
3.2.2、设置data的目录

创建/data/ls-data目录,用于logstash数据的存放

mkdir -p /data/ls-data

修改该目录的拥有者为logstash

chown -R logstash:logstash /data/ls-data
3.2.3、设置log的目录

创建/data/ls-log目录,用于logstash日志的存放

mkdir -p /log/ls-log

修改该目录的拥有者为logstash

chown -R logstash:logstash /log/ls-log
3.2.4、设置conf.d的目录,创建配置文件
#进入logstash目录
cd /etc/logstash
#创建conf.d的目录
mkdir conf.d

创建配置文件,日志内容输出到elasticsearch中,如下

vim /etc/logstash/conf.d/logstash.conf

内容如下:

input {
  beats {
    port => 5044
    codec => plain {
          charset => "UTF-8"
    }
  }
}
output {
  elasticsearch { hosts => ["localhost:9200"] }
  stdout { codec => rubydebug }
}
3.2.5、修改配置文件logstash.yml
vim /etc/logstash/logstash.yml

内容如下:

# 设置数据的存储路径为/data/ls-data
path.data: /data/ls-data
# 设置管道配置文件路径为/etc/logstash/conf.d
path.config: /etc/logstash/conf.d
# 设置日志文件的存储路径为/log/ls-log
path.logs: /log/ls-log
3.2.6、启动logstash

启动

systemctl start logstash

查看

systemctl status logstash

设置开机启动

systemctl enable logstash
3.2.7、测试logstash

--config.test_and_exit表示,检查测试创建的logstash.conf配置文件,是否有问题,如果没有问题,执行之后,显示Configuration OK 证明配置成功!

/usr/share/logstash/bin/logstash  -f /etc/logstash/conf.d/logstash.conf --config.test_and_exit

**如果报错:WARNING: Could not find logstash.yml which is typically located in $LS_HOME/config or /etc/logstash. You can specify the path using –path.settings. **

解决办法:

cd /usr/share/logstash
ln -s /etc/logstash ./config
3.2.8、logstash指定配置进行运行

指定logstash.conf配置文件,以后台的方式运用,执行这段命令之后,需要回车一下

nohup /usr/share/logstash/bin/logstash -f /etc/logstash/conf.d/logstash.conf &

检查logstash是否启动

ps -ef|grep logstash

显示如下信息,说明启动了


44.jpg

3.3、kibana安装

3.3.1、安装kibana
rpm -ivh kibana-6.1.0-x86_64.rpm

搜索rpm包

rpm -ql kibana

默认是装在/usr/share/kibana/下。

3.3.2、修改kibana.yml

修改kibana的配置文件

vim /etc/kibana/kibana.yml

内容如下:

#kibana页面映射在5601端口
server.port: 5601
#允许所有ip访问5601端口
server.host: "0.0.0.0"
#elasticsearch所在的ip及监听的地址
elasticsearch.url: "http://localhost:9200"
3.3.3、启动kibana

启动

systemctl start kibana

查看状态

systemctl status kibana

设置开机启动

systemctl enable kibana

3.4、配置nginx 访问

3.4.1、安装nginx和http用户认证工具
yum -y install epel-release
yum -y install nginx httpd-tools
3.4.2、修改nginx配置
cp /etc/nginx/nginx.conf /etc/nginx/nginx.conf.bak
vim /etc/nginx/nginx.conf

location配置部分,注释掉

52.jpg

创建kibana.conf文件

vim /etc/nginx/conf.d/kibana.conf

内容如下:

server {
    listen 8000; #修改端口为8000
    server_name kibana;
    #auth_basic "Restricted Access";
    #auth_basic_user_file /etc/nginx/kibana-user;
    location / {
        proxy_pass http://127.0.0.1:5601; #代理转发到kibana
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection 'upgrade';
        proxy_set_header Host $host;
        proxy_cache_bypass $http_upgrade;
    }
}

重新加载配置文件

systemctl reload nginx

到这一步,elk基本配置完了,输入如下命令,启动服务

# 启动ELK和nginx
systemctl restart elasticsearch logstash kibana nginx
#查看ELK和nginx启动状态
systemctl status elasticsearch logstash kibana nginx

在浏览器输入ip:8000, 就可以访问了kibana

四、Linux节点服务器安装配置filebeat

4.1、安装filebeat

yum localinstall -y filebeat-6.2.4-x86_64.rpm

4.2、启动kibana

启动

systemctl start filebeat

查看状态

systemctl status filebeat

设置开机启动

systemctl enable filebeat

4.3、修改配置Filebeat

编辑filebeat.yml文件

vim /etc/filebeat/filebeat.yml
#============= Filebeat prospectors ===============
filebeat.prospectors:
- input_type: log
  enabled: true #更改为true以启用此prospectors配置。
  paths:  #支持配置多个文件收集目录
    #- /var/log/*.log
    - /var/log/messages
#==================== Outputs =====================
#------------- Elasticsearch output ---------------
#output.elasticsearch:
  # Array of hosts to connect to.
  #hosts: ["localhost:9200"]
#---------------- Logstash output -----------------
output.logstash:
  # The Logstash hosts
  hosts: ["localhost:5044"]

注意:注释掉Elasticsearch output下面的部分,将Filebeat收集到的日志输出到 Logstash output

最后重启服务

systemctl restart filebeat


相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
相关文章
|
11天前
|
Ubuntu 网络协议 关系型数据库
超聚变服务器2288H V6使用 iBMC 安装 Ubuntu Server 24.04 LTS及后续系统配置
【11月更文挑战第15天】本文档详细介绍了如何使用iBMC在超聚变服务器2288H V6上安装Ubuntu Server 24.04 LTS,包括连接iBMC管理口、登录iBMC管理界面、配置RAID、安装系统以及后续系统配置等步骤。
|
2月前
|
监控 Java Linux
Linux系统之安装Ward服务器监控工具
【10月更文挑战第17天】Linux系统之安装Ward服务器监控工具
55 5
Linux系统之安装Ward服务器监控工具
|
27天前
|
存储 监控 安全
|
2月前
|
人工智能 安全 大数据
ARM 服务器上安装 OpenEuler (欧拉)
openEuler 是华为于2019年开源的操作系统,支持多种处理器架构,包括X86和鲲鹏。截至2020年底,openEuler 拥有3万社区用户、2万多个拉取请求、2000多名贡献者和7032款软件。openEuler 提供高效、稳定、安全的系统,适用于数据库、大数据、云计算和人工智能等场景。本文介绍了在神州鲲泰 R522 服务器上安装 openEuler 的详细步骤,包括下载镜像、配置 RAID 和 BIOS 设置等。
243 0
ARM 服务器上安装 OpenEuler (欧拉)
|
2月前
|
Ubuntu TensorFlow 算法框架/工具
NVIDIA Triton系列05-安装服务器软件
本文介绍了NVIDIA Triton推理服务器的安装方法,涵盖源代码编译、可执行文件安装及Docker容器部署三种方式。重点讲解了在NVIDIA Jetson AGX Orin设备上的安装步骤,适合Ubuntu 18及以上系统。通过检查HTTP端口状态确认服务器运行正常,为后续客户端软件安装做准备。
50 0
NVIDIA Triton系列05-安装服务器软件
|
2月前
|
存储 网络协议 Linux
AWS实操-EC2-创建购买linux(centos)EC2服务器
AWS实操-EC2-创建购买linux(centos)EC2服务器
|
2月前
|
弹性计算 应用服务中间件 网络安全
ECS服务器使用:SSL证书安装、配置和问题定位指南
本文简要介绍了SSL证书的生成与部署方法,包括使用OpenSSL生成自签名证书和从CA获取证书的步骤,以及在Apache和Nginx服务器上的配置方法。此外,还提供了测试证书是否生效的方法和常见问题的解决策略,帮助确保证书正确安装并解决调试过程中可能遇到的问题。
166 0
|
2月前
|
域名解析 安全 网络安全
阿里云服务器WordPress环境上安装SSL证书
阿里云服务器WordPress环境上安装SSL证书
|
2月前
|
弹性计算 关系型数据库 MySQL
CentOS 7.x操作系统的ECS云服务器上搭建WordPress网站
CentOS 7.x操作系统的ECS云服务器上搭建WordPress网站
|
7月前
|
缓存 关系型数据库 MySQL
百度搜索:蓝易云【CentOS8服务器安装MySQL报错:no match mysql-community-server】
现在,你已经成功安装了MySQL服务器并解决了"no match mysql-community-server"的报错问题。祝你使用愉快!
104 1