作者:楼高
倡议将 dophinscheduler 集成到 Ambari 装置部署,在 Ambari 下面开启 kerberos
1. 装置筹备
编译
从 GitHub 获取 dolphinscheduler-1.3.9 源码
git clone https://github.com/apache/dolphinscheduler.git -b 1.3.9-release
https://github.com/apache/dolphinscheduler/archive/2.0.3.zip
进入源码目录进行编译
mvn -U clean install -Prpmbuild -Dmaven.test.skip=true -X
编译实现后在 dolphinscheduler-dist/target/rpm/apache-dolphinscheduler/RPMS/noarch 门路下能够找到打包好的 rpm
将编译好的包发送到其余节点
留神:nodejs 版本不要太低,不然编译过程不容易通过,另外 npm 尽量不要应用淘宝镜像
2. 环境筹备
2.1 创立部署用户
抉择须要部署 dolphinscheduler 的机器创立零碎用户 dolphinscheduler
创立部署用户,并且肯定要配置 sudo 免密。以创立 dolphinscheduler 用户为例
useradd dolphinscheduler;
echo "dolphinscheduler" | passwd --stdin dolphinscheduler
# 配置 sudo 免密
echo 'dolphinscheduler ALL=(ALL) NOPASSWD: NOPASSWD: ALL' >> /etc/sudoers
sed -i 's/Defaults requirett/#Defaults requirett/g' /etc/sudoers
# 批改目录权限,使得部署用户对 dolphinscheduler-backend 目录有操作权限
chown -R dolphinscheduler:dolphinscheduler dolphinscheduler
2.2 在部署用户并配置 ssh 本机免密登录
su dolphinscheduler;
ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
chmod 600 ~/.ssh/authorized_keys
2.3 其余待部署的机器配置 ssh 免密
su dolphinscheduler;
for ip in db003.hdp.com db004.hdp.com;
do
ssh-copy-id $ip # 该操作执行过程中须要手动输出 dolphinscheduler 用户的明码
done
2.4 数据库初始化
(1)登陆数据库:mysql -uroot -phdp123456
(2)创立数据库并设置相应权限
CREATE DATABASE dolphinscheduler;
GRANT ALL PRIVILEGES ON dolphinscheduler.* TO 'dolphinscheduler'@'%' IDENTIFIED BY 'hdp123456';
GRANT ALL PRIVILEGES ON dolphinscheduler.* TO 'dolphinscheduler'@'localhost' IDENTIFIED BY 'hdp123456';
GRANT ALL PRIVILEGES ON dolphinscheduler.* TO 'dolphinscheduler'@'current_hostname' IDENTIFIED BY 'hdp123456';
FLUSH PRIVILEGES;
2.5 抉择须要部署 dolphinscheduler 的机器进行 rpm 装置
执行装置命令 rpm -ivh apache-dolphinscheduler-1.3.10-1.noarch.rpm
装置实现后将 mysql 驱动包放到 dolphinscheduler/lib 目录下
2.6 配置调度所执行工作的必要环境
批改 dolphinscheduler 目录 conf 下的 dolphinscheduler_env.sh 环境变量
export HADOOP_HOME=/usr/hdp/3.1.0.0-78/hadoop
export HADOOP_CONF_DIR=/usr/hdp/3.1.0.0-78/hadoop/etc/hadoop/
export SPARK_HOME2=/usr/hdp/3.1.0.0-78/spark2
export PYTHON_HOME=/opt/soft/python
export JAVA_HOME=/opt/module/jdk1.8.0_281
export HIVE_HOME=/usr/hdp/3.1.0.0-78/hive
export FLINK_HOME=/usr/hdp/3.1.0.0-78/flink
export PATH=$HADOOP_HOME/bin:$SPARK_HOME2/bin:$PYTHON_HOME:$JAVA_HOME/bin:$HIVE_HOME/bin:$PATH:$FLINK_HOME/bin:$PATH
组件配置门路依据本人装置门路配置,然而 jdk 必须软链到 /usr/bin/java,否则后续装置实现之后启动会报错 java 命令找不到
ln -s /opt/module/jdk1.8.0_281/bin/java /usr/bin/java
3.Ambari 集成 dophinscheduler
3.1 部署 ambari 插
# 将 dolphinscheduler 自定义集成配置文件拷贝到 ambari-server 服务节点的相干目录
cp -r ambari_plugin/common-services/DOLPHIN /var/lib/ambari-server/resources/common-services/
cp -r ambari_plugin/statcks/DOLPHIN /var/lib/ambari-server/resources/stacks/HDP/3.1/services/
3.2 重启 ambari-server
在 ambari server 部署节点执行重启命令 ambari-server restart
3.3 开始装置
(1)进入 ambari 界面,界面左侧 >> services >> Add service >> Dolphin Scheduler >> NEXT >> 抉择 DS Master
(2)抉择要部署机器
(3)抉择装置组件机器
(4)配置部署的用户,数据库 host 用户名明码,hdfs 地址
(4)实现装置登陆
初始化登陆用户名明码是 admin/dolphinscheduler123,该用户名明码是在后面初始化的时候 sql 导入的用户名明码
(5)登陆界面
更多技术信息请查看云掣官网 https://yunche.pro/?t=yrgw