大數據“復活”記
1244
2025-03-31
實驗場景
Telegraf 負責采集設備信息,本實驗中主要采集CPU,內存,磁盤空間等信息。
GaussDB(for Influx)用于存儲采集的時序數據,并對外提供數據查詢服務。
Grafana是數據可視化展示的工具,通過瀏覽器訪問,可以講數據以圖標方式進行展示。可視化效果如圖所示。
組件安裝部署
時序數據庫客戶端 Influx-
https://dl.influxdata.com/influxdb/releases/influxdb-1.8.3_windows_amd64.zip
linux系統可以訪問:
https://github.com/influxdata/influxdb/releases/tag/v1.8.3
下載對應操作系統的程序文件。
Grafana服務程序
https://dl.grafana.com/oss/release/grafana-7.5.4.windows-amd64.msi
linux系統可以訪問:
https://grafana.com/grafana/download?platform=linux
下載對應操作系統的程序文件。
數據采集工具
https://dl.influxdata.com/telegraf/releases/telegraf-1.16.2_windows_amd64.zip
linux系統可以訪問(大部分電腦都可以安裝amd64 linux):
https://github.com/influxdata/telegraf/releases/tag/v1.18.3
測試數據庫連通性
解壓
以windows為例,解壓 Influxdb-1.8.3_windows_amd64.zip
連接云時序數據庫
執行命令
cd
ip:數據庫服務器的地址
port:數據庫服務開放的端口
userName:數據庫的用戶名
password:數據庫用戶登錄密碼
執行成功,結果如下(圖中ip地址,用戶名和密碼不可作為本實驗使用):
基本操作
查看數據庫
show databases
創建數據庫
如果沒有數據庫 testDB, 則創建數據庫 testDB, 如果別人已經創建,則不需要,testDB用于本次實驗 create database testDB
使用數據庫
use testDB
插入一條數據
insert tab,os="ubuntu16.10",hostname="192.168.1.2:8188" alloc=1967123,frees=65440812
查詢一小時前的所有數據
select alloc from tab where time > now() - 1h
參考文檔
https://docs.influxdata.com/influxdb/v1.7/
數據采集
解壓telegraf,修改telegraf 配置文件telegraf.conf
# Configuration for sending metrics to InfluxDB [[outputs.influxdb]] ## The full HTTP or UDP URL for your InfluxDB instance. ## ## Multiple URLs can be specified for a single cluster, only ONE of the ## urls will be written to each interval. # urls = ["unix:///var/run/influxdb.sock"] # urls = ["udp://127.0.0.1:8089"] ########### 這里設置華為云GaussDB(for Influx)的配置的IP地址 urls=[“https://rwuser:password@IP:8635”] ## The target database for metrics; will be created as needed. ## For UDP url endpoint database needs to be configured on server side. ########### 設置數據庫名稱(默認telegraf) database = "testDB" ... ... ## HTTP Basic Auth ############ 這里設置GaussDB(for Influx)數據庫用戶名和密碼,實際密碼替換password username = "rwuser" password = "password" ## HTTP User-Agent # user_agent = "telegraf" ## UDP payload size is the maximum packet size to send. # udp_payload = "512B" ## Optional TLS Config for use on HTTP connections. # tls_ca = "/etc/telegraf/ca.pem" # tls_cert = "/etc/telegraf/cert.pem" # tls_key = "/etc/telegraf/key.pem" ## Use TLS but skip chain & host verification ############## 這里設置跳過ssl驗證 insecure_skip_verify = true
以上配置中,中文注釋的部分是必須設置的。GaussDB(for Influx)的用戶名默認為rwuser,不可更改。配置時,選擇時序數據庫ip地址替換urls中的ip,用GaussDB(for Influx)實例的密碼替換password,如果密碼包含如下特殊字符,需換成 ASIIC 碼形式輸入。
~ : %7E,! : %21,@ : %40,# : %23,$ : %24
% : %25,^ : %5E,& : %26,* : %2A,? : %3F
例如密碼:“Huawei@123”,轉換后為 “Huawei%40123”。
啟動telegraf
打開CMD,cd 進入telegraf目錄
CMD中運行命令啟動telegraf開始采集數據。
telegraf --config telegraf.conf
啟動Grafana服務
打開CMD,cd 進入Grafana目錄
CMD中運行命令啟動telegraf開始采集數據。
grafana-server.exe
Grafana數據展示
Grafana是一個跨平臺、開源的數據可視化平臺。用戶配置連接的數據源之后,Grafana可以在網絡瀏覽器里顯示數據圖表和警告。
服務端啟動Grafana后,通過瀏覽器訪問:
## 這里的IP可以是云上服務器的彈性IP,也可以是本地自建服務器的Ip地址。 http://IP:3000 本實驗在瀏覽器中輸入 http://localhost:3000
登陸Grafana的首頁如下圖所示(初始用戶名密碼都是admin)。
展示數據第一步:創建數據源,點擊如下圖中的紅框位置。
選擇InfluxDB,因為GaussDB(For Influx)完全兼容InfluxDB
填寫如下參數:
URL **:**https://rwuser:password@IP:8635 。IP為數據庫實例的內網ip(參考2.1步驟(1)), 用rwuser密碼替換password(參考1.1步驟(6)),如果密碼包含如下特殊字符,需換成 ASIIC 碼形式輸入。
~ : %7E,! : %21,@ : %40,# : %23,$ : %24
% : %25,^ : %5E,& : %26,* : %2A,? : %3F
例如密碼:“Huawei@123”,轉換后為 “Huawei%40123”。
Auth:打開選項Basic auth 和skip TSL Verify。
Basic Auth Details:
User:rwuser
Password:密碼,如“nJa#w7f3”。
InfluxDB Details:
Database:testDB(本實驗使用testDB,也可以填寫其他自己創建的數據庫)。
User:rwuser
Password:密碼,如“nJa#w7f3”。
點擊“保存”(save)。
數據展示第二步:創建數據看板
點擊首頁DASHBOARDS創建看板,或者側邊“+”快捷按鈕。
重點配置項(詳細參見截圖紅框部分):
Visualization:Graph
展示時間范圍:last 1 hour
數據更新時間間隔:1m
數據源名稱:InfluxDB-DataSource
查詢語句配置如下(以展示服務器CPU利用率為例,從時序數據庫的表cpu中查詢usage_user,按1m的分組時間間隔求平均值,時間線是cpu=cpu-total):
FROM autogen cpu Where cpu = cpu-total SELECT field (usage_user) mean () GROUP BY time (1m) fill (0)
面板中的每個圖都是可以編輯的,也可以設置告警。
總結
隨著云計算和物聯網的發展,數據規模急劇增加,監控系統的核心在于時序數據庫,一個高可用、高性能、企業級的時序數據庫對監控系統的穩定起決定性作用。
GaussDB(for Influx)是一個云原生存儲與計算分離架構的時序數據庫,支持億級時間線,具備高可靠、高性能,非常適合DevOps場景下的海量時間線數據的存儲,是監控系統最佳的選擇。
數據倉庫服務 GaussDB(DWS) 數據庫 運維
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。