Druid 0.17 入门(2)—— 安装与部署

Jenna ·
更新时间:2024-11-14
· 689 次阅读

file

在Druid快速入门其实已经简单的介绍过最简化配置的单节点部署,本文我们将详细描述Druid的多种部署方式,对于测试开发环境可以选用轻量的单机部署方式,而生产环境我们最好选用集群部署的方式,确保系统的高可用性。

一、单机部署

Druid提供了一组可以参考的配置和单机部署的启动脚本。

nano-quickstart micro-quickstart small medium large xlarge

micro-quickstart尺寸适合笔记本电脑等小型机器,目的是用于快速评估使用情况。

nano-quickstart适合更小的配置,面向具有1个CPU和4GB内存的计算机。它旨在在资源受限的环境(例如小型Docker容器)中进行有限的评估。

单服务器参考配置 Nano-Quickstart:1个CPU,4GB RAM 启动命令: bin/start-nano-quickstart 配置目录: conf/druid/single-server/nano-quickstart 微型快速入门:4个CPU,16GB RAM 启动命令: bin/start-micro-quickstart 配置目录: conf/druid/single-server/micro-quickstart 小型:8 CPU,64GB RAM(〜i3.2xlarge) 启动命令: bin/start-small 配置目录: conf/druid/single-server/small 中:16 CPU,128GB RAM(〜i3.4xlarge) 启动命令: bin/start-medium 配置目录: conf/druid/single-server/medium 大型:32 CPU,256GB RAM(〜i3.8xlarge) 启动命令: bin/start-large 配置目录: conf/druid/single-server/large 大型X:64 CPU,512GB RAM(〜i3.16xlarge) 启动命令: bin/start-xlarge 配置目录: conf/druid/single-server/xlarge

虽然为大型机器也准备了配置,但是官方还是建议大型的系统采用集群模式部署,

以实现容错和减少资源争用。

二、集群部署 部署建议

集群部署采用的分配如下:

主节点部署 Coordinator 和 Overlord进程 两个数据节点运行 Historical 和 MiddleManager进程 一个查询节点 部署Broker 和 Router进程

未来我们可以添加更多的主节点和查询节点

主节点建议 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/cluster 配置元数据存储 conf/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:///druid druid.metadata.storage.connector.user=druid druid.metadata.storage.connector.password=diurd 配置深度存储

将数据存储配置为S3或者HDFS

比如配置HDFS,修改

conf/druid/cluster/_common/common.runtime.properties druid.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/ 配置zookeeper连接

还是修改

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-server 启动数据服务器 bin/start-cluster-data-server 启动查询服务器 bin/start-cluster-query-server

这样的话 集群就启动成功了!

file

特别注意:多个机器的host不同 注意在common.runtime.properties中改成对应hostname

如果安装过程中有失败 可以考虑清空zk中的/druid 目录 重新安装

静下心来,努力的提升自己,永远都没有错。更多实时计算相关博文,欢迎关注实时流式计算

file


作者:xiangwang2206



安装 druid

需要 登录 后方可回复, 如果你还没有账号请 注册新账号
相关文章