dolphinscheduler伪集群部署教程

文章目录

  • 前言
  • 一、配置免密登录
    • 1. 配置root用户免密登录
    • 2. 创建用户
      • 2.1 创建dolphinscheduler用户
      • 2.2 配置dolphinscheduler用户免密登录
      • 2.3 退出dolphinscheduler用户
  • 二、安装准备
    • 1. 安装条件
    • 2. 安装jdk
    • 3. 安装MySQL
    • 4. 安装zookeeper
      • 4.1 zookeeper单机部署
        • 4.1.1 zookeeper3.1.4单机部署(忽略)
        • 4.1.2 zookeeper3.8.1单机部署
      • 4.2 启动zookeeper
      • 4.3 zookeeper命令
        • 4.3.1 启动zookeeper
        • 4.3.2 停止zookeeper
        • 4.3.3 重启zookeeper
        • 4.3.4 查看zookeeper状态
        • 4.3.5 进入zookeeper客户端
  • 三、安装dolphinscheduler
    • 1. 下载并解压dolphinscheduler
    • 2. 修改安装配置文件
      • 2.1 修改 install_env.sh 文件
      • 2.2 修改 dolphinscheduler_env.sh 文件
      • 3. 配置mysql数据源
      • 3.1 修改MySQL安全策略
      • 3.2 查看数据库
      • 3.3 创建数据库
      • 3.4 创建MySQL用户
      • 3.5 配置MySQL驱动
    • 4. 初始化数据库
    • 5. 修改目录权限
    • 6. 安装部署dolphinscheduler
    • 7. 登录 DolphinScheduler
    • 8 dolphinscheduler命令
      • 8.1 一键停止集群所有服务
      • 8.2 一键开启集群所有服务
      • 8.3 启停 Master
      • 8.4 启停 Worker
      • 8.5 启停 Api
      • 8.6 启停 Alert
  • 总结


前言

本文将介绍如何配置免密登录和安装DolphinScheduler。首先,我们将配置root用户和dolphinscheduler用户的免密登录。然后,我们将安装所需的软件和依赖项,包括JDK、MySQL和Zookeeper。接下来,我们将下载并解压DolphinScheduler,并修改安装配置文件。然后,我们将配置MySQL数据源并初始化数据库。最后,我们将使用dolphinscheduler用户安装和部署DolphinScheduler,并通过浏览器登录系统UI。


一、配置免密登录

1. 配置root用户免密登录

ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
chmod 600 ~/.ssh/authorized_keys

2. 创建用户

2.1 创建dolphinscheduler用户

dolphinscheduler用户的密码:dolphinscheduler
创建dolphinscheduler用户,配置sudo权限,并切换到dolphinscheduler用户。

useradd dolphinscheduler
echo "dolphinscheduler" | passwd --stdin dolphinscheduler
sed -i '$adolphinscheduler  ALL=(ALL)  NOPASSWD: NOPASSWD: ALL' /etc/sudoers
sed -i 's/Defaults    requirett/#Defaults    requirett/g' /etc/sudoers
su dolphinscheduler

2.2 配置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 退出dolphinscheduler用户

exit

二、安装准备

1. 安装条件

  • jdk版本:1.8+
  • MySQL版本:5.7+
  • MySQL驱动版本:8.0.16+
  • zookeeper版本:3.4.6+

2. 安装jdk

下载地址:https://www.oracle.com/java/technologies/downloads/#java8

下载后上传到/tmp目录下。

然后执行下面命令,用于创建目录、解压,并设置系统级环境变量。

mkdir -p /opt/module
tar -zxvf /tmp/jdk-8u401-linux-x64.tar.gz -C /opt/module/
echo >> /etc/profile
echo '#JAVA_HOME' >> /etc/profile
echo "export JAVA_HOME=/opt/module/jdk1.8.0_401" >> /etc/profile
echo 'export PATH=$PATH:$JAVA_HOME/bin' >> /etc/profile
source /etc/profile

3. 安装MySQL

在hadoop101安装MySQL。

  • mysql5.7.44自动化安装教程
  • mysql5.7.37自动化安装教程

4. 安装zookeeper

4.1 zookeeper单机部署

4.1.1 zookeeper3.1.4单机部署(忽略)

之前使用3.1.4部署之后,安装dolphinscheduler一直报错。更换版本到3.8.1后,解决了一些报错问题。

wget --no-check-certificate https://archive.apache.org/dist/zookeeper/zookeeper-3.4.6/zookeeper-3.4.6.tar.gz -P /tmp
mkdir -p /opt/module/zookeeper
tar -zxvf /tmp/zookeeper-3.4.6.tar.gz -C /opt/module/zookeeper
echo >> /etc/profile
echo '#ZOOKEEPER_HOME' >> /etc/profile
echo 'export ZOOKEEPER_HOME=/opt/module/zookeeper/zookeeper-3.4.6' >> /etc/profile
echo 'export PATH=$PATH:$ZOOKEEPER_HOME/bin' >> /etc/profile
source /etc/profile
cd /opt/module/zookeeper/zookeeper-3.4.6
cp ./conf/zoo_sample.cfg ./conf/zoo.cfg
sed -i "s|^dataDir=.*|dataDir=./tmp/zookeeper|" ./conf/zoo.cfg
sed -i "s|^clientPort=.*|clientPort=12181|" ./conf/zoo.cfg
4.1.2 zookeeper3.8.1单机部署
wget --no-check-certificate https://archive.apache.org/dist/zookeeper/zookeeper-3.8.1/apache-zookeeper-3.8.1-bin.tar.gz -P /tmp
mkdir -p /opt/soft/zookeeper
tar -zxvf /tmp/apache-zookeeper-3.8.1-bin.tar.gz -C /opt/soft/zookeeper
cd /opt/soft/zookeeper/apache-zookeeper-3.8.1-bin
cp ./conf/zoo_sample.cfg ./conf/zoo.cfg
sed -i "s|^dataDir=.*|dataDir=./tmp/zookeeper|" ./conf/zoo.cfg
sed -i "s|^clientPort=.*|clientPort=12181|" ./conf/zoo.cfg

4.2 启动zookeeper

cd /opt/soft/zookeeper/apache-zookeeper-3.8.1-bin
./bin/zkServer.sh start

查看是否启动成功。

./bin/zkServer.sh status

启动成功如下图所示。

在这里插入图片描述

4.3 zookeeper命令

4.3.1 启动zookeeper
cd /opt/soft/zookeeper/apache-zookeeper-3.8.1-bin
./bin/zkServer.sh start
4.3.2 停止zookeeper
cd /opt/soft/zookeeper/apache-zookeeper-3.8.1-bin
./bin/zkServer.sh stop
4.3.3 重启zookeeper
cd /opt/soft/zookeeper/apache-zookeeper-3.8.1-bin
./bin/zkServer.sh restart
4.3.4 查看zookeeper状态
cd /opt/soft/zookeeper/apache-zookeeper-3.8.1-bin
./bin/zkServer.sh status
4.3.5 进入zookeeper客户端
cd /opt/soft/zookeeper/apache-zookeeper-3.8.1-bin
./bin/zkCli.sh -server localhost:12181

三、安装dolphinscheduler

1. 下载并解压dolphinscheduler

wget --no-check-certificate https://archive.apache.org/dist/dolphinscheduler/3.1.4/apache-dolphinscheduler-3.1.4-bin.tar.gz -P /tmp
mkdir -p /opt/soft/dolphinscheduler
tar -zxvf /tmp/apache-dolphinscheduler-3.1.4-bin.tar.gz -C /opt/soft/dolphinscheduler

2. 修改安装配置文件

2.1 修改 install_env.sh 文件

修改 /opt/soft/dolphinscheduler/apache-dolphinscheduler-3.1.4-bin/bin/env/install_env.sh 文件。内容如下所示。

# 需要安装DolphinScheduler相关组件的主机
ips=${ips:-"localhost"}# SSH协议端口号,默认为22。
sshPort=${sshPort:-"22"}# 需要安装master节点的主机
masters=${masters:-"localhost"}# 需要安装worker节点的主机
workers=${workers:-"localhost:default"}# 需要安装警报服务的主机
alertServer=${alertServer:-"localhost"}# 需要安装api服务的主机
apiServers=${apiServers:-"localhost"}# 安装dolphinscheduler的目录。如果不存在,将由install.sh脚本创建。
installPath=${installPath:-"/opt/soft/dolphinscheduler/dolphinscheduler"}# 部署dolphinscheduler的用户
deployUser=${deployUser:-"root"}# zookeeper的根目录,目前DolphinScheduler默认的注册服务器是zookeeper。
zkRoot=${zkRoot:-"/dolphinscheduler"}

2.2 修改 dolphinscheduler_env.sh 文件

修改 /opt/soft/dolphinscheduler/apache-dolphinscheduler-3.1.4-bin/bin/env/dolphinscheduler_env.sh 文件。内容如下所示。

# 修改为自己的jdk安装目录
export JAVA_HOME=${JAVA_HOME:-/opt/module/jdk1.8.0_391}# 修改MySQL配置
export DATABASE=${DATABASE:-mysql}
export SPRING_PROFILES_ACTIVE=${DATABASE}
export SPRING_DATASOURCE_URL="jdbc:mysql://localhost:3306/dolphinscheduler?useUnicode=true&characterEncoding=UTF-8&useSSL=false"
export SPRING_DATASOURCE_USERNAME="dolphinscheduler"
export SPRING_DATASOURCE_PASSWORD="dolphinscheduler"# DolphinScheduler服务相关配置
export SPRING_CACHE_TYPE=${SPRING_CACHE_TYPE:-none}
export SPRING_JACKSON_TIME_ZONE=${SPRING_JACKSON_TIME_ZONE:-UTC}
export MASTER_FETCH_COMMAND_NUM=${MASTER_FETCH_COMMAND_NUM:-10}# 注册中心配置,修改为自己的zookeeper监听地址
export REGISTRY_TYPE=${REGISTRY_TYPE:-zookeeper}
export REGISTRY_ZOOKEEPER_CONNECT_STRING=${REGISTRY_ZOOKEEPER_CONNECT_STRING:-localhost:12181}# 这些环境变量根据自己的需要更改,没有保持默认即口
export HADOOP_HOME=${HADOOP_HOME:-/opt/soft/hadoop}
export HADOOP_CONF_DIR=${HADOOP_CONF_DIR:-/opt/soft/hadoop/etc/hadoop}
export SPARK_HOME1=${SPARK_HOME1:-/opt/soft/spark1}
export SPARK_HOME2=${SPARK_HOME2:-/opt/soft/spark2}
export PYTHON_HOME=${PYTHON_HOME:-/opt/soft/python}
export HIVE_HOME=${HIVE_HOME:-/opt/soft/hive}
export FLINK_HOME=${FLINK_HOME:-/opt/soft/flink}
export DATAX_HOME=${DATAX_HOME:-/opt/soft/datax}
export SEATUNNEL_HOME=${SEATUNNEL_HOME:-/opt/soft/seatunnel}
export CHUNJUN_HOME=${CHUNJUN_HOME:-/opt/soft/chunjun}export PATH=$HADOOP_HOME/bin:$SPARK_HOME1/bin:$SPARK_HOME2/bin:$PYTHON_HOME/bin:$JAVA_HOME/bin:$HIVE_HOME/bin:$FLINK_HOME/bin:$DATAX_HOME/bin:$SEATUNNEL_HOME/bin:$CHUNJUN_HOME/bin:$PATH

3. 配置mysql数据源

3.1 修改MySQL安全策略

修改安全策略为LOW,使其可以设置简单密码,根据自己的需要更改。

mysql -h localhost -P 3306 -uroot -proot -e "set global validate_password_length=4;"
mysql -h localhost -P 3306 -uroot -proot -e "set global validate_password_policy=LOW;"

3.2 查看数据库

查看dolphinscheduler数据库是否存在。

mysql -h localhost -P 3306 -uroot -proot -e "SHOW DATABASES;" | grep dolphinscheduler

若存在则删除。

mysql -h localhost -P 3306 -uroot -proot -e "DROP DATABASE dolphinscheduler;"

3.3 创建数据库

创建dolphinscheduler数据库

mysql -h localhost -P 3306 -uroot -proot -e "CREATE DATABASE dolphinscheduler DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;"

3.4 创建MySQL用户

创建 dolphinscheduler 用户并授予操作 dolphinscheduler 数据库的权限。

此处创建dolphinscheduler用户并设置密码为dolphinscheduler。

mysql -h localhost -P 3306 -uroot -proot -e "CREATE USER 'dolphinscheduler'@'%' IDENTIFIED BY 'dolphinscheduler';"

授予操作 dolphinscheduler 数据库的权限并刷新权限。

mysql -h localhost -P 3306 -uroot -proot -e "GRANT ALL PRIVILEGES ON dolphinscheduler.* TO 'dolphinscheduler'@'%' IDENTIFIED BY 'dolphinscheduler';"
mysql -h localhost -P 3306 -uroot -proot -e "flush privileges;"

3.5 配置MySQL驱动

下载并配置MySQL驱动。

wget https://repo1.maven.org/maven2/mysql/mysql-connector-java/8.0.16/mysql-connector-java-8.0.16.jar -P /tmp
cd /opt/soft/dolphinscheduler/apache-dolphinscheduler-3.1.4-bin
cp /tmp/mysql-connector-java-8.0.16.jar ./worker-server/libs
cp /tmp/mysql-connector-java-8.0.16.jar ./api-server/libs
cp /tmp/mysql-connector-java-8.0.16.jar ./alert-server/libs
cp /tmp/mysql-connector-java-8.0.16.jar ./master-server/libs
cp /tmp/mysql-connector-java-8.0.16.jar ./tools/libs
cp /tmp/mysql-connector-java-8.0.16.jar ./standalone-server/libs/standalone-server
wget https://repo1.maven.org/maven2/commons-cli/commons-cli/1.5.0/commons-cli-1.5.0.jar -P /tmp
cd /opt/soft/dolphinscheduler/apache-dolphinscheduler-3.1.4-bin
cp /tmp/commons-cli-1.5.0.jar ./worker-server/libs
cp /tmp/commons-cli-1.5.0.jar ./api-server/libs
cp /tmp/commons-cli-1.5.0.jar ./alert-server/libs
cp /tmp/commons-cli-1.5.0.jar ./master-server/libs
cp /tmp/commons-cli-1.5.0.jar ./tools/libs

4. 初始化数据库

初始化dolphinscheduler数据库。

cd /opt/soft/dolphinscheduler/apache-dolphinscheduler-3.1.4-bin
bash tools/bin/upgrade-schema.sh

初始化成功如下图所示。

在这里插入图片描述

5. 修改目录权限

修改apache-dolphinscheduler-3.1.4-bin目录权限到dolphinscheduler用户。

cd /opt/soft/dolphinscheduler
chown -R dolphinscheduler:dolphinscheduler apache-dolphinscheduler-3.1.4-bin

6. 安装部署dolphinscheduler

cd /opt/soft/dolphinscheduler/apache-dolphinscheduler-3.1.4-bin
bash ./bin/install.sh

7. 登录 DolphinScheduler

浏览器访问地址 http://localhost:12345/dolphinscheduler/ui 即可登录系统UI。默认的用户名和密码是 admin/dolphinscheduler123

如下图所示。

在这里插入图片描述

8 dolphinscheduler命令

8.1 一键停止集群所有服务

cd /opt/soft/dolphinscheduler/apache-dolphinscheduler-3.1.4-bin
bash ./bin/stop-all.sh

8.2 一键开启集群所有服务

cd /opt/soft/dolphinscheduler/apache-dolphinscheduler-3.1.4-bin
bash ./bin/start-all.sh

8.3 启停 Master

cd /opt/soft/dolphinscheduler/apache-dolphinscheduler-3.1.4-bin
bash ./bin/dolphinscheduler-daemon.sh stop master-server
bash ./bin/dolphinscheduler-daemon.sh start master-server

8.4 启停 Worker

cd /opt/soft/dolphinscheduler/apache-dolphinscheduler-3.1.4-bin
bash ./bin/dolphinscheduler-daemon.sh start worker-server
bash ./bin/dolphinscheduler-daemon.sh stop worker-server

8.5 启停 Api

cd /opt/soft/dolphinscheduler/apache-dolphinscheduler-3.1.4-bin
bash ./bin/dolphinscheduler-daemon.sh start api-server
bash ./bin/dolphinscheduler-daemon.sh stop api-server

8.6 启停 Alert

cd /opt/soft/dolphinscheduler/apache-dolphinscheduler-3.1.4-bin
bash ./bin/dolphinscheduler-daemon.sh start alert-server
bash ./bin/dolphinscheduler-daemon.sh stop alert-server

总结

本文介绍了配置免密登录和安装DolphinScheduler的详细步骤。通过配置免密登录,可以方便地进行远程登录和操作。安装DolphinScheduler需要满足一些前提条件,如安装JDK、MySQL和Zookeeper。在安装过程中,我们修改了安装配置文件并配置了MySQL数据源。最后,我们使用dolphinscheduler用户完成了DolphinScheduler的安装和部署,并通过浏览器登录了系统UI。

希望本教程对您有所帮助!如有任何疑问或问题,请随时在评论区留言。感谢阅读!

参考链接:

  • https://dolphinscheduler.apache.org/zh-cn/docs/3.1.4/guide/installation/pseudo-cluster

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/498576.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

echarts鼠标向右/向左绘制实现放大/还原

echarts toolbox 的datazoom提供了绘制放大的功能,但通过鼠标绘制只能进行放大 应需求放大与还原都通过鼠标行为实现,增加从右往左绘制时还原放大结果 demo 结果 重写datazoom的原型方法实现绘制事件的拦截 const comp myChart._model.getComponent(to…

智慧公厕:打造智慧城市环境卫生新标杆

随着科技的不断发展和城市化进程的加速推进,智慧城市建设已经成为各地政府和企业关注的焦点。而作为智慧城市环境卫生管理的基础设施,智慧公厕的建设和发展也备受重视,被誉为智慧城市的新标杆。本文以智慧公厕源头厂家广州中期科技有限公司&a…

python 中常用的热门库介绍

阅读本文之前请参阅-----如何系统的自学python Python 是一种非常流行的编程语言,它的一个主要优势是拥有一个庞大的生态系统,其中包括许多强大的库。这些库为各种任务提供了解决方案,从数据分析到机器学习,从网络爬虫到图像处理。…

Linux安装Nginx详细步骤

1、创建两台虚拟机,分别为主机和从机,区别两台虚拟机的IP地址 2、将Nginx素材内容上传到/usr/local目录(pcre,zlib,openssl,nginx) 附件 3、安装pcre库   3.1 cd到/usr/local目录 3.2 tar -zxvf pcre-8.36.tar.gz 解压 3.3 cd…

vue使用gitshot生成gif

vue使用gitshot生成gif 问题背景 本文将介绍vue中使用gitshot生成gif。 问题分析 解决思路: 使用input组件上传一个视频,获取视频文件后用一个video组件进行播放,播放过程进行截图生成图片数组。 demo演示上传一个视频,然后生…

【JavaEE进阶】 Spring AOP快速上手

文章目录 🍃什么是AOP🌳什么是Spring AOP🌴上手Spring AOP🚩引入依赖🚩编写AOP程序 ⭕总结 🍃什么是AOP AOP是Aspect Oriented Programming的简称(又称为面向切⾯编程) 什么是面向…

SHARE 100M PRO:航测新高度,精准捕捉每一帧

SHARE 100M PRO:单镜头航测相机的革新,巡检效率与精度的新标杆 在航测和巡检领域,精确的数据采集对于确保项目成功至关重要。SHARE 100M PRO,作为一款单镜头航测相机,以其卓越的性能和创新技术,正在重新定…

Fastjson2 <== 2.0.26反序列漏洞

根据Y4TACKER师傅在2023-03-20发布了一篇关于Fastjson原生反序列化的文章,文章中引入注目的是利用条件限制条件,不常常关注漏洞预警或者内容的几乎都是未发觉Fastjson2 到Fastjson2 2.0.26版本都有问题,其实如果单独去使用一些关键词去搜索&a…

异常处理(黑马学习笔记)

当前问题 登录功能和登录校验功能我们都实现了,下面我们学习下今天最后一块技术点:异常处理。首先我们先来看一下系统出现异常之后会发生什么现象,再来介绍异常处理的方案。 我们打开浏览器,访问系统中的新增部门操作&#xff0…

typescript 的常用方式

文章目录 前言一、绑定props 默认值的方式:withDefaults1.vue2 的props设置默认值2.vue3 的props设置默认值(1) 不设置默认值的写法(2) 设置默认值的写法(分离模式)(3) 设置默认值的写法(组合模式) 二、定义一个二维数…

第七十天 APP攻防-微信小程序解包反编译数据抓包APK信息资源提取

第70天 APP攻防-微信小程序&解包反编译&数据抓包&APK信息资源提取 知识点: 0、APK信息资源提取 1、微信小程序致据抓包 2、做信小程序解包反编译 1、信息收集应用8资产提取&权限等 2、漏润发现-反编泽&脱壳&代码审计 3、安全评估组件8散密…

生成音频二维码:点燃听觉体验的魔法之门

在数字时代,创新不断涌现,生成音频二维码作为数字信息传递的新方式,正逐渐引领着一场音频体验的革命。通过融入二维彩虹技术,音频二维码不再只是静态的图形,而是成为一个能够点燃听觉体验的魔法之门,让我们…