av一区二区在线观看_亚洲男人的天堂网站_日韩亚洲视频_在线成人免费_欧美日韩精品免费观看视频_久草视

您的位置:首頁技術(shù)文章
文章詳情頁

Apache SkyWalking 監(jiān)控 MySQL Server 實(shí)戰(zhàn)解析

瀏覽:91日期:2023-03-07 14:40:48
目錄
  • 正文
  • 監(jiān)控 MySQL Server
  • 安裝過程
  • docker compose 部署

正文

Apache SkyWalking 在本月初發(fā)布了 SkyWalking Backend、UI 的 9.2.0 版本 以及 SkyWalking Java Agent 8.12.0 版本,其中就有筆者貢獻(xiàn)的 hutool-http client 5.x 插件,以后大家通過 hutool 工具發(fā)送的 http 請(qǐng)求也可以出現(xiàn)在分布式鏈路中了。

另外,社區(qū)宣布計(jì)劃在 2022 年 11 月 30 日結(jié)束所有 v8 版本,v9 可以在生產(chǎn)環(huán)境中提供穩(wěn)定和更高性能的 APM,具體聲明見 SkyWalking 官網(wǎng)。

了解 SkyWalking 的朋友都知道,它可以監(jiān)控我們的應(yīng)用程序中執(zhí)行的 SQL語句,監(jiān)控到的 SQL 大概像下圖這樣,看起來是不是很酷!

監(jiān)控 MySQL Server

上面展示的是在 MySQL 客戶端層面的監(jiān)控,那如果想要監(jiān)控 MySQL Server 該怎么做呢,SkyWalking 發(fā)布的 9.2.0 版本升級(jí)了許多內(nèi)容,其中一項(xiàng)就是開始支持 MySQL Server Monitoring。

SkyWalking 是如何監(jiān)控 MySQL Server 程序的呢,SkyWalking 社區(qū)并沒有重復(fù)造輪子,而是利用了已有的開源實(shí)現(xiàn)來采集 MySQL Server 的 metrics 數(shù)據(jù),并將 metrics 發(fā)送到 SkyWalking OAP,由 MAL 引擎去分析、計(jì)算、聚合和存儲(chǔ),具體流程如下:

1)mysqld_exporter 從 MySQL Server 收集 metrics 數(shù)據(jù);

2)OpenTelemetry Collector 通過 Prometheus Receiver 從 mysqld_exporter 抓取 metrics 數(shù)據(jù);

3)OpenTelemetry Collector 通過 OpenCensus gRPC Exporter 或 OpenTelemetry gRPC exporter 將 metrics 數(shù)據(jù) 發(fā)送給 SkyWalking OAP Server;

4)SkyWalking OAP Server 使用 MAL引擎解析表達(dá)式,并對(duì) metrics 數(shù)據(jù)進(jìn)行過濾、計(jì)算、聚合并存儲(chǔ)結(jié)果。

其中,mysqld_exporter 是 Prometheus 提供的用于收集 MySQL Server 的metrics 數(shù)據(jù),OpenTelemetry Collector 是 OpenTelemetry 提供的用于收集 telemetry 數(shù)據(jù),它提供了與廠商無關(guān)的實(shí)現(xiàn),用于接收、處理與導(dǎo)出 telemetry 數(shù)據(jù)。

安裝過程

這里假設(shè)我們已經(jīng)部署了 MySQL Server 以及 SkyWalking,現(xiàn)在想要在 SkyWalking 中監(jiān)控 MySQL Server,我們這里準(zhǔn)備一臺(tái)機(jī)器(192.168.56.102),這臺(tái)機(jī)器筆者已經(jīng)提前安裝好了 Docker,接下來我們就在這臺(tái)機(jī)器上安裝 mysqld_exporter 和 OpenTelemetry Collector 。

首先我們需要?jiǎng)?chuàng)建一個(gè) MySQL 用戶并授權(quán),用于 mysqld_exporter 收集 metrics 使用,操作如下:

create user "mysql_exporter"@"%" identified by "mysql_exporter";GRANT PROCESS, REPLICATION CLIENT, SELECT ON *.* TO "mysql_exporter"@"%" WITH MAX_USER_CONNECTIONS 3;flush privileges;

準(zhǔn)備 OpenTelemetry Collector 組件的配置文件 otel-collector-config.yaml

receivers:  prometheus:    config:     scrape_configs:       - job_name: "mysql-monitoring" scrape_interval: 5s static_configs:   - targets: ["mysqld-exporter:9104"]     labels:       host_name: showcaseprocessors:  batch:exporters:  otlp:    endpoint: SkyWalking OAP 地址:11800    tls:      insecure: trueservice:  pipelines:    metrics:      receivers:      - prometheus      processors:      - batch      exporters:      - otlp

對(duì)以上配置做個(gè)簡(jiǎn)要說明:

1)receivers 用于配置 Collector 的數(shù)據(jù)來源,這里是從 prometheus 的 mysqld_exporter 抓取數(shù)據(jù);

2)exporters 用于配置要將接收到的數(shù)據(jù)發(fā)送到哪里,這里是發(fā)送到 SkyWalking OAP ;

3)processors 指定如何處理接收到的數(shù)據(jù);

4)service 配置將整個(gè) pipelines 串起來。

docker compose 部署

我們這里使用 docker compose 部署,docker-compose.yml 完整配置如下:

version: "3.8"services:  mysqld-exporter:    image: prom/mysqld-exporter:v0.14.0    container_name: mysqld-exporter    ports:      - 9104:9104    environment:      - DATA_SOURCE_NAME=mysql_exporter:mysql_exporter@(mysql地址:3306)/      - TZ=Asia/Shanghai  otel-collector:    image: otel/opentelemetry-collector:0.50.0    container_name: otel-collector    command: [ "--config=/etc/otel-collector-config.yaml" ]    volumes:      - /opt/data/otel-collector-config.yaml:/etc/otel-collector-config.yaml    expose:      - 55678

將 docker-compose.yml 和otel-collector-config.yaml 配置文件上傳到服務(wù)器并放到 /data/opt/ 目錄下,執(zhí)行 docker compose up -d 即可啟動(dòng) mysqld-exporter 和 otel-collector 服務(wù)。

啟動(dòng)完成之后,我們可以通過訪問 mysqld-exporter 服務(wù)http://192.168.56.102:9104/metrics 查看 mysqld-exporter 采集了 MySQL 的哪些 metrics 數(shù)據(jù),比如下圖中的 mysql_global_status_uptime 指標(biāo)表示 MySQL Server 啟動(dòng)了多長(zhǎng)時(shí)間,單位是秒。

mysqld-exporter 和 otel-collector 服務(wù)能正常采集數(shù)據(jù)之后,我們可以訪問 SkyWalking UI,可以查看到 MySQL Sever 端的監(jiān)控信息了。

圖中每一項(xiàng)指標(biāo)的具體含義大家可以訪問官網(wǎng)查看,這里就不一一贅述了 skywalking.apache.org/docs/main/v…

剛剛演示的 SkyWalking 中 MySQL Server 的監(jiān)控功能是一名大三學(xué)生貢獻(xiàn)的!,具體貢獻(xiàn)過程可以看下issue 鏈接 github.com/apache/skyw… 。之前看到過一句話,對(duì)技術(shù)有追求的開發(fā)者都應(yīng)該去參與開源項(xiàng)目。

相關(guān)鏈接

  • github.com/prometheus/…
  • opentelemetry.io/docs/concep…
  • skywalking.apache.org/docs/main/v…

以上就是Apache SkyWalking 監(jiān)控 MySQL Server 實(shí)戰(zhàn)解析的詳細(xì)內(nèi)容,更多關(guān)于Apache SkyWalking監(jiān)控MySQL的資料請(qǐng)關(guān)注其它相關(guān)文章!

標(biāo)簽: Linux Apache
主站蜘蛛池模板: 午夜丰满少妇一级毛片 | 成人精品国产一区二区4080 | 日本三级线观看 视频 | 91精品国产91久久久久久最新 | 午夜电影日韩 | 亚洲福利一区 | av国产精品 | 黑人巨大精品欧美黑白配亚洲 | 一级做a| 日韩和的一区二区 | 国产亚洲精品精品国产亚洲综合 | 成人av色| 成人免费av| 天天操网 | h视频在线观看免费 | 青青草综合网 | 久久视频一区 | 二区在线视频 | 亚洲97| 国产香蕉视频在线播放 | 国产福利在线看 | 做a网站 | 国产精品国产a级 | av大片在线观看 | jav成人av免费播放 | 日韩精品一区二区三区视频播放 | 国产精品久久久久久久午夜片 | 国产午夜精品一区二区三区四区 | 亚洲一区视频 | 欧美成人精品 | 蜜桃五月天 | 亚洲精品电影在线观看 | 国产一区欧美 | 性网址| 欧美综合自拍 | 久久一区精品 | 日韩欧美专区 | 中文字幕一区在线 | 精品国产区 | 91佛爷在线观看 | 看毛片的网站 |