1. <small id="7qjag"></small>
    <small id="7qjag"></small>

  2. <p id="7qjag"></p>

    麻豆精品一卡二卡三卡 ,国产成人久久av免费高潮,热久久视久久精品18,成人无码看片在线观看免费 ,玩弄少妇肉体到高潮动态图,国产精品久久久久久影视不卡,国产成人无码免费看片软件,免费人成激情视频在线观看冫

    統一觀測|借助 Prometheus 監控 ClickHouse 數據庫

    來源: 博客園2023-08-02 09:19:18
      

    引言

    ClickHouse 作為用于聯機分析(OLAP)的列式數據庫管理系統(DBMS), 最核心的特點是極致壓縮率和極速查詢性能。同時,ClickHouse 支持 SQL 查詢,在基于大寬表的聚合分析查詢場景下展現出優異的性能。因此,獲得了廣泛的應用。本文旨在分享阿里云可觀測監控 Prometheus 版對開源 ClickHouse 的監控實踐。

    一、ClickHouse 簡介

    (一)技術特點

    • 列式存儲與數據壓縮:

    在執行數據查詢時,列式存儲可以減少數據掃描范圍和數據傳輸大小,提高數據查詢的效率。

    • 完備的 DBMS 功能
      • DDL (數據定義語言):可以動態地創建、修改或刪除數據庫、表和視圖,而無須重啟服務;
      • DML(數據操作語言):可以動態查詢、插入、修改或刪除數據。
    • 權限控制:

    可按照用戶粒度設置數據庫或表的操作權限,保障數據安全性。


    (資料圖)

    • 數據備份與恢復

    提供數據備份導出與導入恢復機制,滿足生產環境要求。

    • 分布式管理

    提供集群模式,自動管理多個數據庫節點。

    (二)ClickHouse 典型適用場景

    • 復雜查詢聚合的 OLAP 場景;
    • 需要支持穩定大量數據寫入;
    • 不需要高頻查詢;
    • 不需要高級 DBMS 功能,如事務性;不需要經常很復雜的表間操作,比如 join 操作。

    (三)ClickHouse 核心概念

    • ClickHouse 集群(Cluster)

    在物理構成上,ClickHouse 集群是由多個 ClickHouse Server 實例組成的分布式數據庫。這些 ClickHouse Server 根據規格的不同可以包含 1 個或多個副本(Replica)、1 個或多個分片(Shard)。在邏輯構成上,一個ClickHouse 集群可以包含多個數據庫(Database)對象。

    • 分片(Shard)

    在超大規模海量數據處理場景下,單臺服務器的存儲、計算資源會成為瓶頸。為了進一步提高效率,ClickHouse 將海量數據分散存儲到多臺服務器上,每臺服務器只存儲和處理海量數據的一部分,在這種架構下,每臺服務器被稱為一個分片(Shard)。

    • 副本(Replica)

    為了在異常情況下保證數據的安全性和服務的高可用性,ClickHouse 提供副本機制,將單臺服務器的數據冗余存儲在2臺或多臺服務器上。

    • 數據庫(Database)

    數據庫是云數據庫 ClickHouse 集群中的最高級別對象,內部包含表(Table)、列(Column)、視圖(View)、函數、數據類型等。

    • 表(Table)

    表是數據的組織形式,由多行、多列構成。

    二、ClickHouse Metrics 監控參考模型

    我們從 Metrics 采集、監控大盤、告警規則等三個方面定義 ClickHouse Metrics 監控的參考模型,以便實現監控閉環。

    (一)Metrics 采集

    • 主機節點監控即硬件資源(Node-Exporter)
      • 處理器、內存負載;
      • 磁盤存儲;
    • ClickHouse 服務指標監控(集成進 ClickHouse-Exporter)
      • 系統指標(metrics): system.metrics 表用于統計 ClickHouse 服務在運行時,當前正在執行的高層次的概要信息,包括了正在執行的查詢總次數、正在發生的合并操作總次數等。具體指標通過執行select * from system.metrics
      • 系統事件(events):system.events 用于統計 ClickHouse 服務在運行過程中已經執行過的高層次的 累積概要信息,包括查詢總次數、 SELECT 查詢總次數等,具體指標通過執行查詢select * from system.events--> 64個指標;
      • 系統異步指標(asynchronous_ metrics):asynchronous_metrics 用于統計 ClickHouse 服務運行過程時,當前正在后臺 異步運行的高層次的概要信息,包括當前分配的內存、執行隊列中的任務數量等。 具體指標通過執行查詢select * from system.asynchronous_metrics--> 500個指標;
      • 查詢日志:查詢日志目前主要有6種類型,所有查詢日志在默認配置下都是關閉狀態,需要在 config.xml文件配置,開啟日志后可以到對應的日志表進行日志查詢system.query_log

    (1)主機節點監控

    該部分指標主要來源于 Node-Exporter , 提供集群/ ECS 節點 CPU、內存、磁盤、inode 等監控指標。

    (2)ClikcHouse 服務指標

    ClikckHouse 內置 Metrics、events 和 asynchronous_metrics 三張系統表用于存放其監控指標,通過預先安裝 clickhouse-exporter 將這三張系統表中的數據轉化、發送給阿里云可觀測監控 Prometheus 版。

    ??注意: 以上列出的為關鍵指標,更多詳細指標詳見: 應用實時監控服務ARMS控制臺-Prometheus監控-Prometheus實例列表-選擇實例-集成中心-ClickHouse

    (二)ClickHouse 監控大盤

    我們默認提供了arms-clickhouse-ecsarms-clickhouse-k8s兩個大盤,分別針對 ClickHouse 安裝在ACK 集群/ ECS 中兩個場景,這兩個大盤中圖標均來自于上述 Metrics 指標。

    ??注意: 主機節點監控需提前安裝 Node-Exporter,以下大盤圖示數值僅為展示作用,不具備參考價值,實際數值依 ClickHouse 環境而定

    (1)主機節點指標

    (2)ClickHouse Server指標

    (3)MergeTree 指標

    (4)消息隊列指標

    (三)告警規則

    參考前面對各項主要指標介紹,針對 ClickHouse 可以重點配置以下告警項,這些告警項已內置到arms-clickhouse告警規則中,可依據自身業務情況及經驗調整告警閾值:

    • 【L0】CPU 超過 90%
    • 【L0】Mem 超過 90%
    • 【L0】Disk 超過 90%
    • 【L0】Inode 使用率超過 90%
    • 【L0】寫入失敗率超過 5%
    • 【L1】運行 Query 個數超過 95
    • 【L1】連接數超過 4k
    • 【L1】失敗 Query 個數超過 10

    (四)相關實踐示例

    (1)CPU 過高

    • 確認 CPU 占用過高是由 ClickHouse 引起的。可以通過 top 命令top -H -p xxx查看系統的 CPU 占用率,找出占用 CPU 比較高的進程。如果發現 ClickHouse 進程占用了大量 CPU 資源,那么就需要進一步排查。
    • 使用 ClickHouse 內置查詢來查看系統的狀態。可以使用以下查詢:
    SHOW PROCESSLIST query WHERE query NOT LIKE "%SYSTEM%" ORDER BY elapsed DESC LIMIT 10

    這個查詢可以列出最耗時的查詢,找到可能引起 CPU 占用過高的查詢語句。

    • 檢查 ClickHouse 配置。一些配置參數可能導致 ClickHouse 占用大量 CPU 資源。可以查看 ClickHouse 配置文件,確認配置是否合理,是否需要調整。
    • 檢查 ClickHouse 日志。ClickHouse 日志中可能包含錯誤信息或警告信息,可以幫助找出問題所在。
    • 檢查硬件資源是否充足。如果系統 CPU、內存等硬件資源不足,那么 ClickHouse 可能會出現 CPU 占用過高的情況。可以檢查系統的硬件資源使用情況,確認是否需要升級硬件。
    • 升級 ClickHouse 版本。如果是 ClickHouse 版本的問題,可以考慮升級到更穩定的版本。

    (2)內存過高

    • 使用內置查詢查看內存占用情況。可以使用以下查詢來查看 ClickHouse 系統的內存占用情況:
    SELECT * FROM system.metrics WHERE metric LIKE "%memory%";

    這個查詢會列出 ClickHouse 的各個內存指標,包括總內存、已用內存、緩存內存等。可以根據這些指標來判斷內存占用是否過高。

    • 檢查 ClickHouse 的配置。一些配置參數可能會導致 ClickHouse 占用大量的內存資源。可以查看 ClickHouse 的配置文件,確認配置是否合理,是否需要調整。
    • 檢查系統的內存資源使用情況。如果系統的內存資源不足,那么 ClickHouse 可能會出現內存占用過高的情況。可以使用命令free -m查看系統的內存使用情況。
    • 檢查 ClickHouse 的日志。ClickHouse 的日志中可能包含錯誤信息或警告信息,可以幫助找出問題所在。
    • 升級 ClickHouse 版本。如果是 ClickHouse 版本的問題,可以考慮升級到更穩定的版本。
    • 減少查詢語句的數據量和計算量。如果查詢語句的數據量和計算量過大,那么 ClickHouse 可能會占用大量的內存資源。可以考慮優化查詢語句,減少數據量和計算量。

    (3)Disk 占用過高

    • 使用系統工具查看磁盤占用情況。可以使用命令 df -h來查看系統的磁盤使用情況,查看是否有磁盤空間不足的情況。
    • 檢查 ClickHouse 的配置。一些配置參數可能會導致 ClickHouse 占用大量的磁盤資源。可以查看 ClickHouse 的配置文件,確認配置是否合理,是否需要調整。
    • 使用 ClickHouse 內置的查詢來查看磁盤占用情況。可以使用以下查詢來查看 ClickHouse 的磁盤占用情況:
    SELECT database, table, sum(bytes) AS total_size FROM system.parts WHERE active GROUP BY database, table ORDER BY total_size DESC

    這個查詢會列出 ClickHouse 的各個表的占用磁盤空間情況,可以根據這個查詢來判斷磁盤占用是否過高。

    • 檢查 ClickHouse 的日志。ClickHouse 的日志中可能包含錯誤信息或警告信息,可以幫助找出問題所在。
    • 清理不必要的數據。如果 ClickHouse 中存在不必要的數據,可以考慮進行清理,釋放磁盤空間。

    三、如何使用阿里云可觀測監控 Prometheus 版監控ClickHouse 服務

    (一)安裝 Prometheus 監控

    (1)前序條件:已根據安裝ClickHouse 安裝環境,創建對應Prometheus 實例。

    根據 ClickHouse 安裝方式:

    • 如果 ClickHouse 部署在 ACK 中, 并創建了Prometheus for 容器實例,創建請參考Prometheus for 容器服務
    • 如果 ClickHouse 部署在 ECS 中, 并創建了Prometheus for ECS 實例,創建請參考Prometheus for ECS

    (2)安裝方式一:Prometheus for 容器服務

    Prometheus for 容器服務實例中,ClickHouse 已經默認在集成中心中展示,用戶可以在應用實時監控服務ARMS控制臺-Prometheus監控-Prometheus實例列表-選擇Prometheus for 容器服務實例-集成中心中找到入口,點擊 ClickHouse 圖標,可以看到常見的指標列表和大盤縮略圖。點擊+安裝可以接入 ClickHouse 監控,配置如下圖:

    • Exporter 名稱: 自定義 Exporter 名稱;
    • ClickHouse Scrape 地址: IP + Port, Exporter 能夠訪問的 ClickHouse 地址 ;
    • ClickHouse 用戶名: 登陸用戶名;
    • ClickHouse 密碼: 登陸密碼;
    • Metrics 采集間隔(秒): 默認 30s 采集一次, 一般不需要更改。

    點擊確定后, clickhouse-exporter-填入的名稱的 Exporter 會被安裝到 arms-prom 命名空間下,并自動完成采集 job 的配置。

    可以在應用實時監控服務ARMS控制臺-Prometheus監控-Prometheus實例列表-選擇Prometheus for 容器服務實例-集成中心-已安裝-ClikckHouse中快速瀏覽相關的 Target/指標/大盤/告警/服務發現/ Exporter 等信息。

    (3)安裝方式二:Prometheus for ECS

    安裝 ClickHouse 相同 VPC 的Prometheus for ECS實例,由于Prometheus for ECS實例中 ClickHouse 的主機節點監控來自于Node-Exportor,所以先安裝 Node-Exportor。用戶可以在

    應用實時監控服務ARMS控制臺-Prometheus監控-Prometheus實例列表-選擇Prometheus for ECS實例-集成中心中找到入口,點擊Node-Exporter圖標,點擊+安裝可以接入 Node-Exporter 監控,然后選擇對應 ECS 實例安裝即可。

    用戶可以在應用實時監控服務ARMS控制臺-Prometheus監控-Prometheus實例列表-選擇Prometheus for ECS實例-集成中心中找到入口,點擊 ClickHouse 圖標,點擊+安裝可以接入 ClickHouse 監控,配置與上述Prometheus for 容器服務相同。

    (4)指標未采集的排查方法

    ??注意: 下面是Prometheus for 容器實例的排查方法,Prometheus for ECS實例請聯系Prometheus值班-美娜

    ClickHouse-Exporter 本身的主要工作是指標映射,需要填入正確 ClickHouse 抓取 URL及登陸用戶名、密碼。如果出現指標采集不到的問題,可以參考如下的排查思路。

    1. 檢查 Prometheus Target 狀態,如果 Target 顯示為Unhealthy狀態,請排查clickhouse-exporterPod 運行狀態;如果 Target 狀態正常,繼續下一步。
    1. 若 Target 狀態正常,但抓取指標量很少且指標全為go_相關查看clickhouse-exporterPod 日志,確認日志中是否有報錯信息。
    1. 查看clickhouse-exporterPod 日志,確定 Exporter 抓取目標 URL 是否正常。

    (二)查看大盤

    如需要查看 ClickHouse 相關大盤,可以從應用實時監控服務ARMS控制臺-Prometheus監控-Prometheus實例列表-實例詳情頁-集成中心-已安裝-ClikckHouse中點選大盤,列出兩類大盤arms-clickhouse-ecsarms-clickhouse-k8s,根據環境選擇對應的大盤模板。

    以下是arms-clickhouse-k8sVariables 參數說明:

    • datasource : 數據源,選擇對應的實例名稱;
    • job: 新建 clickhouse-exporter 對應 job 名稱,與 clickhouse-exporter 名稱一致,用于展示ClickHouseServer 指標、MergeTree 指標、消息隊列指標;
    • namespace: ClickHouse Pod 所在的命名空間,用于主機節點指標篩選;
    • Pod: 可根據需要選擇對應的 ClickHouse Pod,用于主機節點指標篩選。

    以下是arms-clickhouse-ecsVariables參數說明:

    • datasource: 數據源,選擇對應的實例名稱;
    • job: 新建的 clickhouse-exporter 對應 job 名稱,與clickhouse-exporter 名稱一致,用于展示ClickHouseServer 指標、MergeTree 指標、消息隊列指標;
    • instance: ecs 實例 IP,用于主機節點篩選。

    (三)配置告警

    在集成中心安裝 ClickHouse 監控時,已經默認增加了arms-clickhouse告警分組的相關規則,但未啟用,您只需要簡單修改參數并確認啟用即可。

    可以從應用實時監控服務ARMS控制臺-Prometheus監控-Prometheus實例列表-實例詳情頁-集成中心-已安裝-ClikckHouse中選擇告警-創建告警規則進入規則新增頁面,在其中告警分組選擇arms-clickhouse告警分組并根據環境選擇您需要啟用的告警指標,確認參數閾值并保存,即可完成告警規則的創建。

    四、自建 Prometheus 與阿里云可觀測監控 Prometheus 版監控 ClickHouse 優劣對比

    Prometheus 作為目前主流可觀測開源項目之一,已被眾多企業所廣泛應用,但還會遇到不少困難與挑戰:

    • 每套完整的自建觀測系統都需要安裝并配置 Prometheus、Grafana、AlertManager 等組件,部署過程復雜、實施周期長,并且每次升級都需要對每個組件進行維護;
    • 開源分享的相關大盤不夠專業,更新速度慢,缺少開箱即用的豐富指標;
    • 由于安全、組織管理等因素,用戶業務通常部署在多個相互隔離的 VPC,需要在多個 VPC 內都重復、獨立部署 Prometheus,導致部署和運維成本高。

    針對以上問題,阿里云可觀測監控 Prometheus 版進行了以下優化:

    結束語

    阿里云可觀測監控 Prometheus 版與阿里云容器服務無縫集成,提供了開源 ClickHouse 的指標采集、用戶大盤、告警規則等項目的一鍵集成,用戶免運維,開箱即用,目前 ClickHouse 指標采集功能仍在不斷演進中,歡迎大家試用和提出改進意見。

    關鍵詞:

    責任編輯:sdnew003

    相關新聞

    版權與免責聲明:

    1 本網注明“來源:×××”(非商業周刊網)的作品,均轉載自其它媒體,轉載目的在于傳遞更多信息,并不代表本網贊同其觀點和對其真實性負責,本網不承擔此類稿件侵權行為的連帶責任。

    2 在本網的新聞頁面或BBS上進行跟帖或發表言論者,文責自負。

    3 相關信息并未經過本網站證實,不對您構成任何投資建議,據此操作,風險自擔。

    4 如涉及作品內容、版權等其它問題,請在30日內同本網聯系。

    主站蜘蛛池模板: 狼群社区www中文视频| 国产激情久久久久久熟女老人| 欧美牲交videossexeso欧美| 黑人猛挺进小莹的体内视频| 久久精品国产亚洲欧美| 在线看免费无码av天堂| 午夜寂寞视频无码专区| 久久久噜噜噜久久熟女aa片| 人人妻人人做人人爽精品| 久久精品国产曰本波多野结衣| 欧美白丰满老太aaa片| 日欧一片内射va在线影院| 在线天堂资源www在线中文| 久久精品女人天堂av麻| 97无码免费人妻超级碰碰夜夜| 亚洲综合激情五月丁香六月| 久久婷婷五月综合色高清 | 国产精品污www一区二区三区 | 白嫩少妇bbw撒尿视频| 强奷乱码中文字幕| 蜜桃视频一区二区三区在线观看| 未满十八18勿进黄网站| 精品国产亚洲一区二区三区在线观看| 伊人久久大香线蕉av仙人| 国产手机在线亚洲精品观看| 国产精品久久久久久亚洲影视| 精品少妇ay一区二区三区| 亚洲女同一区二区| 国产精品一区二区含羞草| 日韩高清国产一区在线| 四虎影视国产精品永久在线| 国产精品欧美亚洲韩国日本久久| 国产精品久久久久久亚洲影视| 欧美精品亚洲精品日韩传电影| 国产极品美女到高潮| 国产精品麻豆va在线播放| 欧美精品日韩精品一卡| 国产精品视频一区二区三区不卡 | 丰满大爆乳波霸奶| 精品一区二区不卡无码av| 国产成人精品成人a在线观看|