文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

M3DB集群安装笔记

2024-04-02 19:55

关注

介绍

最简单的docker方式安装就不介绍了,这里讲一下我在装m3db单机多实例集群时遇到的问题和爬坑过程

用途

为了搭配exporter + prometheus + grafana使用,prometheus暂不支持分片。使用federate方式来做的话,架构比较复杂

m3db的优点:
m3db的缺点
为甚么不使用其他的方案:

架构

这里使用m3db官方网站上的架构图
M3DB集群安装笔记

安装

架构

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数据目录
阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-数据库
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯