Elastic Stack 可无限配置,适用于涉及收集、搜索和分析数据的任何用例。为了便于启动和运行,我们可以使用模块快速实现预配置的管道。在本简短教程中,我们将使用 System 模块从 Kibana 中收集日志事件,/var/log/secure
然后/var/log/auth.log
通过模块创建的仪表板分析日志事件。为了进行演示,我将在A Cloud Guru Cloud Playground上使用 t2.medium EC2 实例。如果您不是 Linux Academy 订阅者,请随意使用您自己的云服务器或虚拟机。您只需要一台具有 1 个 CPU 和 4 GB 内存的 CentOS 7 主机。否则,服务器已为您预先配置![caption id="attachment_11242" align="aligncenter" width="525"] Linux Academy Cloud Playground[/caption]
Elasticsearch
首先,我们需要安装 Elasticsearch 的唯一先决条件,即 Java JDK。我将使用 OpenJDK,特别是以下软件包java-1.8.0-openjdk
:
sudo yum install java-1.8.0-openjdk -y
现在我们可以安装 Elasticsearch。我将通过 RPM 安装,因此首先让我们导入 Elastic 的 GPG 密钥:
sudo rpm --import https://artifacts.elastic.co/GPG-KEY-elasticsearch
现在我们可以下载并安装 Elasticsearch RPM:
curl -O https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.4.2.rpmsudo rpm --install elasticsearch-6.4.2.rpmsudo systemctl daemon-reload elasticsearch
让我们启用 Elasticsearch 服务以便它在重启后启动,然后启动 Elasticsearch:
sudo systemctl 启用 elasticsearchsudo systemctl 启动 elasticsearch
Filebeat 系统模块创建的采集管道使用 GeoIP 处理器来查找日志事件中找到的 IP 地址的地理信息。要实现此功能,我们首先需要将其安装为 Elasticsearch 的插件:
sudo /usr/share/elasticsearch/bin/elasticsearch-plugin 安装 ingest-geoip
现在我们需要重新启动 Elasticsearch 以便它识别新的插件:
sudo systemctl 重新启动 elasticsearch
基巴纳
我们已经导入了 Elastic GPG 密钥,因此让我们下载并安装 Kibana RPM:
curl -O https://artifacts.elastic.co/downloads/kibana/kibana-6.4.2-x86_64.rpm sudo rpm --安装kibana - 6.4.2 - x86_64.rpm
现在我们可以启动并启用 Kibana 服务:
sudo systemctl 启用 kibanasudo systemctl 启动 kibana
由于 Kibana 和 Elasticsearch 都具有针对单节点部署的合理默认值,因此我们不需要对任一服务进行任何配置更改。
Filebeat
现在我们可以安装将收集日志的客户端 Filebeat。同样,因为我们已经导入了 Elastic GPG 密钥,所以我们可以下载并安装 Filebeat RPM:
curl -O https://artifacts.elastic.co/downloads/beats/filebeat/filebeat-6.4.2-x86_64.rpm sudo rpm --install filebeat - 6.4.2 - x86_64.rpm
我们希望将日志事件与 UTC 时间戳一起存储在 Elasticsearch 中。这样,Kibana 就可以简单地从 UTC 转换为浏览器在请求时所处的时区。要启用此转换,让我们在和部分/etc/filebeat/modules.d/system.yml.disabled
中取消注释并启用以下变量:
syslog
auth
var.convert_timezone: true
现在我们可以启用系统模块并将模块资产推送到 Elasticsearch 和 Kibana:
sudo filebeat 模块启用系统 sudo filebeat 设置
最后,我们可以启用并启动 Filebeat 服务来开始收集我们的系统日志事件:
sudo systemctl 启用 filebeatsudo systemctl 启动 filebeat
分析
默认情况下,Kibana 监听localhost:5601
。因此,为了在本地 Web 浏览器中浏览 Kibana,让我们使用 SSH 通过端口转发登录到我们的主机:
ssh 用户名@主机名或 ip -L 5601:localhost:5601
现在,我们可以https://localhost:5601
在本地 Web 浏览器中导航到 Kibana 的远程实例。从 Kibana 的侧面导航窗格中,选择“仪表板”并搜索“系统”以查看所有系统模块仪表板。更进一步,您可以通过将主机暴露在互联网上来创建自己的蜜罐,以收集更多日志事件进行分析。 [caption id="attachment_11237" align="aligncenter" width="525"] Syslog 仪表板[/caption] [caption id="attachment_11238" align="aligncenter" width="525"] Sudo 命令仪表板[/caption] [caption id="attachment_11239" align="aligncenter" width="525"] SSH 登录仪表板[/caption] [caption id="attachment_11240" align="aligncenter" width="525"]新用户和组仪表板[/caption]
想要了解更多?
从创建漂亮的可视化到管理 Elastic Stack,Kibana markdown 可视化可帮助您充分利用数据。在A Cloud Guru,我们为 Elastic 产品提供大量精彩的学习内容。通过 Elastic Stack Essentials 课程简要了解 Elastic Stack 中的所有产品。或者通过 Elasticsearch Deep Dive 课程了解 Elastic Stack 的核心 Elasticsearch。当您准备好时,通过我们最新的认证准备课程成为 Elastic 认证工程师,证明您对 Elastic Stack 的掌握。所有这些课程都包含动手实验和课程,您可以跟着使用您自己的 A Cloud Guru 云服务器。所以您还在等什么?让我们开始使用 Elastic![caption id="attachment_11241" align="aligncenter" width="525"] Elastic Stack 生态系统[/caption]
请先 登录后发表评论 ~