您好,登錄后才能下訂單哦!
最簡單的docker方式安裝就不介紹了,這里講一下我在裝m3db單機多實例集群時遇到的問題和爬坑過程
為了搭配exporter + prometheus + grafana使用,prometheus暫不支持分片。使用federate方式來做的話,架構比較復雜
這里使用m3db官方網站上的架構圖
首先我們下載etcd,然后執行就可以,這里我們暫時不使用集群
nohup ./etcd &> /dev/null &
這里附上第一個節點的配置文件,需要注意的地方我會在下面用注釋的方式指出
coordinator:
listenAddress:
type: "config"
value: "0.0.0.0:7201" # 交互端口
local:
namespaces:
- namespace: default # 數據要存入的表
type: unaggregated # 數據類型
retention: 48h # 數據保存時間
metrics: # coordinator本身的metric
scope:
prefix: "coordinator"
prometheus:
handlerPath: /metrics
listenAddress: 0.0.0.0:7203 # until https://github.com/m3db/m3/issues/682 is resolved
sanitization: prometheus
samplingRate: 1.0
extended: none
tagOptions:
# Configuration setting for generating metric IDs from tags.
idScheme: quoted # 這個必須
db:
logging:
level: info
metrics:
prometheus:
handlerPath: /metrics
sanitization: prometheus
samplingRate: 1.0
extended: detailed
hostID: # 這里實測后,其實可以理解為nodeID
resolver: config # 單機多實例,這里必須設置為config,從文件中讀取
value: node1 # 這個實例的Id
config: # config段的配置都是和etcd相關的
service:
env: default_env
zone: embedded
service: m3db # 服務名。可以按照consul中的service進行理解
cacheDir: /data1/m3db/cache
etcdClusters:
- zone: embedded
endpoints:
- 127.0.0.1:2379
listenAddress: 0.0.0.0:9000
clusterListenAddress: 0.0.0.0:9001
httpNodeListenAddress: 0.0.0.0:9002
httpClusterListenAddress: 0.0.0.0:9003
debugListenAddress: 0.0.0.0:9004
client:
writeConsistencyLevel: majority # 寫一致性級別
readConsistencyLevel: unstrict_majority
gcPercentage: 100
writeNewSeriesAsync: true
writeNewSeriesLimitPerSecond: 1048576
writeNewSeriesBackoffDuration: 2ms
bootstrap:
bootstrappers: # 啟動順序
- filesystem
- commitlog
- peers
- uninitialized_topology
fs:
numProcessorsPerCPU: 0.125
cache:
series:
policy: lru
postingsList:
size: 262144
commitlog:
flushMaxBytes: 524288
flushEvery: 1s
blockSize: 10m
queue:
calculationType: fixed
size: 2097152
fs:
filePathPrefix: /data1/m3db # m3dbnode數據目錄
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。