docker swarm搭建tdengine数据库集群

15 篇文章 0 订阅
1 篇文章 0 订阅

前言

docker swarm的搭建就不细说了,使用三个节点来组tdengine集群,社区版有个大坑得注意:无法使用delete,企业版才可以使用delete命令

节点ip地址
taos1192.168.1.236
taos2192.168.1.237
taos3192.168.1.238

这三个节点的Node labels的name设置为role,value设置为db,数据和配置文件都存在glusterfs存储里。

服务端配置

1.设置配置文件

3个节点组成一个集群,每个节点都要单独配置taos.cfg,其firstEp、secondEp、fqdn和serverPort属性都有区别,需单独设置。
节点1 的taos.cfg

# first fully qualified domain name (FQDN) for TDengine system
firstEp                   taos1:6030

# second fully qualified domain name (FQDN) for TDengine system, for cluster only
# taosd启动时,如果first连接不上,尝试连接集群中第二个dnode的end point, 默认值为空。
 secondEp              taos1:6030

# local fully qualified domain name (FQDN)
fqdn                      taos1

# first port number for the connection (12 continuous UDP/TCP port number are used) 
serverPort                6030

# system time zone
 timezone      utc-8

# debug flag for all log type, take effect when non-zero value
 debugFlag             135

节点2的taos.cfg

# first fully qualified domain name (FQDN) for TDengine system
firstEp                   taos1:6030

# second fully qualified domain name (FQDN) for TDengine system, for cluster only
# taosd启动时,如果first连接不上,尝试连接集群中第二个dnode的end point, 默认值为空。
 secondEp              taos2:7030

# local fully qualified domain name (FQDN)
fqdn                      taos2

# first port number for the connection (12 continuous UDP/TCP port number are used) 
serverPort                7030

# system time zone
 timezone      utc-8
 
# debug flag for all log type, take effect when non-zero value
 debugFlag             135

节点3 的taos.cfg

# first fully qualified domain name (FQDN) for TDengine system
firstEp                   taos1:6030

# second fully qualified domain name (FQDN) for TDengine system, for cluster only
# taosd启动时,如果first连接不上,尝试连接集群中第二个dnode的end point, 默认值为空。
 secondEp              taos2:7030

# local fully qualified domain name (FQDN)
fqdn                      taos3

# first port number for the connection (12 continuous UDP/TCP port number are used) 
serverPort                8030

# system time zone
 timezone      utc-8
 
# debug flag for all log type, take effect when non-zero value
 debugFlag             135

2.创建 docker stack文件

在Portainer上直接编辑创建Stack,然后deploy运行服务。

version: '3.7'

services:
  taos1:
    image: tdengine/tdengine:latest
    hostname: taos1
    privileged: true
    ports: # 端口
      - 6020:6020
      - 6030-6042:6030-6042/tcp
      - 6030-6042:6030-6042/udp
    volumes:
      - "/etc/timezone:/etc/timezone:ro"
      - "/etc/localtime:/etc/localtime:ro"
      - "/gfs-share/tdengine/config/taos1/taos.cfg:/etc/taos/taos.cfg"
      - "/gfs-share/tdengine/lib/taos1:/var/lib/taos"
      - "/gfs-share/tdengine/log/taos1:/var/log/taos"
    deploy:
      mode: replicated
      replicas: 1
      placement:
        constraints:                      # 添加条件约束
          - node.labels.role==db
  
  taos2:
    image: tdengine/tdengine:latest
    hostname: taos2
    privileged: true
    ports: # 端口
      - 7020:7020
      - 7030-7042:7030-7042/tcp
      - 7030-7042:7030-7042/udp
    volumes:
      - "/etc/timezone:/etc/timezone:ro"
      - "/etc/localtime:/etc/localtime:ro"
      - "/gfs-share/tdengine/config/taos2/taos.cfg:/etc/taos/taos.cfg"
      - "/gfs-share/tdengine/lib/taos2:/var/lib/taos"  
      - "/gfs-share/tdengine/log/taos2:/var/log/taos"
    deploy:
      mode: replicated
      replicas: 1 
      placement:
        constraints:                      # 添加条件约束
          - node.labels.role==db

  taos3:
    image: tdengine/tdengine:latest
    hostname: taos3
    privileged: true
    ports: # 端口
      - 8020:8020
      - 8030-8042:8030-8042/tcp
      - 8030-8042:8030-8042/udp
    volumes:
      - "/etc/timezone:/etc/timezone:ro"
      - "/etc/localtime:/etc/localtime:ro"
      - "/gfs-share/tdengine/config/taos3/taos.cfg:/etc/taos/taos.cfg"
      - "/gfs-share/tdengine/lib/taos3:/var/lib/taos"
      - "/gfs-share/tdengine/log/taos3:/var/log/taos"
    deploy:
      mode: replicated
      replicas: 1 
      placement:
        constraints:                      # 添加条件约束
          - node.labels.role==db

集群组网

而后就可以参照官方文档,进行集群组网
集群部署

客户端连接

客户端版本必须与服务端一致
最重要的来了: 必须在hosts文件里,将三个节点的FQDN 都配置好,要不无法添加数据。

192.168.1.236 taos1
192.168.1.237 taos2
192.168.1.238 taos3

参考链接添加链接描述

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值