Druid 0.17 入門(2)—— 安裝與部署


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://<host>/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 目錄 重新安裝

大數據流動 專注於大數據實時計算,數據治理,數據可視化等技術分享與實踐。
請在后台回復關鍵字下載相關資料。相關學習交流群已經成立,歡迎加入~


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM