安装 Beats (本地及 Docker)-Elastic Stack 实战手册

本文涉及的产品
检索分析服务 Elasticsearch 版,2核4GB开发者规格 1个月
简介: Beats 是轻量级(资源高效,无依赖性,小型)和开放源代码日志发送程序的集合,这些日志发送程序充当安装在基础结构中不同服务器上的代理,用于收集日志或指标(Metrics)。这些可以是日志文件(Filebeat),网络数据(Packetbeat),服务器指标(Metricbeat)或 Elastic 和社区开发的越来越多的 Beats 可以收集的任何其他类型的数据。 收集后,数据将直接发送到 Elasticsearch 或 Logstash 中进行其他处理。Beats 建立在名为 libbeat 的 Go 框架之上,该框架用于数据转发,这意味着社区一直在开发和贡献新的 Beats。

970X90.png

· 更多精彩内容,请下载阅读全本《Elastic Stack实战手册》

· 加入创作人行列,一起交流碰撞,参与技术圈年度盛事吧

创作人:冯江涛
审稿人:刘帅

Beats 是轻量级(资源高效,无依赖性,小型)和开放源代码日志发送程序的集合,这些日志发送程序充当安装在基础结构中不同服务器上的代理,用于收集日志或指标(Metrics)。这些可以是日志文件(Filebeat),网络数据(Packetbeat),服务器指标(Metricbeat)或 Elastic 和社区开发的越来越多的 Beats 可以收集的任何其他类型的数据。 收集后,数据将直接发送到 Elasticsearch 或 Logstash 中进行其他处理。Beats 建立在名为 libbeat 的 Go 框架之上,该框架用于数据转发,这意味着社区一直在开发和贡献新的 Beats。

Elastic Beats

6.png

环境准备

作为 Elastic Stack 的补充,在使用 Beats 之前,需要已安装好 Elasticearch 和 Kibana。Elasticsearch 用来存储,分析和检索数据,而 Kibana 作为可视化,监控和管理端。

接下来将基于 Elastic Stack 7.1.0 版本为基础,以 Metricbeat 组件为例,其他 Beats 组件使用方法类似。在安装 Beats 时,需要注意的一点是 Beats 的版本要和 Elasticsearch 及 Kibana 的版本一致,或至少是大版本是一致的。

Beats 组件的下载和安装

根据不同操作系统,选择合适的安装包。下面以 Elastic Stack 7.10 为例来展示 Metricbeat 的安装过程。如果你想安装其它版本的 Metricbeat,请替换命令行中的版本 7.10.0,然后按照同样的方法来进行安装。

deb:

curl -L -O https://artifacts.elastic.co/downloads/beats/metricbeat/metricbeat-7.10.0-amd64.deb
sudo dpkg -i metricbeat-7.10.0-amd64.deb

rpm:

curl -L -O https://artifacts.elastic.co/downloads/beats/metricbeat/metricbeat-7.10.0-x86_64.rpm
sudo rpm -vi metricbeat-7.10.0-x86_64.rpm

mac:

curl -L -O https://artifacts.elastic.co/downloads/beats/metricbeat/metricbeat-7.10.0-darwin-x86_64.tar.gz
tar xzvf metricbeat-7.10.0-darwin-x86_64.tar.gz

brew:

brew tap elastic/tap
brew install elastic/tap/metricbeat-full

linux:

curl -L -O https://artifacts.elastic.co/downloads/beats/metricbeat/metricbeat-7.10.0-linux-x86_64.tar.gz
tar xzvf metricbeat-7.10.0-linux-x86_64.tar.gz

win:

# 1.进入目录
> cd C:\Program Files\Metricbeat
# 2.安装Metricbeat为Windows服务
> .\install-service-metricbeat.ps1
更多 Beats 组件可以前往下载页面 Beats Downloadhttps://www.elastic.co/cn/downloads/beats

基础配置

进入解压后的 Metricbeat 目录可以看到,安装目录的根目录下如下文件及文件夹:

$ ls -l
fields.yml
kibana
LICENSE.txt
metricbeat
# 完整的配置文件模板
metricbeat.reference.yml
# 默认的配置文件
metricbeat.yml
module
modules.d
NOTICE.txt
README.md

我们只修改使用 metricbeat.yml 这个配置文件

如果你的 Elasticsearch 和 Kibana 都安装在同一台主机上,并配置了默认的端口,可以跳过此步骤不修改配置,Metricbeat 默认指定了 localhost。

output.elasticsearch:
  hosts: ["localhost:9200"]
  # 如果ElasticSearch启用了认证需要配置账号密码
  username: "YOUR_ACCOUNT"
  password: "YOUR_PASSWORD"
setup.kibana:
  host: "localhost:5601"
  # 如果kibana启用了认证需要配置账号密码
  username: "YOUR_ACCOUNT"
  password: "YOUR_PASSWORD"

配置 Metricbeat,指定运行的模块。

# 查看所有支持的模块
./metricbeat modules list
# 打开 system 模块
./metricbeat modules enable system

设置初始化环境,在此之前确保 Elasticsearch 和 Kibana 已经正常运行

./metricbeat setup -e

上面的命令输出为:

./metricbeat setup
Overwriting ILM policy is disabled. Set `setup.ilm.overwrite: true` for enabling.

Index setup finished.
Loading dashboards (Kibana must be running and reachable)

如上所示

在 setup 这个过程中,它将为 Beat 生成相应的 Dashboard,Index patterns,Index template, 索引生命周期管理策略以及相应的 Ingest pipeline。这个命令的运行时间比较长。需要耐心等待。上面的命令针对一个 Beat 来说,只需要运行一次就可以了。

启动 Beats

Metricbeat 启动后会发送 system metrics 数据到 Elasticsearch。

./metricbeat -e

是不是觉得记忆上面的安装步骤很麻烦啊?在 Kibana 中,Elastic 已经为我们如何添加数据做了详细的描述,而且安装后的版本一定是和你安装的 Elasticsearch 及 Kibana 的版本是一样的。

具体的操作步骤如下:

1.png

2.png

在上面显示了如下安装各种 Metrics 的具体步骤。以 System metrics 为例,在上面的页面中向下滚动:

3.png

4.png

在上面,我们选择所需要的操作系统。再接着按照上面的安装步骤一步一步向下走。我们就可以完成所需要的 Beat 的安装。

检查收集到的数据

我们首先打开 Kibana,并启动 Dashboard:

5.png

6.png

在上面,我们搜索 metricbeat system,我们就可以发现已经预置的 Dashboard。

我们选择 [Metricbeat System] Overview ECS:

7.png

点击 Host Overview 可以查看 Metrics 的详情:

8.png

Docker 方式安装

拉取镜像

docker pull docker.elastic.co/beats/metricbeat:7.10.0

启动 Docker 版 Metricbeat

通过 -E 设置 Elasticsearch 和 Kibana 的地址及其他参数(如果有必要)。

注意:如果是本机安装的服务,Docker 是无法通过 localhost 连接到 Elasticsearch 和 Kibana 的,可以通过增加参数 docker run --net=host,让 Docker 可以访问到宿主机的 hostname,或者可以通过 ip addr show docker0 查看 docker 的网关地址来访问宿主机。

docker run --net=host \
docker.elastic.co/beats/metricbeat:7.10.0 \
setup -E setup.kibana.host=elastichost:5601 \
-E output.elasticsearch.hosts=["elastichost:9200"] 
创作人简介:
冯江涛,关注大数据相关技术栈,擅长 HDFS、Elasticsearch 存储相关,Spark、
Flink 计算相关,以及大数据中台的开发。 Talk is cheap. Show me the code.
相关实践学习
使用阿里云Elasticsearch体验信息检索加速
通过创建登录阿里云Elasticsearch集群,使用DataWorks将MySQL数据同步至Elasticsearch,体验多条件检索效果,简单展示数据同步和信息检索加速的过程和操作。
ElasticSearch 入门精讲
ElasticSearch是一个开源的、基于Lucene的、分布式、高扩展、高实时的搜索与数据分析引擎。根据DB-Engines的排名显示,Elasticsearch是最受欢迎的企业搜索引擎,其次是Apache Solr(也是基于Lucene)。 ElasticSearch的实现原理主要分为以下几个步骤: 用户将数据提交到Elastic Search 数据库中 通过分词控制器去将对应的语句分词,将其权重和分词结果一并存入数据 当用户搜索数据时候,再根据权重将结果排名、打分 将返回结果呈现给用户 Elasticsearch可以用于搜索各种文档。它提供可扩展的搜索,具有接近实时的搜索,并支持多租户。
相关文章
|
25天前
|
SQL 关系型数据库 数据库
国产数据实战之docker部署MyWebSQL数据库管理工具
【10月更文挑战第23天】国产数据实战之docker部署MyWebSQL数据库管理工具
84 4
国产数据实战之docker部署MyWebSQL数据库管理工具
|
13天前
|
应用服务中间件 nginx Docker
Docker Swarm、Docker Stack和Portainer的使用
Docker Swarm、Docker Stack 和 Portainer 各有其独特的功能和优势。Docker Swarm 适用于分布式服务的管理和编排,Docker Stack 便于多容器应用的定义和部署,而 Portainer 提供了直观的 UI,简化了 Docker 环境的管理。结合使用这些工具,可以大大提高容器化应用的部署和管理效率。希望本文对您理解和应用这些工具有所帮助。
28 5
|
1月前
|
关系型数据库 MySQL Linux
Docker安装Mysql5.7,解决无法访问DockerHub问题
当 Docker Hub 无法访问时,可以通过配置国内镜像加速来解决应用安装失败和镜像拉取超时的问题。本文介绍了如何在 CentOS 上一键配置国内镜像加速,并成功拉取 MySQL 5.7 镜像。
353 2
Docker安装Mysql5.7,解决无法访问DockerHub问题
|
2天前
|
JavaScript Linux 持续交付
深入探索容器化技术——Docker 的实战应用
深入探索容器化技术——Docker 的实战应用
17 0
|
25天前
|
Prometheus 监控 Cloud Native
基于Docker安装Grafana和Prometheus
Grafana 是一款用 Go 语言开发的开源数据可视化工具,支持数据监控和统计,并具备告警功能。通过 Docker 部署 Grafana 和 Prometheus,可实现系统数据的采集、展示和告警。默认登录用户名和密码均为 admin。配置 Prometheus 数据源后,可导入主机监控模板(ID 8919)进行数据展示。
63 2
|
27天前
|
消息中间件 Linux RocketMQ
在Red Hat Enterprise Linux 9上使用Docker快速安装并部署
通过以上步骤,你可以在Red Hat Enterprise Linux 9上使用Docker快速安装并部署RocketMQ。这种方法不仅简化了安装过程,还提供了一个灵活的环境来管理和扩展消息队列系统。RocketMQ作为一款高性能的分布式消息系统,通过Docker可以实现快速部署和高效管理。
56 2
|
28天前
|
消息中间件 Linux RocketMQ
在Red Hat Enterprise Linux 9上使用Docker快速安装并部署
通过以上步骤,你可以在Red Hat Enterprise Linux 9上使用Docker快速安装并部署RocketMQ。这种方法不仅简化了安装过程,还提供了一个灵活的环境来管理和扩展消息队列系统。RocketMQ作为一款高性能的分布式消息系统,通过Docker可以实现快速部署和高效管理。
34 3
|
1月前
|
关系型数据库 MySQL Linux
基于阿里云服务器Linux系统安装Docker完整图文教程(附部署开源项目)
基于阿里云服务器Linux系统安装Docker完整图文教程(附部署开源项目)
268 3
|
15天前
|
Docker 容器
【赵渝强老师】使用二进制包方式安装Docker
本文介绍了在企业生产环境中无法直接访问外网时,如何使用Docker官方提供的二进制包进行Docker的离线安装。文章详细列出了从安装wget、下载Docker安装包、解压、复制命令到启动Docker服务的具体步骤,并提供了相关命令和示例图片。最后,还介绍了如何设置Docker为开机自启模式。
|
15天前
|
缓存 Ubuntu Linux
如何安装Docker
如何安装Docker
97 0
下一篇
无影云桌面