iis服务器助手广告广告
返回顶部
首页 > 资讯 > 数据库 > influxdb-cluster安装部署
  • 366
分享到

influxdb-cluster安装部署

摘要

参考资料 Influx Proxy 是一个基于高可用、一致性哈希的 InfluxDB 集群代理服务,实现了 InfluxDB 高可用集群的部署方案,具有动态扩/缩容、故障恢复、数据同步等能力。 相关文档:https://GitHub.com


	influxdb-cluster安装部署
[数据库教程]

参考资料

Influx Proxy 是一个基于高可用、一致性哈希的 InfluxDB 集群代理服务,实现了 InfluxDB 高可用集群的部署方案,具有动态扩/缩容、故障恢复、数据同步等能力。

相关文档:https://GitHub.com/chengshiwen/influx-proxy
下载地址:Https://golang.org/dl/

架构

技术图片

所需资源:

软件版本:

  • influxdb-proxy 2.5.5
  • Go 1.15.7
  • influxdb 1.8.2

部署

influxdb-node12运行

#下载influxdb软件
wget -c https://dl.influxdata.com/influxdb/releases/influxdb-1.8.2.x86_64.rpm
#安装influxdb
yum install -y influxdb-1.8.2.x86_64.rpm
#创建influxdb所使用的的目录
mkdir -p /data/influxdb/{meta,data,wal}
#配置系统启动命令
# cat influxdb-cluster@.service
[Unit]
Description=influx-cluster
After=network.target

[Service]
Type=simple
ExecStart=/usr/bin/influxd -config /etc/influxdb/influxdb.conf.%i
Restart=on-failure

[Install]
WantedBy=multi-user.target
#将文件influxdb-cluster@.service复制到/etc/systemd/system/
cp influxdb-cluster@.service /etc/systemd/system/

编辑配置文件

  • influxdb-node1操作
# cat influxdb.conf.1
reporting-disabled = true         # 禁用报告,默认为 false
bind-address = ":8088"
[meta]
dir = "/data/influxdb/meta"    # 元信息目录
[data]
dir = "/data/influxdb/data"    # 数据目录
wal-dir = "/data/influxdb/wal" # 预写目录
wal-fsync-delay = "10ms"          # SSD 设置为 0s,非 SSD 推荐设置为 0ms-100ms
index-version = "tsi1"            # tsi1 磁盘索引,inmem 内存索引需要大量内存
query-log-enabled = true          # 查询的日志,默认是 true
[coordinator]
write-timeout = "20s"             # 写入请求超时时间,默认为 10s
[http]
enabled = true
bind-address = ":8086"
auth-enabled = true
log-enabled = true                 # http 请求日志,默认是 true
[logging]
level = "info"                    # 日志等级,error、warn、info(默认)、debug

# cat influxdb.conf.2
reporting-disabled = true         # 禁用报告,默认为 false
bind-address = ":8089"
[meta]
dir = "/data/influxdb/meta"    # 元信息目录
[data]
dir = "/data/influxdb/data"    # 数据目录
wal-dir = "/data/influxdb/wal" # 预写目录
wal-fsync-delay = "10ms"          # SSD 设置为 0s,非 SSD 推荐设置为 0ms-100ms
index-version = "tsi1"            # tsi1 磁盘索引,inmem 内存索引需要大量内存
query-log-enabled = true          # 查询的日志,默认是 true
[coordinator]
write-timeout = "20s"             # 写入请求超时时间,默认为 10s
[http]
enabled = true
bind-address = ":8087"
auth-enabled = true
log-enabled = true                 # http 请求日志,默认是 true
[logging]
level = "info"                    # 日志等级,error、warn、info(默认)、debug
  • influxdb-node2节点操作
# cat influxdb.conf.3
reporting-disabled = true         # 禁用报告,默认为 false
bind-address = ":8088"
[meta]
dir = "/data/influxdb/meta"    # 元信息目录
[data]
dir = "/data/influxdb/data"    # 数据目录
wal-dir = "/data/influxdb/wal" # 预写目录
wal-fsync-delay = "10ms"          # SSD 设置为 0s,非 SSD 推荐设置为 0ms-100ms
index-version = "tsi1"            # tsi1 磁盘索引,inmem 内存索引需要大量内存
query-log-enabled = true          # 查询的日志,默认是 true
[coordinator]
write-timeout = "20s"             # 写入请求超时时间,默认为 10s
[http]
enabled = true
bind-address = ":8086"
auth-enabled = true
log-enabled = true                 # http 请求日志,默认是 true
[logging]
level = "info"                    # 日志等级,error、warn、info(默认)、debug
# cat influxdb.conf.4
reporting-disabled = true         # 禁用报告,默认为 false
bind-address = ":8089"
[meta]
dir = "/data/influxdb/meta"    # 元信息目录
[data]
dir = "/data/influxdb/data"    # 数据目录
wal-dir = "/data/influxdb/wal" # 预写目录
wal-fsync-delay = "10ms"          # SSD 设置为 0s,非 SSD 推荐设置为 0ms-100ms
index-version = "tsi1"            # tsi1 磁盘索引,inmem 内存索引需要大量内存
query-log-enabled = true          # 查询的日志,默认是 true
[coordinator]
write-timeout = "20s"             # 写入请求超时时间,默认为 10s
[http]
enabled = true
bind-address = ":8087"
auth-enabled = true
log-enabled = true                 # http 请求日志,默认是 true
[logging]
level = "info"                    # 日志等级,error、warn、info(默认)、debug

启动influxdb--node1节点操作

systemctl start influxdb-cluster@1 influxdb-cluster@2
systemctl status influxdb-cluster@1 influxdb-cluster@2
systemctl enable influxdb-cluster@1 influxdb-cluster@2

启动influxdb--node2节点操作

systemctl start influxdb-cluster@3 influxdb-cluster@4
systemctl status influxdb-cluster@3 influxdb-cluster@4
systemctl enable influxdb-cluster@3 influxdb-cluster@4

所有节点创建用户

influx -port 8086
CREATE USER admin with PASSWord ‘****‘ WITH ALL PRIVILEGES
influx -port 8087
CREATE USER admin with PASSWORD ‘*****‘ WITH ALL PRIVILEGES

以下操作请在influxdb-master1节点上操作

配置go环境

wget -c https://dl.google.com/go/go1.15.7.linux-amd64.tar.gz
tar -C /usr/local -xf go1.15.7.linux-amd64.tar.gz
export PATH=$PATH:/usr/local/go/bin
go version
#vim /etc/profile

export PATH=$PATH:/usr/local/go/bin
export GOPROXY=https://goproxy.io

配置influxdb-proxy服务

  • 配置文件
# cat proxy.JSON
{
    "circles": [
        {
            "name": "circle-1",
            "backends": [
                {
                    "name": "influxdb-1-1",
                    "url": "http://172.*.*.*:8086",
                    "username": "admin",
                    "password": "123456",
                    "auth_secure": false
                },
                {
                    "name": "influxdb-1-2",
                    "url": "http://172.*.*.*:8087",
                    "username": "admin",
                    "password": "123456",
                    "auth_secure": false
                }
            ]
        },
        {
            "name": "circle-2",
            "backends": [
                {
                    "name": "influxdb-2-1",
                    "url": "http://172.*.*.*:8086",
                    "username": "admin",
                    "password": "****",
                    "auth_secure": false
                },
                {
                    "name": "influxdb-2-2",
                    "url": "http://172.*.*.*:8087",
                    "username": "admin",
                    "password": "****",
                    "auth_secure": false
                }
            ]
        }
    ],
    "listen_addr": ":7076",
    "db_list": [],
    "data_dir": "/data/influx-pr/data",
    "tlog_dir": "/data/influx-pr/log",
    "hash_key": "idx",
    "flush_size": 10000,
    "flush_time": 1,
    "check_interval": 1,
    "rewrite_interval": 10,
    "conn_pool_size": 20,
    "write_timeout": 10,
    "idle_timeout": 10,
    "username": "admin",
    "password": "*****",
    "auth_secure": false,
    "write_tracing": false,
    "query_tracing": false,
    "https_enabled": false,
    "https_cert": "",
    "https_key": ""
}
  • 下载influx-proxy
wget -c https://github.com/chengshiwen/influx-proxy/releases/download/v2.5.5/influx-proxy-2.5.5.tar.gz
#解压
tar xf influx-proxy-2.5.5.tar.gz
#cp
cp influx-proxy-2.5.5/influx-proxy /usr/local/bin/
  • 系统启动服务
# cat influx-proxy.service
[Unit]
Description=influx-proxy
After=network.target

[Service]
Type=simple
ExecStart=/usr/local/bin/influx-proxy -config /usr/local/influx-proxy/proxy.json
KillSignal=SIGTERM

[Install]
WantedBy=multi-user.target
cp influx-proxy.service /etc/systemd/system/

启动influx-proxy

# 启动集群(三种都可以)
① influx-proxy -config /opt/influx-proxy/proxy.json
② systemctl start influx-proxy
③ nohup influx-proxy -config /opt/influx-proxy/proxy.json > /dev/null 2>&1 &
#配置开机启动
systemctl enable influx-proxy

查看集群状态

curl http://127.0.0.1:7076/health -u admin:***** 
[{"circle":{"id":0,"name":"circle-1","active":true,"write_only":false},"backends":[{"name":"influxdb-1-1","url":"http://172.*.*.*:8086","active":true,"backlog":false,"rewrite":false},{"name":"influxdb-1-2","url":"http://172.*.*.*:8087","active":true,"backlog":false,"rewrite":false}]},{"circle":{"id":1,"name":"circle-2","active":true,"write_only":false},"backends":[{"name":"influxdb-2-1","url":"http://172.*.*.*:8086","active":true,"backlog":false,"rewrite":false},{"name":"influxdb-2-2","url":"http://172.*.*.*:8087","active":true,"backlog":false,"rewrite":false}]}]

influxdb-cluster安装部署

原文地址:https://www.cnblogs.com/huyuhao/p/14475621.html

您可能感兴趣的文档:

--结束END--

本文标题: influxdb-cluster安装部署

本文链接: https://www.lsjlt.com/news/8099.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • oracle怎么查询当前用户所有的表
    要查询当前用户拥有的所有表,可以使用以下 sql 命令:select * from user_tables; 如何查询当前用户拥有的所有表 要查询当前用户拥有的所有表,可以使...
    99+
    2024-05-14
    oracle
  • oracle怎么备份表中数据
    oracle 表数据备份的方法包括:导出数据 (exp):将表数据导出到外部文件。导入数据 (imp):将导出文件中的数据导入表中。用户管理的备份 (umr):允许用户控制备份和恢复过程...
    99+
    2024-05-14
    oracle
  • oracle怎么做到数据实时备份
    oracle 实时备份通过持续保持数据库和事务日志的副本来实现数据保护,提供快速恢复。实现机制主要包括归档重做日志和 asm 卷管理系统。它最小化数据丢失、加快恢复时间、消除手动备份任务...
    99+
    2024-05-14
    oracle 数据丢失
  • oracle怎么查询所有的表空间
    要查询 oracle 中的所有表空间,可以使用 sql 语句 "select tablespace_name from dba_tablespaces",其中 dba_tabl...
    99+
    2024-05-14
    oracle
  • oracle怎么创建新用户并赋予权限设置
    答案:要创建 oracle 新用户,请执行以下步骤:以具有 create user 权限的用户身份登录;在 sql*plus 窗口中输入 create user identified ...
    99+
    2024-05-14
    oracle
  • oracle怎么建立新用户
    在 oracle 数据库中创建用户的方法:使用 sql*plus 连接数据库;使用 create user 语法创建新用户;根据用户需要授予权限;注销并重新登录以使更改生效。 如何在 ...
    99+
    2024-05-14
    oracle
  • oracle怎么创建新用户并赋予权限密码
    本教程详细介绍了如何使用 oracle 创建一个新用户并授予其权限:创建新用户并设置密码。授予对特定表的读写权限。授予创建序列的权限。根据需要授予其他权限。 如何使用 Oracle 创...
    99+
    2024-05-14
    oracle
  • oracle怎么查询时间段内的数据记录表
    在 oracle 数据库中查询指定时间段内的数据记录表,可以使用 between 操作符,用于比较日期或时间的范围。语法:select * from table_name wh...
    99+
    2024-05-14
    oracle
  • oracle怎么查看表的分区
    问题:如何查看 oracle 表的分区?步骤:查询数据字典视图 all_tab_partitions,指定表名。结果显示分区名称、上边界值和下边界值。 如何查看 Oracle 表的分区...
    99+
    2024-05-14
    oracle
  • oracle怎么导入dump文件
    要导入 dump 文件,请先停止 oracle 服务,然后使用 impdp 命令。步骤包括:停止 oracle 数据库服务。导航到 oracle 数据泵工具目录。使用 impdp 命令导...
    99+
    2024-05-14
    oracle
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作