日日操夜夜添-日日操影院-日日草夜夜操-日日干干-精品一区二区三区波多野结衣-精品一区二区三区高清免费不卡

公告:魔扣目錄網(wǎng)為廣大站長(zhǎng)提供免費(fèi)收錄網(wǎng)站服務(wù),提交前請(qǐng)做好本站友鏈:【 網(wǎng)站目錄:http://www.ylptlb.cn 】, 免友鏈快審服務(wù)(50元/站),

點(diǎn)擊這里在線咨詢客服
新站提交
  • 網(wǎng)站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會(huì)員:747

目錄
  • 正文
  • 監(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 大概像下圖這樣,看起來是不是很酷!

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

監(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ǔ),具體流程如下:

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

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: showcase
processors:
  batch:
exporters:
  otlp:
    endpoint: SkyWalking OAP 地址:11800
    tls:
      insecure: true
service:
  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í)間,單位是秒。

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

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

Apache?SkyWalking?監(jiān)控?MySQL?Server?實(shí)戰(zhà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)簽:apache 實(shí)戰(zhàn) 服務(wù)器 監(jiān)控 解析
用戶無頭像

網(wǎng)友整理

注冊(cè)時(shí)間:

網(wǎng)站:5 個(gè)   小程序:0 個(gè)  文章:12 篇

  • 51998

    網(wǎng)站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會(huì)員

趕快注冊(cè)賬號(hào),推廣您的網(wǎng)站吧!
最新入駐小程序

數(shù)獨(dú)大挑戰(zhàn)2018-06-03

數(shù)獨(dú)一種數(shù)學(xué)游戲,玩家需要根據(jù)9

答題星2018-06-03

您可以通過答題星輕松地創(chuàng)建試卷

全階人生考試2018-06-03

各種考試題,題庫,初中,高中,大學(xué)四六

運(yùn)動(dòng)步數(shù)有氧達(dá)人2018-06-03

記錄運(yùn)動(dòng)步數(shù),積累氧氣值。還可偷

每日養(yǎng)生app2018-06-03

每日養(yǎng)生,天天健康

體育訓(xùn)練成績(jī)?cè)u(píng)定2018-06-03

通用課目體育訓(xùn)練成績(jī)?cè)u(píng)定