Metricbeat 採集 Docker 指標

2021-10-25 00:01:28 字數 1833 閱讀 2963

dokcer本身命令列介面去管理集群內的資源物件,例如有需求想檢視某一些容器在任意的時間段效能的使用情況,如何通過 elastic stack 進行一站式的資料採集,資料清洗,資料落地,資料視覺化,讓資料發揮真正的價值呢?

架構設計

涉及到 elastic stack 中 metricbeat 是用於採集 docker 相關的效能指標, elasticsearch 是用於對於資料落地儲存和搜尋的引擎, kibana 是用於對資料視覺化的工具。

通過將宿主機的 docker 套接字對映到 metricbeat 中進行資料的採集。

實施方法

以 docker 環境下為例

metricbeat

啟動 metricbeat 容器

docker run -d --name metricbeat --user=root -v /var/run/docker.sock:/var/run/docker.sock elastic/metricbeat:7.9.2

進入容器修改配置

docker exec -it metricbeat /bin/bash

修改配置,新增 elasticsearch 和 kibana 的主機

vi metricbeat.yml

metricbeat.config.modules

:path

: $/modules.d/*.yml

reload.enabled

:false

processors:-

add_cloud_metadata:~

-add_docker_metadata:~

output.elasticsearch

:hosts

:'elasticsearch:9200'

username

:'elastic'

password

:'***'

setup.kibana

:host

:"kibana:5601"

啟用 nginx 採集模組

metricbeat modules enable docker

編輯 nginx 採集配置

vi modules.d/docker.yml

-

module

: docker

metricsets

:- container

- cpu

- diskio

- event

- healthcheck

- info

- memory

- network

period

: 10s

hosts:[

"unix:///var/run/docker.sock"

]

設定 metricbeat 建立 kibana上的 index pattern 和 dashboard

metricbeat setup

重啟 metricbeat 生效配置

docker restart metricbeat

視覺化展示

通過 kibana 中的 dashboard 功能

展示目前 docker 的容器等相關資源物件資訊

Metricbeat 採集 Nginx 指標

nginx 狀態頁可用於分析目前的服務健康狀態和負載,如何通過 elastic stack 進行一站式的資料採集,資料清洗,資料落地,資料視覺化,讓資料發揮真正的價值呢?架構設計 涉及到 elastic stack 中 metricbeat 是用於採集 nginx 相關的效能指標,elasticse...

Metricbeat環境搭建

將檔案包上傳到伺服器中 解壓tar xvf metricbeat 6.5.4 linux x86 64.tar.gz進入metricbeat 6.5.4 linux x86 64中,修改metricbeat.yml 設定在elasticsearch中分片的數量 index.number of sha...

metricbeat7 1 模板字段自己設定

1.metricbeat 字段模板定義在fields.yml 在metricbeat.yml檔案中新增,字段模板定義 setup.template.fields fields.yml 備份乙份fields.yml,現在可以修改fields.yml,刪除一些不需要用到的,如redis 等。開始安裝使用...