influxdb-cluster集群部署

一.部署环境

* InfluxDB集群节点数:mate服务至少3个节点,节点数越多,集群性能越高。
* 操作系统:支持的操作系统包括Linux、Windows和MacOS。
* CPU:至少2核4线程,主频越高越好。
* 内存:至少8GB内存,推荐16GB或以上。
* 存储:至少100GB的磁盘空间,推荐使用SSD或NVMe SSD存储

二.集群文件配置修改 

ip地址服务名称
192.168.110.110influxdb,meta
192.168.110.111influxdb,meta
192.168.110.118meta

1.influxdb-meta.conf配置文件修改

meta至少三个节点修改配置比较简单

hostname = "192.168.110.110"

dir = "/data/var/lib/influxdb/meta"

hostname = "192.168.110.111"

dir = "/data/var/lib/influxdb/meta"

hostname = "192.168.110.118"

dir = "/data/var/lib/influxdb/meta"

2.influxdb.conf配置修改:红色为修改参数

influxdb-mate.conf每台只需要修改下面参数

hostname = "192.168.110.110"

[meta].
  dir = "/data/var/lib/influxdb/meta"

第一个influx的配置influxdb.conf修改

hostname = "192.168.110.110"
[meta]
  # Directory where the cluster metadata is stored.
  dir = "/data/var/lib/influxdb/meta"
[data]
  dir = "/data/var/lib/influxdb/data"
  wal-dir = "/data/var/lib/influxdb/wal"
  wal-fsync-delay = "1ms"
  index-version = "tsi1"
  cache-max-memory-size = "48g"
  cache-snapshot-memory-size = "4096m"
  max-concurrent-compactions = 12
  series-id-set-cache-size = 100

[coordinator]
  max-select-point = 1000000
  max-select-series = 1000000

[hinted-handoff]

# The directory where the hinted handoff queues are stored.
dir = "/data/var/lib/influxdb/hh"

第二个influx的配置influxdb.conf修改

hostname = "192.168.110.111"
[meta]
  # Directory where the cluster metadata is stored.
  dir = "/data/var/lib/influxdb/meta"
[data]
  dir = "/data/var/lib/influxdb/data"
  wal-dir = "/data/var/lib/influxdb/wal"
  wal-fsync-delay = "1ms"
  index-version = "tsi1"
  cache-max-memory-size = "48g"
  cache-snapshot-memory-size = "4096m"
  max-concurrent-compactions = 12
  series-id-set-cache-size = 100

[coordinator]
  max-select-point = 1000000
  max-select-series = 1000000

[hinted-handoff]

# The directory where the hinted handoff queues are stored.
dir = "/data/var/lib/influxdb/hh"
 

三.集群构建启动

1.meta元数据集群的构建

启动meta集群(所有的mate节点上执行)

nohup influxd-meta -config /data/influxdb/etc/influxdb/influxdb-meta.conf > nohup.out 2>&1 &

在其中一个节点上执行

influxd-ctl add-meta 192.168.110.110:8091 influxd-ctl add-meta 192.168.110.111:8091 influxd-ctl add-meta 192.168.110.88:8091

2.influxdb集群服务

启动data服务(所有influx的数据节点上执行)

nohup influxd -config /data/influxdb/etc/influxdb/influxdb.conf > nohup.out 2>&1 &

将data节点加入集群(其中一个data节点上)

influxd-ctl add-data 192.168.10.110:8088 influxd-ctl add-data 192.168.10.111:8088

四.配置负载均衡

nginx配置参数如下


#user  nobody;
worker_processes  1;

#error_log  logs/error.log;
#error_log  logs/error.log  notice;
#error_log  logs/error.log  info;

#pid        logs/nginx.pid;


events {
    worker_connections  1024;
}


http {
    include       mime.types;
    default_type  application/octet-stream;

    #log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
    #                  '$status $body_bytes_sent "$http_referer" '
    #                  '"$http_user_agent" "$http_x_forwarded_for"';

    #access_log  logs/access.log  main;

    sendfile        on;
    #tcp_nopush     on;

    #keepalive_timeout  0;
    keepalive_timeout  65;

    #gzip  on;
    upstream influxdb {
        server 192.168.110.110:8086;
        server 192.168.110.111:8086;
    }
    server {
        listen       8181;
        server_name  localhost;

        #charset koi8-r;

        #access_log  logs/host.access.log  main;

        location / {
            proxy_set_header Host $proxy_host;
              proxy_pass   http://influxdb/;
        }
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }

    }

}
 

负载均衡测试

数据测试写入

curl -i -XPOST 'http://192.168.110.110:8181/influx/write?db=test' --data-binary 'mymeasurement,mytag=1 myfield=90'

数据查询

curl -XPOST "http://192.168.10.110:8181/influx/query?db=test" --data-urlencode "q=Select * from mymeasurement" --header "Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VybmFtZSI6ImFkbWluIiwiZXhwIjoxNjc5NjQyNTEyfQ.7mIPMjB60kFGFQuTSyf7KvYF921MkMmL662_icTfvRQ"

五.命令手册

influxd-meta config 显示所有meta的配置

influxd config 显示所有influxdata的配置

influx-ctl show 显示集群节点

create database iot_env_data

创建用户设置密码

create user iot_admin with password 'xxx1' with all privileges

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/240257.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【已解决】Redis序列化反序列化不一致 - String类型值多了双引号问题

在项目中使用spring 的RedisTemplate从redis中获取数据的时候,发现字符串的value多了双引号。如下图所示: 产生的原因可以分一下几个方面: 一、采用的序列化对象不同 多服务之间调用时候,序列化服务A(向redis中写数据的)和反序…

【翼韵】数据上传沟通、决策、试错

韵达德邦来说说,翼达、翼韵、翼德、翼邦的小记录 翼达同学:沟通成本好大! 翼韵同学:决策成本很大! 翼德同学:试错成本更大! 翼邦同学:你们加起最大! QY成本沟通成本33%决…

Win7如何修改MAC地址

MAC地址,又叫做物理地址、硬件地址,是用来定义网络设备的位置,一般情况下,MAC地址在网卡中是固定的,但不排除有人手动去修改自己的MAC地址。win7如何修改MAC地址?其实修改MAC地址的方法很简单,可以通过硬件…

K8s出现问题时,如何排查解决!

K8s问题的排查 1. POD启动异常、部分节点无法启动pod2. 审视集群状态3. 追踪事件日志4. 聚焦Pod状态5. 检查网络连通性6. 审视存储配置7. 研究容器日志8. K8S集群网络通信9. 问题:Service 是否通过 DNS 工作?10. 总结1、POD启动异常、部分节点无法启动p…

普通Java项目打包可执行Jar

普通Java项目打包 IDEA配置 在项目配置中选择 Artifacts -> JAR -> From modules with dependencies 选择项目模块,程序主类、依赖引入方式、清单文件位置 确认Jar名称和Jar输出目录 通过 Build -> Build Artifact -> Build 打包Jar文件 Java打包可执…

JavaWeb笔记之SVN

一、版本控制 软件开发过程中 变更的管理; 每天的新内容;需要记录一下; 版本分支;整合到一起; 主要的功能对于文件变更的追踪; 多人协同开发的情况下,更好的管理我们的软件。 大型的项目;一个团队来进行开发; 1: 代码的整合 2: 代…

2023-强网杯-【强网先锋-ez_fmt】

文章目录 ez_fmt libc-2.31.so检查main思路exp 参考链接 ez_fmt libc-2.31.so 检查 没有地址随机化 main 简单粗暴的printf格式化字符串漏洞 思路 泄露地址,覆盖返回地址形成ROP链 printf执行时栈上存在__libc_start_main243的指令的地址,可以泄露…

C++哈希表的实现

C哈希表的实现 一.unordered系列容器的介绍二.哈希介绍1.哈希概念2.哈希函数的常见设计3.哈希冲突4.哈希函数的设计原则 三.解决哈希冲突1.闭散列(开放定址法)1.线性探测1.动图演示2.注意事项3.代码的注意事项4.代码实现 2.开散列(哈希桶,拉链法)1.概念2.动图演示3.增容问题1.拉…

MyBatis 架构分析

文章目录 三层架构一、基础支撑层1.1 类型转换模块1.2 日志模块1.3 反射工具模块1.4 Binding 模块1.5 数据源模块1.6 缓存模块1.6 解析器模块1.7 事务管理模块 二、核心处理层2.1 配置解析2.2 SQL 解析与 scripting 模块。2.3 MyBatis 中的 scripting 模块就是负责动态生成 SQL…

SpringCloud Alibaba(itheima)

SpringCloud Alibaba 第一章 微服务介绍1.1系统架构演变1.1.1单体应用架构1.1.2垂直应用架构1.1.3分布式架构1.1.4 SOA架构1.1.5微服务架构 1.2微服务架构介绍1.2.1微服务架构的常见问题1.2.2微服务架构的常见概念1.2.3微服务架构的常见解决方案 1.3 SpringCloud Alibaba介绍1.…

用23种设计模式打造一个cocos creator的游戏框架----(二十二)原型模式

1、模式标准 模式名称:原型模式 模式分类:创建型 模式意图:用原型实例指定创建对象的种类,并且通过复制这些原型创建新的对象 结构图: 适用于: 1、当一个系统应该独立于它的产品创建、构成和表示时 2、…

BUUCTF-Crypto合集-WP

获取CTF工具可关注CSJH网络安全团队,回复CTF工具 一眼就解密 下面的字符串解密后便能获得flag:ZmxhZ3tUSEVfRkxBR19PRl9USElTX1NUUklOR30 注意:得到的 flag 请包上 flag{} 提交 大小写字母加数字,而且等于号结尾,bas…

实在智能斩获钛媒体2023全球创新评选科技类「 大模型创新应用奖」

近日,历时三天的钛媒体2023 T-EDGE全球创新大会以“新视野新链接”为主题在北京隆重举办。作为科创领域全新高度的年度盛事,大会吸引了AI各产业链近百位海内外创投人、尖端企业家、商业领袖和国际嘉宾齐聚一堂,围绕新一轮AI革命、智慧数字化、…

Java中使用JTS实现WKB数据写入、转换字符串、读取

场景 Java中使用JTS实现WKT字符串读取转换线、查找LineString的list中距离最近的线、LineString做缓冲区扩展并计算点在缓冲区内的方位角: Java中使用JTS实现WKT字符串读取转换线、查找LineString的list中距离最近的线、LineString做缓冲区扩展并计算点在缓冲区内…

从Maven初级到高级

一.Maven简介 Maven 是 Apache 软件基金会组织维护的一款专门为 Java 项目提供构建和依赖管理支持的工具。 一个 Maven 工程有约定的目录结构,约定的目录结构对于 Maven 实现自动化构建而言是必不可少的一环,就拿自动编译来说,Maven 必须 能…

python调用DALL·E绘画

实现用gpt的api和他对话后,我们试着调用DALLE的api进行绘画 参考文档 OpenAI API 运行代码 from openai import OpenAIclient OpenAI()user_prompt input("请输入您想生成的图片描述: ")response client.images.generate(model"dall-e-3"…

分享70个Java源码总有一个是你想要的

分享70个Java源码总有一个是你想要的 学习知识费力气,收集整理更不易。 知识付费甚欢喜,为咱码农谋福利。 源码下载链接:https://pan.baidu.com/s/1uyWfeUuO_4jRbAEw825qRw?pwd6666 提取码:6666 项目名称 CRUD is ReallyU…

电商数据之巅:挖掘无限价值的蓝海

在数字时代的大潮中,数据已成为新的黄金和石油,尤其在电商领域。电商平台每天都在产生海量的数据,这些数据不仅是对消费者行为的记录,更是隐藏着无限的商机和价值。本文将带你走进电商数据的神奇世界,探寻其无尽可能的…

Go 泛型发展史与基本介绍

Go 泛型发展史与基本介绍 Go 1.18版本增加了对泛型的支持,泛型也是自 Go 语言开源以来所做的最大改变。 文章目录 Go 泛型发展史与基本介绍一、为什么要加入泛型?二、什么是泛型三、泛型的来源四、为什么需要泛型五、Go 泛型设计的简史六、泛型语法6.1 …

实战篇:一文讲清楚商品分析之返货品画像分析怎么做

01 什么是商品画像,怎样进行分析 “用户画像对于小伙伴们来说并不陌生,那有小伙伴知道商品画像吗?其实它和用户画像一样,可以简单理解成是商品海量数据的标签。”   商品画像的意义在于可以对商品进行精准的定位,让不…