• influxdb+telegraf+chronograf集群部署


    环境准备

    influxdb enterprise运行条件最低需要三个meta nodes节点以及两个data nodes

    Meta nodes之间使用TCP和Raft一致性协议通信,默认端口为8089

    Meta nodes对外暴露8091,用于influxd-ctl命令进行交互

    Data nodes通过8088进行数据同步,8086对于用户进行读写服务

    在集群中,所有meta nodes节点必须要与data nodes节点保持通信。

    mata nodes主要保存以下所有的元数据信息

    • 集群中所有的节点以及角色
    • 集群中所有存在的数据库和保留策略(retention policy)
    • 保存所有分片和分片组信息
    • 保存集群用户权限

    data node保存所有原始时序数据以及元数据,包括

    • measurement(数据表)
    • tag key和value
    • field key和value;

      #wget https://dl.influxdata.com/enterprise/releases/influxdb-meta_1.7.8-c1.7.8_amd64.deb

    # dpkg -i influxdb-meta_1.7.8-c1.7.8_amd64.deb

    influxdb-meda01

    # egrep -v "#|^$" /etc/influxdb/influxdb-meta.conf
    hostname = "enterprise-meta-01"
    [enterprise]
    license-key = "224bca5e-514d-441e-b2c2-31b29dd79811"
    [meta]
    dir = "/var/lib/influxdb/meta"
    internal-shared-secret = "123.com"

    influxdb-meda02

    # egrep -v "#|^$" /etc/influxdb/influxdb-meta.conf
    hostname = "enterprise-meta-02"
    [enterprise]
    license-key = "224bca5e-514d-441e-b2c2-31b29dd79811"
    [meta]
     dir = "/var/lib/influxdb/meta"
    internal-shared-secret = "123.com"

    influxdb-meda03

    # egrep -v "#|^$" /etc/influxdb/influxdb-meta.conf
    hostname = "enterprise-meta-03"
    [enterprise]
      license-key = "224bca5e-514d-441e-b2c2-31b29dd79811"
    [meta]
      dir = "/var/lib/influxdb/meta"
       internal-shared-secret = "123.com"

    # systemctl start influxdb-meta
    # systemctl enable influxdb-meta

    将meta node节点加入集群

    #influxd-ctl add-meta enterprise-meta-02:8091
    #influxd-ctl add-meta enterprise-meta-03:8091

    【部署influxdb-node节点】

    #wget https://dl.influxdata.com/enterprise/releases/influxdb-data-1.8.2_c1.8.2.x86_64.rpm

    #dpkg -i influxdb-data_1.8.2-c1.8.2_amd64.deb

    #egrep -v "#|^$" /etc/influxdb/influxdb.conf

     bind-address = "0.0.0.0:8088"
    hostname = "enterprise-data-01"
    [enterprise]
      license-key = "224bca5e-514d-441e-b2c2-31b29dd79811"
    [meta]
      dir = "/var/lib/influxdb/meta"
       meta-internal-shared-secret = "123.com"
    [data]
      dir = "/var/lib/influxdb/data"
      wal-dir = "/var/lib/influxdb/wal"
       cache-max-memory-size = "1g"
       cache-snapshot-memory-size = "25m"
       cache-snapshot-write-cold-duration = "10m"
      max-series-per-database = 0
       max-values-per-tag = 0
       max-index-log-file-size = "128k"
    [cluster]
    [hinted-handoff]
      dir = "/var/lib/influxdb/hh"
    [anti-entropy]
    [retention]
    [shard-precreation]
    [monitor]
       store-enabled = false
        [http]
           log-enabled = true
    
    [logging]
    [subscriber]
    [[graphite]]
    [[collectd]]
    [[opentsdb]]
    [[udp]]
    [continuous_queries]
    [tls]

    # egrep -v "#|^$" /etc/influxdb/influxdb.conf

    bind-address = "0.0.0.0:8088"
     hostname = "enterprise-data-02"
    [enterprise]
      license-key = "224bca5e-514d-441e-b2c2-31b29dd79811"
    [meta]
      dir = "/var/lib/influxdb/meta"
       meta-internal-shared-secret = "123.com"
    [data]
      dir = "/var/lib/influxdb/data"
      wal-dir = "/var/lib/influxdb/wal"
       cache-max-memory-size = "1g"
       cache-snapshot-memory-size = "25m"
       cache-snapshot-write-cold-duration = "10m"
       max-series-per-database = 0
       max-values-per-tag = 0
       max-index-log-file-size = "128k"
    [cluster]
    [hinted-handoff]
      dir = "/var/lib/influxdb/hh"
    [anti-entropy]
    [retention]
    [shard-precreation]
    [monitor]
       store-enabled = true
    [http]
    
    [logging]
    [subscriber]
    [[graphite]]
    [[collectd]]
    [[opentsdb]]
    [[udp]]
    [continuous_queries]
       log-enabled = true
    [tls]

    #systemctl start influxd
    #systemctl enable influxd

    #将date node加入集群

    #influxd-ctl add-data enterprise-data-01:8088
    #influxd-ctl add-data enterprise-data-02:8088

    最后我们在influxdb-meta节点上执行 influxd-ctl show查看集群节点状态

     截止目前influxdb集群部署完毕!END

    【部署Telegrat】

    Telegrat是一个用golang写的开源数据库收集agent,基于插件驱动,本身提供的输入和输出的插件非常丰富,当然有需求也可以自行编写,Telegraf是influxdbdb公司的时间序列平台TICK技术栈中的“T”,主要就是数据采集,用于主机性能数据,包括主机CPU,内存,io,进程状态,服务状态;

    # yum install wget;wget https://dl.influxdata.com/kapacitor/releases/kapacitor-1.5.6-1.x86_64.rpm

    # yum localinstall -y kapacitor-1.5.6-1.x86_64.rpm

    # wget https://dl.influxdata.com/chronograf/releases/chronograf-1.8.7.x86_64.rpm

    # yum localinstall -y chronograf-1.8.7.x86_64.rpm

    #yum install -y telegraf

    #vim /etc/telegraf/telegraf.conf

    [global_tags]
    [agent]
      interval = "10s"
      round_interval = true
      metric_batch_size = 1000
      metric_buffer_limit = 10000
      collection_jitter = "0s"
      flush_interval = "10s"
      flush_jitter = "0s"
      precision = ""
      hostname = ""
      omit_hostname = false
    [[outputs.influxdb]]
      urls = ["http://192.168.60.101:8086"]
      database = "telegraf"
      retention_policy = ""
      timeout = "5s"
      username = "admin"
      password = "admin"
    [[inputs.cpu]]
      percpu = true
      totalcpu = true
      collect_cpu_time = false
      report_active = false
    [[inputs.disk]]
      ignore_fs = ["tmpfs", "devtmpfs", "devfs", "iso9660", "overlay", "aufs", "squashfs"]
    [[inputs.diskio]]
    [[inputs.kernel]]
    [[inputs.mem]]
    [[inputs.processes]]
    [[inputs.swap]]
    [[inputs.system]]

     #systemctl restart telegraf 

    #systemctl enable telegraf

    telegraf --config /etc/telegraf/telegraf.conf --input-filter cpu:mem --output-filter influxdb #生成具有特定输入和输出的配置文件,可以使用--input-filter和--output-filter标志

     

     此时我们可以去192.168.60.101上的influxdb数据库中查看一下是否已经生成相应的库文件

      接下来我们可配置Chronograf的数据源,让chronorag连接influxdb数据库,并进行数据可视化展示

    浏览器访问chronnoragweb界面:192.168.60.103:8888

    Configuration===>+Add Connection==>

     

     

     

  • 相关阅读:
    2-字符串篇(4)
    1-数组篇(2)
    Neo4j-电影图(演员与电影之间的流行文化联系)
    NLP(相关资料)
    Oracle中的rank()函数使用
    PostgreSQL入门
    风格迁移论文理解--A Neural Algorithm of Artistic Style
    【Math】复数表示和傅里叶变换
    github资源使用--程序员必备
    【TF-2-3】Tensorflow-可视化(TensorBoard)
  • 原文地址:https://www.cnblogs.com/bixiaoyu/p/13852163.html
Copyright © 2020-2023  润新知