首页主机资讯CentOS Dolphin集群部署方法

CentOS Dolphin集群部署方法

时间2025-12-12 18:06:04发布访客分类主机资讯浏览1433
导读:适用说明与架构概览 本文面向 DolphinDB(分布式时序/列式数据库)在 CentOS 7.x 上的集群部署,涵盖 controller(控制节点)、agent(代理节点)、datanode(数据节点) 的部署与初始化。 典型拓扑示例...

适用说明与架构概览

  • 本文面向 DolphinDB(分布式时序/列式数据库)在 CentOS 7.x 上的集群部署,涵盖 controller(控制节点)agent(代理节点)datanode(数据节点) 的部署与初始化。
  • 典型拓扑示例:
    • dolphindb1(172.16.1.11):controller + agent + datanode
    • dolphindb2(172.16.1.12):agent + datanode
  • 节点职责简述:
    • controller:管理集群元数据与协调,不作为常规任务入口
    • agent:负责本机数据节点的启停与管控
    • datanode:承载数据存储与查询计算入口

环境准备与系统配置

  • 基础依赖与平台
    • 推荐 CentOS 7.x,内核 ≥ 2.6.19,安装 gcc ≥ 4.8.5
    • 建议为元数据/日志与数据分盘,优先 SSD;多盘可提升吞吐
  • 文件系统与 inode
    • 推荐 XFS(支持动态调整 inode);若使用 ext4 等不支持硬链接的文件系统,更新/写入性能可能受影响
    • 检查与调优 inode(XFS):
      • 查看:xfs_info /mount/point | grep imaxpct;df -i
      • 调整:xfs_growfs -m 30 /mount/point(示例将 inode 占比调至 30%)
  • 主机名与解析
    • 配置 /etc/hosts,确保各节点可通过主机名互通
  • 防火墙与 SELinux(测试/内网环境常用做法)
    • 关闭防火墙:systemctl disable --now firewalld
    • 临时禁用 SELinux:setenforce 0;永久:/etc/selinux/config 中设为 SELINUX=disabled
  • 时间同步
    • 安装并启用 chrony,使用国内 NTP 源(如 ntp.aliyun.com),保证节点间时间一致性

安装与配置步骤

  • 安装介质与目录
    • 下载 DolphinDB Linux 64 位发行包,解压至安装目录(示例:/datas/app/dolphindb)
    • 每台机器创建目录:mkdir -p config data log
  • 许可证
    • 将有效许可证文件 dolphindb.lic 放置于 server 目录,替换默认文件
  • 配置 controller(示例:172.16.1.11)
    • config/controller.cfg
      • mode=controller
      • localSite=172.16.1.11:8990:master
      • dfsReplicationFactor=2
      • dfsMetaDir=/datas/app/dolphindb/server/dfsMeta
      • dataSync=1
      • lanCluster=0
  • 配置 cluster.nodes(集群成员清单)
    • config/cluster.nodes
      • 172.16.1.11:8960:dolphindb1-agent,agent
      • 172.16.1.11:8961:dolphindb1-NODE1,datanode
      • 172.16.1.12:8960:dolphindb2-agent,agent
      • 172.16.1.12:8961:dolphindb2-NODE1,datanode
  • 配置 cluster.cfg(共享参数与节点级目录)
    • maxConnections=512;workerNum=4;localExecutors=3;webWorkerNum=2
    • 节点级目录与存储(示例为双盘):
      • dolphindb1-NODE1.chunkMetaDir=/datas/app/dolphindb/server/chunkMeta
      • dolphindb2-NODE1.chunkMetaDir=/datas/app/dolphindb/server/chunkMeta
      • dolphindb1-NODE1.volumes=/datas/dolphindbData/dolphindb1-NODE1,/data/dolphindbData/dolphindb1-NODE1
      • dolphindb2-NODE1.volumes=/datas/dolphindbData/dolphindb2-NODE1,/data/dolphindbData/dolphindb2-NODE1
      • dolphindb1-NODE1.persistenceDir=/datas/app/dolphindb/server/persistence
      • dolphindb2-NODE1.persistenceDir=/datas/app/dolphindb/server/persistence
      • dolphindb1-NODE1.subPort=8962;dolphindb2-NODE1.subPort=8962
      • lanCluster=0;preloadModules=plugins::parquet
  • 配置 agent(两台机器)
    • config/agent.cfg
      • mode=agent
      • localSite=本机IP:8960:本机-agent
      • controllerSite=172.16.1.11:8990:master
      • workerNum=3;localExecutors=2;maxMemSize=4
      • lanCluster=0
  • 启动顺序
    • 各节点先启动 agent,再在 controller 所在节点启动 controller
    • 启动脚本示例(后台运行):
      • agent:nohup ./dolphindb -console 0 -mode agent -home data -script dolphindb.dos -config config/agent.cfg -logFile log/agent.log &
      • controller:nohup ./dolphindb -console 0 -mode controller -home data -script dolphindb.dos -config config/controller.cfg -logFile log/controller.log -nodesFile config/cluster.nodes -clusterConfig config/cluster.cfg &
  • 初始化数据节点
    • 浏览器访问 http://172.16.1.11:8990,使用默认账户 admin/123456 登录
    • 在 Web 管理界面勾选并启动所有 datanode

验证与常见问题

  • 连通性与进程
    • 检查进程:ps -ef | grep dolphindb
    • 端口连通:telnet 目标IP 端口(如 8990/8961/8962),或 ss -lntp | grep dolphindb
  • 日志与告警
    • 查看 controller.log、agent.log、datanode.log 是否有异常堆栈或磁盘满告警
  • 常见原因
    • 防火墙/SELinux 未放行导致节点无法注册或连接失败
    • 主机名解析不一致,导致节点间通信异常
    • 许可证节点数不足(社区版限制),需使用企业版 license 扩容
    • 磁盘空间或 inode 耗尽,导致写入失败(XFS 可调大 imaxpct)

Docker 快速部署方案(可选)

  • 适用场景:快速演示、CI/测试环境
  • 步骤要点
    • 准备 Docker 环境,下载 DolphinDB Docker-Compose 部署包
    • 替换 dolphindb.lic(社区版通常不支持 5 数据节点 + 1 控制节点,需企业版)
    • 构建镜像并启动:docker-compose up -d
    • 访问 http://localhost:8888 打开 Web 管理界面,启动数据节点
  • 注意
    • Docker 虚拟网络下 UDP 可能异常,需在 agent.cfg 与 cluster.cfg 中设置 lanCluster=0
    • 默认示例包含多个容器与固定虚拟 IP,便于快速验证多节点拓扑

名称辨析

  • 本文档面向 DolphinDB 集群部署。若你实际需要部署的是 Apache DolphinScheduler(工作流调度系统),其组件为 Master/Worker/Api/Alert,依赖 JDK 1.8+、Zookeeper、MySQL/PostgreSQL,部署步骤与本文完全不同

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: CentOS Dolphin集群部署方法
本文地址: https://pptw.com/jishu/770735.html
CentOS Dolphin权限设置指南 Jenkins在Linux上怎样配置持续集成

游客 回复需填写必要信息