Druid提供了一组可以参考的配置和单机部署的启动脚本。
nano-quickstartmicro-quickstartsmallmediumlargexlargemicro-quickstart尺寸适合笔记本电脑等小型机器,目的是用于快速评估使用情况。
nano-quickstart适合更小的配置,面向具有1个CPU和4GB内存的计算机。它旨在在资源受限的环境(例如小型Docker容器)中进行有限的评估。
bin/start-nano-quickstartconf/druid/single-server/nano-quickstartbin/start-micro-quickstartconf/druid/single-server/micro-quickstartbin/start-smallconf/druid/single-server/smallbin/start-mediumconf/druid/single-server/mediumbin/start-largeconf/druid/single-server/largebin/start-xlargeconf/druid/single-server/xlarge虽然为大型机器也准备了配置,但是官方还是建议大型的系统采用集群模式部署,
以实现容错和减少资源争用。
集群部署采用的分配如下:
未来我们可以添加更多的主节点和查询节点
主节点建议 8vCPU 32GB内存
配置文件位于
conf/druid/cluster/master数据节点建议
16 vCPU 122GB内存 2 * 1.9TB SSD
配置文件位于
conf/druid/cluster/data查询服务器 建议 8vCPU 32GB内存
配置文件位于
conf/druid/cluster/query下载最新0.17.0发行版
解压
tar -xzf apache-druid-0.17.0-bin.tar.gz
cd apache-druid-0.17.0集群模式的主要配置文件都位于:
conf/druid/clusterconf/druid/cluster/_common/common.runtime.properties替换
druid.metadata.storage.connector.connectURI
druid.metadata.storage.connector.host例如配置mysql为元数据存储
在mysql中配置好访问权限:
-- create a druid database, make sure to use utf8mb4 as encoding
CREATE DATABASE druid DEFAULT CHARACTER SET utf8mb4;
-- create a druid user
CREATE USER 'druid'@'localhost' IDENTIFIED BY 'druid';
-- grant the user all the permissions on the database we just created
GRANT ALL PRIVILEGES ON druid.* TO 'druid'@'localhost';在druid中配置
druid.extensions.loadList=["mysql-metadata-storage"]
druid.metadata.storage.type=mysql
druid.metadata.storage.connector.connectURI=jdbc:mysql://<host>/druid
druid.metadata.storage.connector.user=druid
druid.metadata.storage.connector.password=diurd将数据存储配置为S3或者HDFS
比如配置HDFS,修改
conf/druid/cluster/_common/common.runtime.propertiesdruid.extensions.loadList=["druid-hdfs-storage"]
#druid.storage.type=local
#druid.storage.storageDirectory=var/druid/segments
druid.storage.type=hdfs
druid.storage.storageDirectory=/druid/segments
#druid.indexer.logs.type=file
#druid.indexer.logs.directory=var/druid/indexing-logs
druid.indexer.logs.type=hdfs
druid.indexer.logs.directory=/druid/indexing-logs将Hadoop配置XML(core-site.xml,hdfs-site.xml,yarn-site.xml,mapred-site.xml)放在Druid中
conf/druid/cluster/_common/还是修改
conf/druid/cluster/_common/下的
druid.zk.service.host为zk服务器地址就可以了
启动前注意打开端口限制
主节点:
derby 1527
zk 2181
Coordinator 8081
Overlord 8090
数据节点:
Historical 8083
Middle Manager 8091, 8100–8199
查询节点:
Broker 8082
Router 8088
记得将刚才配好的druid复制到各个节点
由于我们使用外部zk 所以使用no-zk启动
bin/start-cluster-master-no-zk-serverbin/start-cluster-data-serverbin/start-cluster-query-server这样的话 集群就启动成功了!

特别注意:多个机器的host不同 注意在common.runtime.properties中改成对应hostname
如果安装过程中有失败 可以考虑清空zk中的/druid 目录 重新安装