Prometheus Deployment on Kubernetes

2020 It邦幫忙鐵人賽 系列文章 Prometheus / Grafana (5) GKE 上自架 Prometheus GKE 上自架 Grafana scrape config & exporter Dive into Redis Exporter 輸出 kube-state 的監測數據 由於我比較熟悉 GCP / GKE 的服務,這篇的操作過程都會以 GCP 平台作為範例,不過操作過程大體上是跨平台通用的。 寫文章真的是體力活,覺得我的文章還有參考價值,請左邊幫我點讚按個喜歡,右上角幫我按個追縱,底下歡迎留言討論。給我一點繼續走下去的動力。 對我的文章有興趣,歡迎到我的網站上 https://chechia.net 閱讀其他技術文章,有任何謬誤也請各方大德直接聯繫我,感激不盡。 摘要 Prometheus Introduction Deploy Prometheus Prometheus Introduction 生產環境與非生產環境,其中的一指標就是有沒有足夠完整的服務監測系統,這句話可以看出服務監測對於產品化是多麼重要。而監控資料 (metrics) 的收集與可視化工具其實非常多,例如上周介紹的 ELK Stack,這次我們要來介紹另外一個很多人使用的 prometheus。 Promethues 在官網上提到 是一個 Monitoring system and time series database 可以收集高維度的資料 使用自己的 PromQL 做有效且精簡的資料查詢 內建資料瀏覽器,並且與 Grafana 高度整合 支援 sharding 與 federation,來達到水平擴展 有許多隨插即用的整合 exporter,例如 redis-exporter, kafka-exporter,kubernetes-exporter ,都可以直接取得資料 支援 alert,使用 PromQL 以及多功能的告警,可以設定精準的告警條件 與 ELK 做比較 基本上 Prometheus 跟 ELK 比,其實是很奇怪的一件事,但這也是最常被問的一個問題。兩者在本質上是完全不同的系統。 ...

October 4, 2019 · 3 min · 609 words · chechiachang

Prometheus Deploy Grafana

2020 It邦幫忙鐵人賽 系列文章 Prometheus / Grafana (5) GKE 上自架 Prometheus GKE 上自架 Grafana scrape config & exporter Dive into Redis Exporter 輸出 kube-state 的監測數據 由於我比較熟悉 GCP / GKE 的服務,這篇的操作過程都會以 GCP 平台作為範例,不過操作過程大體上是跨平台通用的。 寫文章真的是體力活,覺得我的文章還有參考價值,請左邊幫我點讚按個喜歡,右上角幫我按個追縱,底下歡迎留言討論。給我一點繼續走下去的動力。 對我的文章有興趣,歡迎到我的網站上 https://chechia.net 閱讀其他技術文章,有任何謬誤也請各方大德直接聯繫我,感激不盡。 摘要 Grafana Introduction Deploy Grafana Grafana Introduction 上偏我們簡單介紹了 Prometheus,prometheus 的 Web Portol 已經附上簡單的 Query 與 Graph 工具,但一般我們在使用時,還是會搭配 Grafana 來使用。 Grafana 在官網上提到 是一個 Analytics system,可以協助了解運行資料,建立完整的 dashboard。 支援許多圖表,直線圖,長條圖,區域分析,基本上需要的都有 在圖表上定義 alter,並且主動告警,整合其他通訊軟體 對後端 data source 的整合,可以同時使用 ELK, prometheus, influxdb 等 30 多種的資料來源 有許多公開的 plugin 與 dashboard 可以匯入使用 總之功能強大,至於用起來的感覺,個人是非常推薦。如果有大得想要試玩看看,可以直接到 Grafana Live Demo 上面試玩 ...

October 4, 2019 · 4 min · 785 words · chechiachang

Prometheus Scrape

2020 It邦幫忙鐵人賽 系列文章 Prometheus / Grafana (5) GKE 上自架 Prometheus GKE 上自架 Grafana scrape config & exporter Dive into Redis Exporter 輸出 kube-state 的監測數據 由於我比較熟悉 GCP / GKE 的服務,這篇的操作過程都會以 GCP 平台作為範例,不過操作過程大體上是跨平台通用的。 寫文章真的是體力活,覺得我的文章還有參考價值,請左邊幫我點讚按個喜歡,右上角幫我按個追縱,底下歡迎留言討論。給我一點繼續走下去的動力。 對我的文章有興趣,歡迎到我的網站上 https://chechia.net 閱讀其他技術文章,有任何謬誤也請各方大德直接聯繫我,感激不盡。 摘要 Prometheus scrape scrape_configs Node exporter Scrape Prometheus 收集 metrics 的方式,是從被監測的目標的 http endpoints 收集 (scrape) metrics,目標服務有提供 export metrics 的 endpoint 的話,稱作 exporter。例如 kafka-exporter 就會收集 kafka 運行的 metrics,變成 http endpoint instance,prometheus 從 instance 上面收集資料。 ...

October 4, 2019 · 3 min · 517 words · chechiachang

Redis Ha Failure Recovery

2020 It邦幫忙鐵人賽 系列文章 在 GKE 上部署 Redis HA (5) 使用 helm 部署 redis-ha Redis HA with sentinel Redis sentinel topology Redis HA with HAproxy Redis HA Failure Recovery Prometheus Metrics Exporter 由於我比較熟悉 GCP / GKE 的服務,這篇的操作過程都會以 GCP 平台作為範例,不過操作過程大體上是跨平台通用的。 寫文章真的是體力活,覺得我的文章還有參考價值,請左邊幫我點讚按個喜歡,右上角幫我按個追縱,底下歡迎留言討論。給我一點繼續走下去的動力。 對我的文章有興趣,歡迎到我的網站上 https://chechia.net 閱讀其他技術文章,有任何謬誤也請各方大德直接聯繫我,感激不盡。 摘要 Failure Case Recovery Topology 上篇的例子完成應該是這樣 +-------+ +--------+ +------------+ +---------+ |Clients|---|HAProxys|----|redis master|----|sentinels| +-------+ +--------+ +------------+ +---------+ HAproxy 作為後端 redis 的 gateway Client 透過 HAproxy 連入 redis master sentinel 負責監測 redis 狀態與 failover,只是 client 不再透過 sentinel 去取得 master,而是透過 HAProxy。 那現在就來聊聊這些服務可能怎麼死的,回復的機制又是如何 ...

October 3, 2019 · 2 min · 372 words · chechiachang

Redis Ha HAProxy

2020 It邦幫忙鐵人賽 系列文章 在 GKE 上部署 Redis HA (5) 使用 helm 部署 redis-ha Redis HA with sentinel Redis sentinel topology Redis HA with HAproxy Redis HA Failure Recovery Prometheus Metrics Exporter 由於我比較熟悉 GCP / GKE 的服務,這篇的操作過程都會以 GCP 平台作為範例,不過操作過程大體上是跨平台通用的。 寫文章真的是體力活,覺得我的文章還有參考價值,請左邊幫我點讚按個喜歡,右上角幫我按個追縱,底下歡迎留言討論。給我一點繼續走下去的動力。 對我的文章有興趣,歡迎到我的網站上 https://chechia.net 閱讀其他技術文章,有任何謬誤也請各方大德直接聯繫我,感激不盡。 摘要 HAProxy Introduction Redis Sentinel with HAProxy HAProxy Intro HAproxy 全名是 High Availability Proxy,是一款開源 TCP/HTTP load balancer,他可以 聽 tcp socket,連 server,然後把 socket 接在一起讓雙向流通 可做 Http reverse-proxy (Http gateway),自己作為代理 server,把接受到的 connection 傳到後端的 server。 SSL 終端,可支援 client-side 與 server-side 的 ssl/tls 當 tcp/http normalizer 更改 http 的 request 與 response 當 switch,決定 request 後送的目標 做 load balancer,為後端 server 做負載均衡 調節流量,設定 rate limit,或是根據內容調整流量 HAProxy 還有其他非常多的功能,想了解細節可以來看原理解說文件 ...

October 2, 2019 · 4 min · 800 words · chechiachang