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 部署。

相关推荐
老实巴交的麻匪12 分钟前
Logs 可观测性 | Grafana Loki 架构窥探与实践
运维·云原生·容器
MarkGosling26 分钟前
【开源项目】轻量加速利器 HubProxy 自建 Docker、GitHub 下载加速服务
运维·git·docker·容器·开源·github·个人开发
java叶新东老师1 小时前
Linux /proc/目录详解
linux·运维·服务器
默|笙2 小时前
【Linux】基本指令(2)
linux·运维·服务器
conkl6 小时前
构建 P2P 网络与分布式下载系统:从底层原理到安装和功能实现
linux·运维·网络·分布式·网络协议·算法·p2p
π大星星️8 小时前
Nginx 四层(stream)反向代理 + DNS 负载均衡
运维·nginx·负载均衡
beyoundout9 小时前
HAproxy
linux·运维·服务器
qq_2187533110 小时前
服务器查日志太慢,试试grep组合拳
运维·服务器
Jie_1711 小时前
【linux】高可用集群Keepalived
linux·运维·服务器
思绪漂移11 小时前
阿里云【免费试用】Elasticsearch 智能运维 AI 助手
运维·elasticsearch·阿里云