保姆级超详细教程:DolphinScheduler单机(本地)部署及软件
运⾏测试
DolphinScheduler架构图
⽬录
⼀、补充
⼆、部署流程
1.下载⼆进制包
2.创建部署⽤户并赋予⽬录操作权限
3.ssh免密配置
4.数据库初始化
5.修改运⾏参数
6.⼀键部署
7.登录系统
如果你还不够熟悉DolphinScheduler,可以参考:
《调度系统Apache DolphinScheduler介绍和设计原理》
《DolphinScheduler分布式作业管理平台》
⼀、补充
安装psmisc:
apt-get install psmisc
⼆、部署流程
1.下载⼆进制包
注:此处应当下载bin⽂件
mysql windows安装教程
解压
# 创建部署⽬录,部署⽬录请不要创建在 /root、/home 等⾼权限⽬录
mkdir -p /opt/dolphinscheduler
cd/opt/dolphinscheduler
# 解压缩
tar -zxvf apache-dolphinscheduler-1.3.
#重命名
mv apache-dolphinscheduler-1.3.8-bin  dolphinscheduler-bin
笔者在/usr/local位置上创建dolphinscheduler⽂件夹,上传并解压了安装包。随后将压缩包重命名为dolphinscheduler-bin。
mkdir dolphinscheduler
cddolphinscheduler
# 解压缩
tar -zxvf apache-dolphinscheduler-1.3. -C
#重命名
mv apache-dolphinscheduler-1.3.8-bin  dolphinscheduler-bin
附:
查看虚拟机ip地址
ifconfig
inet后跟的值即为ip地址
随后⽤filezilla连接虚拟机,传输⽂件
主机号即为刚刚查询的结果,协议选择SFTP⽽不是默认的FTP,⽤户名为虚拟机系统的⽤户名⽽不是linux终端terminal的⽤户。
连接成功后即可看到linux⽂件⽬录,⽤拖拽的⽅式即可传输⽂件。
笔者此处遇到权限问题:
filezilla报错:
命令:    put"C:\Users\86136\Desktop\apache-dolphinscheduler-1.3.""apache-dolphinscheduler-1.3."错误:    /usr/local/dolphinscheduler/apache-dolphinscheduler-1.3.: openforwrite: permission denied
错误:    ⽂件传输失败
在虚拟机上授权
sudo chmod 777 /usr/local/dolphinscheduler
重新传输,问题解决。
实际上,在安装filezilla后直接拖拽⽂件进虚拟机界⾯也能实现⽂件传输,但就笔者⽽⾔这⼀操作偶尔能够成功但常常导致系统死机。
2.创建部署⽤户并赋予⽬录操作权限
创建部署⽤户,并且⼀定要配置 sudo 免密。以创建 dolphinscheduler ⽤户为例
# 创建⽤户需使⽤ root 登录
useradd dolphinscheduler
# 添加密码
echo"dolphinscheduler"| passwd --stdin dolphinscheduler
# 配置 sudo 免密
sed -i'$adolphinscheduler  ALL=(ALL)  NOPASSWD: NOPASSWD: ALL'/etc/sudoers
sed -i's/Defaults    requirett/#Defaults    requirett/g'/etc/sudoers
# 修改⽬录权限,使得部署⽤户对 dolphinscheduler-bin ⽬录有操作权限
chown -R dolphinscheduler:dolphinscheduler dolphinscheduler-bin
注意:
因为任务执⾏服务是以 sudo -u {linux-user} 切换不同 linux ⽤户的⽅式来实现多租户运⾏作业,所以部署⽤户需要有 sudo 权限,⽽且是免密的。初学习者不理解的话,完全可以暂时忽略这⼀点
如果发现 /etc/sudoers ⽂件中有 "Defaults requirett" 这⾏,也请注释掉
如果⽤到资源上传的话,还需要给该部署⽤户分配操作本地⽂件系统或者 HDFS 或者 MinIO的权限
坑:
echo"dolphinscheduler"| passwd --stdin dolphinscheduler
这步会报错。linux的passwd命令没有--stdin的语法
应该⽤
echo"dolphinscheduler:123456"| chpasswd
修改⽤户dolphinscheduler密码为123456
另外这五条指令在第⼀次成功运⾏时都没有运⾏成功提⽰。
3.ssh免密配置
切换到部署⽤户并配置 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
注意:正常设置后,dolphinscheduler ⽤户在执⾏命令 ssh localhost 是不需要再输⼊密码的
坑:这⾥运⾏会报错Could not create directory '/home/dolphinscheduler/.ssh
需要先以root⾝份在/home下创建dolphinscheduler⽬录再在dolphinscheduler⾥创建.ssh⽬录,
然后切换回dolphinscheduler⽤户执⾏。除此之外可能还需要对这些⽬录进⾏授权。
4.数据库初始化
进⼊数据库,默认数据库是 PostgreSQL,如选择 MySQL 的话,后续需要添加 mysql-connector-java 驱动包到 DolphinScheduler 的 lib ⽬录下
mysql-connector-java下载⽹址:MySQL :: Download Connector/J
注意切换下载linux版并且注意对应版本号。
这⾥对应的主要是ubuntu的版本⽽不是linux版本。
查看ubuntu版本的⽅法 :
cat /proc/version
结果如下:
笔者⽤的18.04版本
下载好后放到DolphinScheduler 的 lib ⽬录下解压
但是笔者此处遇到⼀点问题,下载下来的⽂件解压后的结果似乎并不太常规,没法简单地tar解包
解决⽅法是在windows中解压,然后打开解压出的压缩包,该压缩包⾥./usr/share/java⾥有我们需要的mysql-connector-java-8.0.26.jar,取出来传⼊linux的lib⽂件夹下。
之后执⾏如下指令进⼊数据库:

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。