Windows 本地安装部署 Apache Druid

在 Windows 本地安装部署 Apache Druid 可以按照以下步骤进行。由于 Druid 是基于 Java 的应用,需要先准备好 Java 环境,然后下载配置 Druid。

一、环境准备

1. 安装 Java

确保已安装 Java 8 或以上版本(推荐 Java 11):

  • 下载并安装 OpenJDK:Adoptium
  • 配置环境变量:
    • JAVA_HOME:指向 JDK 安装目录(如 C:\Program Files\Eclipse Adoptium\jdk-11.0.16.101-hotspot
    • PATH:添加 %JAVA_HOME%\bin

验证 Java 安装:

复制代码
java -version
# 输出示例:openjdk version "11.0.16.1" 2022-08-12
2. 安装 ZooKeeper

Druid 依赖 ZooKeeper 协调集群,需单独安装:

  • 下载 ZooKeeper:Apache ZooKeeper(如 3.7.0 版本)

  • 解压到目录(如 C:\zookeeper-3.7.0

  • 创建数据目录:mkdir C:\zookeeper-3.7.0\data

  • 复制配置模板: powershell

    复制代码
    cd C:\zookeeper-3.7.0\conf
    copy zoo_sample.cfg zoo.cfg
  • 编辑 zoo.cfg,修改数据目录:

    properties

    复制代码
    dataDir=C:/zookeeper-3.7.0/data

二、下载并配置 Druid

1. 下载 Druid

从官网下载稳定版本:Apache Druid Releases

解压到目录(如 C:\druid-0.25.0)。

2. 修改配置文件

主要修改内存配置(Windows 默认配置可能过高):

  • 编辑 conf/druid/cluster/coordinator/runtime.properties,减少内存:

    properties

    复制代码
    druid.service=druid/coordinator
    druid.coordinator.period=PT30S
    druid.jetty.threads.max=10
    -Xmx512m  # 原配置可能为2g,减少到512m
    -Xms512m
  • 类似地,修改其他组件(broker、historical、overlord)的内存配置。

三、启动服务

1. 启动 ZooKeeper
复制代码
cd C:\zookeeper-3.7.0
bin\zkServer.cmd
2. 启动 Druid

打开多个 PowerShell 窗口,分别启动以下组件(按顺序):

1. Coordinator(集群协调器)

复制代码
cd C:\druid-0.25.0
bin\start-coordinator.bat

2. Overlord(任务调度)

复制代码
cd C:\druid-0.25.0
bin\start-overlord.bat

3. Historical(历史数据服务)

复制代码
cd C:\druid-0.25.0
bin\start-historical.bat

4. Broker(查询代理)

复制代码
cd C:\druid-0.25.0
bin\start-broker.bat

5. Router(可选,统一入口)

复制代码
cd C:\druid-0.25.0
bin\start-router.bat

四、验证安装

1. 访问控制台

打开浏览器,访问:http://localhost:8888

应看到 Druid 控制台界面,显示集群状态。

2. 加载示例数据

在控制台中,点击 Load dataQuickstartwikipedia,提交数据加载任务。

任务完成后,在 Datasources 标签页应看到 wikipedia 数据源。

3. 执行查询

在控制台的 Query 标签页,选择 wikipedia 数据源,执行示例查询:

复制代码
SELECT COUNT(*) AS cnt FROM wikipedia

应返回查询结果。

五、常见问题及解决方案

1. 内存不足问题

若启动时报 java.lang.OutOfMemoryError,修改各组件的 JVM 内存参数(如 -Xmx512m)。

2. 端口冲突

若提示端口被占用,修改 conf/druid/cluster 下对应组件的 runtime.properties 中的端口配置。

3. ZooKeeper 连接失败

确保 ZooKeeper 正常运行,且 Druid 配置文件中的 ZK 地址正确(默认 localhost:2181)。

4. Windows 路径问题

若遇到路径解析错误,确保配置文件中的路径使用 / 而非 \,或使用双反斜杠 \\

六、关闭服务

按与启动相反的顺序关闭各组件(在对应 PowerShell 窗口按 Ctrl+C):

  1. Router
  2. Broker
  3. Historical
  4. Overlord
  5. Coordinator
  6. ZooKeeper

七、进一步配置

  • 持久化存储 :修改 conf/druid/cluster/common/runtime.properties,配置深度存储(如本地路径或 S3)。
  • 多节点集群:在不同机器或端口启动多个组件实例,配置相互发现。
  • 生产环境优化:调整 JVM 参数、增加内存、配置监控(如 Prometheus+Grafana)。

通过以上步骤,你可以在 Windows 本地成功部署并验证 Druid 单节点环境。若需更复杂的生产环境,建议使用 Linux 或 Docker 部署。

相关推荐
Do_GH6 小时前
【Linux】07.Ubuntu开发环境部署
linux·运维·ubuntu
勤源科技6 小时前
全链路智能运维中的实时流处理架构与状态管理技术
运维·架构
tryCbest6 小时前
Linux使用Docker部署项目后期更新
linux·运维·docker
早睡冠军候选人8 小时前
Ansible学习----Ansible Playbook
运维·服务器·学习·云原生·容器·ansible
sulikey8 小时前
从实验出发深入理解Linux目录权限:r、w、x分别控制什么?能否进入目录到底由谁决定?
linux·运维·服务器·ubuntu·centos
kobe_OKOK_9 小时前
windows 下载 pip包,debian离线安装
windows·debian·pip
li37149089010 小时前
nginx报400bad request 请求头过大异常处理
java·运维·nginx
久曲健的测试窝10 小时前
Jenkins Share Library教程 —— 开发入门
运维·servlet·jenkins
游戏开发爱好者811 小时前
FTP 抓包分析实战,命令、被动主动模式要点、FTPS 与 SFTP 区别及真机取证流程
运维·服务器·网络·ios·小程序·uni-app·iphone
默 语11 小时前
AI驱动软件测试全流程自动化:从理论到实践的深度探索
运维·人工智能·驱动开发·ai·自动化·ai技术·测试全流程