centerOS下docker 搭建IotDB集群

一、准备3台机器,IP地址依次为IP1,IP2,IP3,找一个目录下建立文件夹如下:

./data/confignode
./logs/confignode
./data/datanode
./logs/datanode

二、在当前目录下建立docker-compose.yml文件,3台都要

1、第一台(为主节点的)

version: "3"
services:
  iotdb-confignode:
    image: apache/iotdb:1.1.0-confignode
    restart: always
    container_name: iotdb-confignode
    environment:
      - cn_internal_address=IP1
      - cn_target_config_node_list=IP1:10710
      - schema_replication_factor=3
      - cn_internal_port=10710
      - cn_consensus_port=10720
      - schema_region_consensus_protocol_class=org.apache.iotdb.consensus.ratis.RatisConsensus
      - config_node_consensus_protocol_class=org.apache.iotdb.consensus.ratis.RatisConsensus
      - data_replication_factor=3
      - data_region_consensus_protocol_class=org.apache.iotdb.consensus.iot.IoTConsensus
    volumes:
      - ./data/confignode:/iotdb/data
      - ./logs/confignode:/iotdb/logs
    network_mode: "host"

  iotdb-datanode:
    image: apache/iotdb:1.1.0-datanode
    restart: always
    container_name: iotdb-datanode
    environment:
      - dn_rpc_address=IP1
      - dn_internal_address=IP1
      - dn_target_config_node_list=IP1:10710
      - data_replication_factor=3
      - dn_rpc_port=6667
      - dn_mpp_data_exchange_port=10740
      - dn_schema_region_consensus_port=10750
      - dn_data_region_consensus_port=10760
      - data_region_consensus_protocol_class=org.apache.iotdb.consensus.iot.IoTConsensus
       - schema_replication_factor=3
      - schema_region_consensus_protocol_class=org.apache.iotdb.consensus.ratis.RatisConsensus
      - config_node_consensus_protocol_class=org.apache.iotdb.consensus.ratis.RatisConsensus
    volumes:
      - ./data/datanode:/iotdb/data/
      - ./logs/datanode:/iotdb/logs/
    network_mode: "host"

2、第二台机器

version: "3"
services:
  iotdb-confignode:
    image: apache/iotdb:1.1.0-confignode
    restart: always
    container_name: iotdb-confignode
    environment:
      - cn_internal_address=IP2
      - cn_target_config_node_list=IP2:10710
      - schema_replication_factor=3
      - cn_internal_port=10710
      - cn_consensus_port=10720
      - schema_region_consensus_protocol_class=org.apache.iotdb.consensus.ratis.RatisConsensus
      - config_node_consensus_protocol_class=org.apache.iotdb.consensus.ratis.RatisConsensus
      - data_replication_factor=3
      - data_region_consensus_protocol_class=org.apache.iotdb.consensus.iot.IoTConsensus
    volumes:
      - ./data/confignode:/iotdb/data
      - ./logs/confignode:/iotdb/logs
    network_mode: "host"

  iotdb-datanode:
    image: apache/iotdb:1.1.0-datanode
    restart: always
    container_name: iotdb-datanode
    environment:
      - dn_rpc_address=IP2
      - dn_internal_address=IP2
      - dn_target_config_node_list=IP1:10710
      - data_replication_factor=3
      - dn_rpc_port=6667
      - dn_mpp_data_exchange_port=10740
      - dn_schema_region_consensus_port=10750
      - dn_data_region_consensus_port=10760
      - data_region_consensus_protocol_class=org.apache.iotdb.consensus.iot.IoTConsensus
       - schema_replication_factor=3
      - schema_region_consensus_protocol_class=org.apache.iotdb.consensus.ratis.RatisConsensus
      - config_node_consensus_protocol_class=org.apache.iotdb.consensus.ratis.RatisConsensus
    volumes:
      - ./data/datanode:/iotdb/data/
      - ./logs/datanode:/iotdb/logs/
    network_mode: "host"

3、第三台机器

version: "3"
services:
  iotdb-confignode:
    image: apache/iotdb:1.1.0-confignode
    restart: always
    container_name: iotdb-confignode
    environment:
      - cn_internal_address=IP3
      - cn_target_config_node_list=IP3:10710
      - schema_replication_factor=3
      - cn_internal_port=10710
      - cn_consensus_port=10720
      - schema_region_consensus_protocol_class=org.apache.iotdb.consensus.ratis.RatisConsensus
      - config_node_consensus_protocol_class=org.apache.iotdb.consensus.ratis.RatisConsensus
      - data_replication_factor=3
      - data_region_consensus_protocol_class=org.apache.iotdb.consensus.iot.IoTConsensus
    volumes:
      - ./data/confignode:/iotdb/data
      - ./logs/confignode:/iotdb/logs
    network_mode: "host"

  iotdb-datanode:
    image: apache/iotdb:1.1.0-datanode
    restart: always
    container_name: iotdb-datanode
    environment:
      - dn_rpc_address=IP3
      - dn_internal_address=IP3
      - dn_target_config_node_list=IP1:10710
      - data_replication_factor=3
      - dn_rpc_port=6667
      - dn_mpp_data_exchange_port=10740
      - dn_schema_region_consensus_port=10750
      - dn_data_region_consensus_port=10760
      - data_region_consensus_protocol_class=org.apache.iotdb.consensus.iot.IoTConsensus
       - schema_replication_factor=3
      - schema_region_consensus_protocol_class=org.apache.iotdb.consensus.ratis.RatisConsensus
      - config_node_consensus_protocol_class=org.apache.iotdb.consensus.ratis.RatisConsensus
    volumes:
      - ./data/datanode:/iotdb/data/
      - ./logs/datanode:/iotdb/logs/
    network_mode: "host"

三、分别运行docker-compose.yml文件

docker-compose up -d
相关推荐
later_rql2 小时前
k8s-集群部署1
云原生·容器·kubernetes
漫无目的行走的月亮5 小时前
在Docker中运行微服务注册中心Eureka
docker
大G哥7 小时前
记一次K8S 环境应用nginx stable-alpine 解析内部域名失败排查思路
运维·nginx·云原生·容器·kubernetes
大道归简8 小时前
Docker 命令从入门到入门:从 Windows 到容器的完美类比
windows·docker·容器
zeruns8029 小时前
如何搭建自己的域名邮箱服务器?Poste.io邮箱服务器搭建教程,Linux+Docker搭建邮件服务器的教程
linux·运维·服务器·docker·网站
爱跑步的程序员~9 小时前
Docker
docker·容器
福大大架构师每日一题9 小时前
23.1 k8s监控中标签relabel的应用和原理
java·容器·kubernetes
程序那点事儿9 小时前
k8s 之动态创建pv失败(踩坑)
云原生·容器·kubernetes
疯狂的大狗9 小时前
docker进入正在运行的容器,exit后的比较
运维·docker·容器
长天一色10 小时前
【Docker从入门到进阶】01.介绍 & 02.基础使用
运维·docker·容器