溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

使用prometheus怎么實現(xiàn)遠(yuǎn)程存儲

發(fā)布時間:2021-06-22 14:11:34 來源:億速云 閱讀:938 作者:Leah 欄目:大數(shù)據(jù)

使用prometheus怎么實現(xiàn)遠(yuǎn)程存儲,針對這個問題,這篇文章詳細(xì)介紹了相對應(yīng)的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。

實驗系統(tǒng)配置

  1. mac 10.14

  2. docker

  Engine:
  Version:          18.09.2
  API version:      1.39 (minimum version 1.12)
  Go version:       go1.10.6
  Git commit:       6247962
  Built:            Sun Feb 10 04:13:06 2019
  OS/Arch:          linux/amd64
  Experimental:     false
  1. 在docker部署偽分布式kafka集群

    • 新建名為:metrics的topic

[Mac 使用 docker 搭建 kafka 集群 + Zookeeper + kafka-manager](https://learnku.com/articles/19221)


docker run -d --name kafka --publish 9092:9092 --link zookeeper --env KAFKA_ZOOKEEPER_CONNECT=zookeeper:2181 --env KAFKA_ADVERTISED_HOST_NAME=localhost --env KAFKA_ADVERTISED_PORT=9092 --volume /etc/localtime:/etc/localtime wurstmeister/kafka:latest  

docker run -d --name kafka -p 9092:9092 -e KAFKA_BROKER_ID=0 -e KAFKA_ZOOKEEPER_CONNECT=10.3.0.170:2181 -e KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://1localhost:9092 -e KAFKA_LISTENERS=PLAINTEXT://0.0.0.0:9092 -t wurstmeister/kafka
docker run -d --name kafka1 -p 9093:9093 -e KAFKA_BROKER_ID=1 -e KAFKA_ZOOKEEPER_CONNECT=10.3.0.170:2181 -e KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://localhost:9093 -e KAFKA_LISTENERS=PLAINTEXT://0.0.0.0:9093 -t wurstmeister/kafka
docker run -d --name kafka2 -p 9094:9094 -e KAFKA_BROKER_ID=1 -e KAFKA_ZOOKEEPER_CONNECT=10.3.0.170:2181 -e KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://localhost:9094 -e KAFKA_LISTENERS=PLAINTEXT://0.0.0.0:9094 -t wurstmeister/kafka

bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 2 --partitions 2 --topic metrics

bin/kafka-topics.sh --describe --zookeeper localhost:2181 --topic partopic

bin/kafka-console-producer.sh --broker-list localhost:9092 --topic metrics

bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic metrics --from-beginning

遠(yuǎn)程存儲

Prometheus的本地存儲設(shè)計可以減少其自身運維和管理的復(fù)雜度,同時能夠滿足大部分用戶監(jiān)控規(guī)模的需求。但是本地存儲也意味著Prometheus無法持久化數(shù)據(jù),無法存儲大量歷史數(shù)據(jù),同時也無法靈活擴(kuò)展和遷移。

為了保持Prometheus的簡單性,Prometheus并沒有嘗試在自身中解決以上問題,而是通過定義兩個標(biāo)準(zhǔn)接口(remote_write/remote_read),讓用戶可以基于這兩個接口對接將數(shù)據(jù)保存到任意第三方的存儲服務(wù)中,這種方式在Promthues中稱為Remote Storage。

遠(yuǎn)程存儲官方文檔

本文主要講解遠(yuǎn)程存儲至kafka的過程。

該adapter的github地址

操作

步驟一

  1. 將github代碼拉下來,并使用goland打開進(jìn)行編譯,此步十分麻煩且重要。

  2. mac上安裝go及goland

  3. 在goland上對源碼進(jìn)行編譯,其中有很多包下載不了,特別是/golang.org/x/...類型的包,原因是這些包被墻了,所以需要增加代理才可以。直接執(zhí)行

$ export http_proxy=socks5://127.0.0.1:1080		// 梯子的本地端口
$ export https_proxy=$http_proxy
$ export GOPROXY=https://goproxy.io

問題一:解決golang.org/x包無法下載的問題

問題二:解決golang grpc安裝問題

問題三

$ go test
# pkg-config –cflags rdkafka 
Package rdkafka was not found in the pkg-config search path. 
Perhaps you should add the directory containing `rdkafka.pc’ 
to the PKG_CONFIG_PATH environment variable 
No package ‘rdkafka’ found 
pkg-config: exit status 1

result

1. git clone https://github.com/edenhill/librdkafka.git
cd librdkafka
./configure
make
make install

步驟二

  1. 先修改源碼config.go中的kafkaBrokerList為本地kafka的地址。

  2. prometheus-kafka-adapter源碼進(jìn)行編譯:

go test
go build

沒有問題之后,在源碼中會出現(xiàn)一個名為prometheus-kafka-adapter的可執(zhí)行文件,然后執(zhí)行。 3. 修改prometheus的配置文件prometheus.yml中增加:

remote_write:
  - url: "http://<kafka.ip>:8080/receive"
  1. kafka那邊進(jìn)行消費,就可以看到監(jiān)控數(shù)據(jù)了。

prometheus寫influxdb/opentsdb

系統(tǒng)配置
  1. mac 10.14

  2. docker

  Engine:
  Version:          18.09.2
  API version:      1.39 (minimum version 1.12)
  Go version:       go1.10.6
  Git commit:       6247962
  Built:            Sun Feb 10 04:13:06 2019
  OS/Arch:          linux/amd64
  Experimental:     false
  1. 在docker部署influxdb

執(zhí)行

1. prometheus 使用influxdb 做永久存儲

2. Prometheus高可用(2):理解遠(yuǎn)端存儲

3. Prometheus 遠(yuǎn)程讀寫 Influxdb

編譯(難點)

在父目錄下執(zhí)行:

go build ./documentation/examples/remote_storage/remote_storage_adapter/

關(guān)于使用prometheus怎么實現(xiàn)遠(yuǎn)程存儲問題的解答就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關(guān)注億速云行業(yè)資訊頻道了解更多相關(guān)知識。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI