熱門搜索 Zabbix技術資料 Zabbix常見問、答討論 成功案例 Zabbix交流區 Prometheus交流區
在數字化大背景下,數據是重要的生產資料,這些數據存放在哪里,如何保障數據安全是所有企業都要考慮的事情。華為云RDS憑借安全可靠,可根據業務規模動態擴容的特性,受到越來越多中小企業的青睞,對華為云RDS監控的需求也隨之增長。本文將介紹如何使用zabbix監控華為云RDS。
?通過華為云RDS實例列表接口獲取RDS實例,用于資源的自動發現
?通過華為云CES獲取監控數據準
?用于訪問華為云的AK/SK
?python3環境
?用于調用華為云api的相關模塊依賴 http://github.com/huaweicloud/huaweicloud-sdk-python-v3
#!/bin/python3
# coding: utf-8
from huaweicloudsdkcore.auth.credentials import BasicCredentials
from huaweicloudsdkrds.v3.region.rds_region import RdsRegion
from huaweicloudsdkcore.exceptions import exceptions
from huaweicloudsdkrds.v3 import *
import json
if __name__ == "__main__":
#這里填訪問密鑰
ak = ""
sk = ""
credentials = BasicCredentials(ak, sk) \
client = RdsClient.new_builder() \
.with_credentials(credentials) \
.with_region(RdsRegion.value_of("cn-north-4")) \
.build()
try:
request = ListInstancesRequest()
response = client.list_instances(request)
response = json.loads(str(response))
#拼接成用于自動發現的json數據,id為RDS的實例ID,name為RDS的名稱
r = []
for i in response['instances']:
buf = {'{#INSTANCE}':i['id'],'{#INSTANCE_NANME}':i['name']}
r.append(buf)
print(json.dumps({"data":r}))
except exceptions.ClientRequestException as e:
print(e.status_code)
print(e.request_id)
print(e.error_code)
print(e.error_msg)
#!/bin/python3
# coding: utf-8
from huaweicloudsdkcore.auth.credentials import BasicCredentials
from huaweicloudsdkces.v1.region.ces_region import CesRegion
from huaweicloudsdkcore.exceptions import exceptions
from huaweicloudsdkces.v1 import *
import json
import time
import sys
#傳入的監控項
key = sys.argv[1]
#請求時間戳
from_time = int(round(time.time() * 1000)-300000)
to_time = int(round(time.time() * 1000))
if __name__ == "__main__":
#這里填訪問密鑰
ak = ""
sk = ""
credentials = BasicCredentials(ak, sk) \
client = CesClient.new_builder() \
.with_credentials(credentials) \
.with_region(CesRegion.value_of("cn-north-4")) \
.build()
try:
request = BatchListMetricDataRequest()
listDimensionsMetrics = [
MetricsDimension(
name="rds_cluster_id",
#這里是實例ID,可改為變量,模板宏即{HOST.HOST}
value=""
)
]
listMetricsbody = [
MetricInfo(
namespace="SYS.RDS",
metric_name=key,
dimensions=listDimensionsMetrics
)
]
request.body = BatchListMetricDataRequestBody(
to=to_time,
_from=from_time,
filter="max",
period="1",
metrics=listMetricsbody
)
response = client.batch_list_metric_data(request)
res = json.loads(str(response))
instance = json.dumps(res)
instances = json.loads(instance)['metrics']
for i in instances:
#取最新的一個值
print(i['datapoints'][0]['max'])
#print(i)
except exceptions.ClientRequestException as e:
print(0)
#print(e.request_id)
#print(e.error_code)
#print(e.error_msg)
?新增自動發現規則,用于實例自動發現
?自動發現規則,鏈接監控數據獲取模板
?驗證是否可以正常發現實例
新增主機,鏈接華為云RDS自動掃描模板后,點自動發現規則,可以正常獲取到數據
?驗證監控數據是否獲取正常
點擊發現出來實例,測試監控項可以正常獲取到數據
以上即為使用zabbix監控華為云RDS的操作過程。
這一期的zabbix的技術分享到這就結束了,更多zabbix內容,還可以查看我的往期內容:zabbix監控日志方法分享;zabbix技術分析
或者直接關注尊龍時凱社區,專注運維技術分享,關注我,運維更無憂。
尊龍時凱一站式智能監控+網管平臺,對運維管理流程體系進行重構,提升信息系統監控能力、網絡管理能力以及運維人員工作效率。
View details基于客戶運維痛點與項目建設目標,尊龍時凱方案團隊對項目進行梳理,并對項目建設進行具體規劃:以運維門戶、統一監控、集中告警管理為核心,輔以資產管理、可視...
View details基于客戶企業原有的運維體系、運維痛點與具體需求,尊龍時凱為其量身打造了一套一站式智能運維監控解決方案,搭建統一監控平臺整體框架,引入智能化告警管理系統...
View details