Druid完整版集群安装——druid0.18.1

@羲凡——只为了更好的活着

Druid完整版集群安装——druid0.18.1

前期准备

安装zookeeper、java8、mysql

集群规划
hostname 主节点 数据节点 查询节点 mysql
ml16.com
ml20.com
ml21.com
ml22.com
一、下载解压配置环境变量

每台机器都要操作

1.下载安装包
wget http://archive.apache.org/dist/druid/0.18.1/apache-druid-0.18.1-bin.tar.gz
2.解压并重命名
tar -zxf apache-druid-0.18.1-bin.tar.gz -C ../modules/
mv apache-druid-0.18.1 druid-0.18.1
3.配置环境变量
vim /etc/profile
	#DRUID_HOME
	export DRUID_HOME=/opt/modules/druid-0.18.1
	export PATH=$PATH:$DRUID_HOME/bin
source /etc/profile
二、配置元数据库mysql

登录ml21.com上的mysql

CREATE DATABASE druid DEFAULT CHARACTER SET utf8mb4;

CREATE USER 'druid'@'%' IDENTIFIED BY 'druid';

GRANT ALL PRIVILEGES ON druid.* TO 'druid'@'%';
三、配置Druid参数

任选一台机器比如ml16.com,配置好后分发到别的机器上

1.将hadoop的配置文件core-site.xml,hdfs-site.xml,yarn-site.xml,mapred-site.xml拷贝到 conf/druid/cluster/_common/ 下
2.mysql的jdbc的jar包到 extensions/mysql-metadata-storage/
wget https://dev.mysql.com/get/Downloads/Connector-J/mysql-connector-java-5.1.46.tar.gz
tar -zxf mysql-connector-java-5.1.46.tar.gz
cd mysql-connector-java-5.1.46/
mv mysql-connector-java-5.1.46-bin.jar $DRUID_HOME/extensions/mysql-metadata-storage/
3. 配置共同文件

conf/druid/cluster/_common/common.runtime.properties

## 添加 "mysql-metadata-storage"
druid.extensions.loadList=["mysql-metadata-storage","druid-hdfs-storage", "druid-kafka-indexing-service", "druid-datasketches"]

## 每个机器写自己的ip或hostname
druid.host=ml16.com

## 填写自己的zk地址
druid.zk.service.host=ml14.com:2181,ml15.com:2181,ml16.com:2181
druid.zk.paths.base=/druid

## mysql 地址(将默认的derby参数注释掉)
druid.metadata.storage.type=mysql
druid.metadata.storage.connector.connectURI=jdbc:mysql://ml21.com:3306/druid
druid.metadata.storage.connector.user=druid
druid.metadata.storage.connector.password=druid

## hdfs数据存储(将默认的local disk参数注释掉)
druid.storage.type=hdfs
druid.storage.storageDirectory=/druid/segments
druid.indexer.logs.type=hdfs
druid.indexer.logs.directory=/druid/indexing-logs
4.配置主节点文件(具体参数大小根据自己情况)

conf/druid/cluster/master/coordinator-overlord/jvm.config

-Xms1g
-Xmx1g
-Duser.timezone=UTC+8
-Dfile.encoding=UTF-8
5.配置数据节点文件(具体参数大小根据自己情况)

conf/druid/cluster/data/historical/jvm.config

-Xms128M
-Xmx128M
-XX:MaxDirectMemorySize=1g
-Duser.timezone=UTC+8
-Dfile.encoding=UTF-8

conf/druid/cluster/data/middleManager/jvm.config

-Xms128M
-Xmx128M
-Duser.timezone=UTC+8
-Dfile.encoding=UTF-8
6.配置查询节点文件(具体参数大小根据自己情况)

conf/druid/cluster/data/broker/jvm.config

-Xms1g
-Xmx1g
-XX:MaxDirectMemorySize=6g
-Duser.timezone=UTC+8
-Dfile.encoding=UTF-8

conf/druid/cluster/data/router/jvm.config

-Xms1g
-Xmx1g
-XX:MaxDirectMemorySize=128M
-Duser.timezone=UTC+8
-Dfile.encoding=UTF-8
四、分发并启动
1.分发

如果其他机器上没有安装包,则分发安装包,如果有则只需要分发 extensions 和 conf 两个文件夹即可

scp -r druid-0.18.1/ ml20.com:/opt/modules/
scp -r druid-0.18.1/ ml21.com:/opt/modules/
scp -r druid-0.18.1/ ml22.com:/opt/modules/

分发后一定要修改 common.runtime.properties 中的 druid.host 为本机的ip
分发后一定要修改 common.runtime.properties 中的 druid.host 为本机的ip
分发后一定要修改 common.runtime.properties 中的 druid.host 为本机的ip

2.启动

在主节点上启动(ml16.com)

nohup start-cluster-master-no-zk-server &

在数据节点上启动(ml20.com,ml21.com)

nohup start-cluster-data-server &

在查询节点上启动(ml22.com)

nohup start-cluster-query-server &

关闭服务,先用 ps aux | grep druid找到进程编号,然后kill掉

3.查看界面

http://ml22.com:8888
Druid完整版集群安装——druid0.18.1_第1张图片
可能出现的几种报错:
a、如果你服务起不来,先看看你的jvm参数是不是太大了
b、数据库链接不上,先看看你的jdbc的mysql的jar包有没有放在指定目录下
c、如果8888界面上有一些错误信息,则删除var目录下的文件重启即可
d、如果8888界面上显示的services数量不一致,则检查 druid.host 参数

====================================================================

@羲凡——只为了更好的活着

若对博客中有任何问题,欢迎留言交流

你可能感兴趣的:(Druid)