首页 > 其他分享 >搭建单机版DolphinScheduler,并编写启动关闭脚本

搭建单机版DolphinScheduler,并编写启动关闭脚本

时间:2024-09-10 11:55:10浏览次数:7  
标签:bin dolphinscheduler 单机版 standalone DolphinScheduler server sh mysql 搭建

一.为什么要搭建单机版

DolphinScheduler支持多种部署模式,包括单机模式(Standalone)、伪集群模式(Pseudo-Cluster)、集群模式(Cluster)等。
在其他模式下配置完成后启动会非常的吃内存,对电脑非常的不友好。而单机模式就不会有这种情况,在我的虚拟机里启动单机模式后大概也就占了1G左右的运存,非常适合我们学习使用。
但是在官方给的单机模式搭建并不详细,并且单机模式下所有的服务都集中在一个StandaloneServer进程中,内置的数据库是H2基于内存的,因此会导致当我们创建了一个项目后,如果关闭了服务再次启动后就会发现创建的项目消失了,无法进行持续化保存。
因此我们需要把H2更换成mysql进行存储,操作步骤如下。


二.如何解决不能持久化存储的问题?

将安装包放入虚拟机并解压。解压完成后
cd apache-dolphinscheduler-3.1.8-bin进入
并运行如下命令把mysql的驱动包复制进来

cp /opt/installs/hive/lib/mysql-connector-java-8.0.26.jar ./api-server/libs/
cp /opt/installs/hive/lib/mysql-connector-java-8.0.26.jar ./alert-server/libs/
cp /opt/installs/hive/lib/mysql-connector-java-8.0.26.jar ./master-server/libs/
cp /opt/installs/hive/lib/mysql-connector-java-8.0.26.jar ./worker-server/libs/
cp /opt/installs/hive/lib/mysql-connector-java-8.0.26.jar ./tools/libs/
cp /opt/installs/hive/lib/mysql-connector-java-8.0.26.jar ./standalone-server/libs/standalone-server/

到这其实官方文档指导的单机模式就已经配置好了可以使用了,这时可以去测试一下,先启动创建一个项目然后重启服务再次查看发现项目消失(不想看也不影响),命令如下。
因为是单机模式所以也不需要启动zookeeper服务。

# 启动 Standalone Server 服务
bash ./bin/dolphinscheduler-daemon.sh start standalone-server
# 停止 Standalone Server 服务
bash ./bin/dolphinscheduler-daemon.sh stop standalone-server
# 查看 Standalone Server 状态
bash ./bin/dolphinscheduler-daemon.sh status standalone-server

访问网址访问地址:http://bigdata01:12345/dolphinscheduler/ui
账号和密码:  admin  dolphinscheduler123

继续配置:

然后在mysql的可视化软件,比如我使用的是datagrip软件上执行如下命令。
要注意一点,运行是在虚拟机的mysql连接,而不是window电脑上的mysql!

CREATE DATABASE dolphinscheduler DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;

创建用户[非必须的]
假如你想创建,会遇到密码太简单的问题:
如果提示密码等级过低:
#mysql8
set global validate_password.policy=LOW;
set global validate_password.length=4;
set global validate_password.mixed_case_count=0;
set global validate_password.number_count=0;
set global validate_password.special_char_count=0;

创建新用户:

CREATE USER 'dolphinscheduler'@'%' IDENTIFIED BY '123456';
GRANT ALL PRIVILEGES ON dolphinscheduler.* TO 'dolphinscheduler'@'%';
FLUSH PRIVILEGES;

执行完后可以看到数据库被创建了,但是里面还没有表因为我们没有进行初始化操作,下面将会进行操作。


在虚拟机再执行如下命令:
(执行前要先cd到软件的bin目录下!)
数据库密码等个人配置的信息要改成自己的。
比如全文的bigdata01都是我的虚拟机ip,需要改成自己虚拟机的ip信息。

export DATABASE=mysql
export SPRING_PROFILES_ACTIVE=dolphinscheduler
export SPRING_DATASOURCE_URL="jdbc:mysql://bigdata01:3306/dolphinscheduler?useUnicode=true&characterEncoding=UTF-8&useSSL=false&allowPublicKeyRetrieval=true"
export SPRING_DATASOURCE_USERNAME=dolphinscheduler
export SPRING_DATASOURCE_PASSWORD=123456

然后在虚拟机进行输入下面命令来初始化数据库:

bash tools/bin/upgrade-schema.sh

这是成功的话就可以看到可视化软件对应的数据库里多了一堆表。

然后修改apache-dolphinscheduler-3.1.8-bin/standalone-server/conf下的application.yaml文件,
如下的配置在文件里有大概三处,只修改38行附近的那一出!并且格式要求十分严格注意不要多空格或少空格要与文件内格式对齐,正常的话粘贴如下进去就是正常格式。

  datasource:
    driver-class-name: com.mysql.cj.jdbc.Driver
    url: jdbc:mysql://bigdata01:3306/dolphinscheduler?useUnicode=true&characterEncoding=UTF-8&useSSL=false&allowPublicKeyRetrieval=true
    username: dolphinscheduler
    password: 123456

到这里持久化保存完成了,
想尝试看效果的话命令如下:

# 启动 Standalone Server 服务
bash ./bin/dolphinscheduler-daemon.sh start standalone-server
# 停止 Standalone Server 服务
bash ./bin/dolphinscheduler-daemon.sh stop standalone-server
# 查看 Standalone Server 状态
bash ./bin/dolphinscheduler-daemon.sh status standalone-server

访问网址访问地址:http://bigdata01:12345/dolphinscheduler/ui
账号和密码:  admin  dolphinscheduler123
这时持久化完成但是上传文件会发现存储未启用,需要继续配置。


三.配置连接hdfs

修改standalone-server下的common.properties修改内容,

修改内容如下(第二条不用改)

resource.storage.type=HDFS
resource.storage.upload.base.path=/dolphinscheduler
resource.hdfs.fs.defaultFS=hdfs://bigdata01:9820

修改完成后在虚拟机执行hdfs dfs -chmod 777 /
cd ~再执行,在bin下执行报错

这时重启服务发现报错变成了未指定租户,说明配置成功了。在页面进行相关操作后即可使用。


至此单机模式以及持久化保存就彻底完成了。

四.配置脚本方便启动,以及基础操作

由于每次启动关闭都要去文件下非常的不方便因此设置脚本使其在任何位置都可以实现一个命令启动或者关闭,因此编写一个脚本如下:
自己写的脚本建议都放在一个目录下我的在/usr/home/bin下都是自己编写的脚本,方便管理

#!/bin/bash  

cd /opt/modules/apache-dolphinscheduler-3.1.8-bin   
# 假设status_output变量之前已经被正确设置,但在这个脚本中我们需要重新获取它  
status_output=$(./bin/dolphinscheduler-daemon.sh status standalone-server 2>&1)  
  
# 检查传递给脚本的第一个参数  
case "$1" in  
    1)  
        # 如果参数是1,则执行启动逻辑  
        if ! echo "$status_output" | grep -q "standalone-server  \[  RUNNING  \]"; then  
            bash ./bin/dolphinscheduler-daemon.sh start standalone-server  
            sleep 5  
            ./bin/dolphinscheduler-daemon.sh status standalone-server  
        fi  
        ;;  
    0)  
        # 如果参数是0,则执行停止逻辑  
        if ! echo "$status_output" | grep -q "standalone-server  \[  STOP  \]"; then  
            bash ./bin/dolphinscheduler-daemon.sh stop standalone-server  
            sleep 5  
            ./bin/dolphinscheduler-daemon.sh status standalone-server  
        fi  
        ;;  
    *)  
        # 如果参数既不是1也不是0,则打印错误消息  
        echo "Usage: $0 [1|0]"  
        exit 1  
        ;;  
esac  
jps-cluster.sh  
echo "脚本执行结束"

注意脚本中的jps-cluster.sh也是我自己的脚本如果没有就换成jps或直接不要!
cd /opt/modules/apache-dolphinscheduler-3.1.8-bin   cd后面路径换成自己的软件路径!
然后给脚本赋权限让它可以方便快捷的执行我的脚本叫mydolphin.sh 那就在虚拟机控制台执行权限赋予语句:
注意执行的时候要在放脚本的文件夹下。

chmod 777 mydolphin.sh 

这样我们

mydolphin.sh 1就会启动脚本并打印jps(jps-cluster.sh)也是自己的脚本效果是打印所有虚拟机的jps,要是没有的话就改成jps。
mydolphin.sh 0就可以关闭脚本。
非常的便捷非常的舒适。

脚本说完了,说一下简单的操作

安全中心创建租户和用户,

在用户添加创建的租户并且可以添加项目:

更改时区和密码,

时区

密码


设置任务

执行任务

查看日志也就是任务结果

标签:bin,dolphinscheduler,单机版,standalone,DolphinScheduler,server,sh,mysql,搭建
From: https://blog.csdn.net/yyzzyyds/article/details/142052414

相关文章

  • DolphinScheduler:大数据任务调度利器
    目录一、概述二、主要特性三、DolphinScheduler架构四、安装与配置1.环境准备2.安装步骤[单机模式]五、使用DolphinScheduler创建任务六、应用场景七、总结一、概述在大数据场景中,任务调度器是必不可少的工具,用于协调多个数据处理任务的执行顺序、调度时间......
  • fuxa搭建与使用(web组态)
    fuxa搭建与使用(web组态)1.安装Node.js->npm安装参考网址:https://blog.csdn.net/WHF__/article/details/129362462一、安装运行C:\WINDOWS\system32>node-vv20.17.0C:\WINDOWS\system32>npm-v10.8.2二、环境配置在安装路径(D:\Program_Files\nodejs)目录下新建文件夹node_ca......
  • pikachu靶场的详细搭建,附pikachu靶场源码下载链接
    一、安装好phpstudy首先搭建pikachu靶场的第一步,先是安装好phpstudy,这是一款集成环境的软件,里面包含了Apache,FTP,MySQL,Nginx。phpstudy的官方网址:https://www.xp.cn/download.这里就根据大家的需要,选择Windows版,查看电脑的型号选择对应的PhpStudyV8版本位数,但现在一般电脑配置......
  • 实例讲解Simulink CAN通讯丢失故障判定模型搭建及仿真测试验证方法
    在电动汽车VCU软件开发中,要开发故障诊断模块,故障诊断类型中CAN报文通讯丢失的判定是非常重要的一个,当检测到某个控制器CAN报文通讯丢失,即接收不到该控制器的有效CAN信号,需要根据通讯丢失的判断作出相应的故障处理,以保证整车行车安全。本文通过ABS通讯丢失Simulink模块的搭建,介......
  • C10-04-1-历史漏洞环境搭建和练习
    一、TomcatPUT方法任意写文件漏洞(CVE-2017-12615)1.1漏洞原理ApacheTomcat7.0.0版本至7.0.79版本存在远程代码执行漏洞。当上述版本的Tomcat启用HTTPPUT请求方法时,远程攻击者可以构造恶意请求利用该漏洞向服务器上传包含任意代码执行的jsp文件,并被服务器执行该文件,导致......
  • openstack搭建
    基础环境准备一下操作2个节点都要做,单独的会标识的1、修改主机名[root@controller~]#vim/etc/hosts127.0.0.1localhostlocalhost.localdomainlocalhost4localhost4.localdomain4::1localhostlocalhost.localdomainlocalhost6localhost6.localdomain6......
  • 搭建lsky兰空图床
    这是一个开源的图床工具官网:LskyPro-属于您自己的云上相册。官方文档:LskyPro需要的东西:1、一台随便什么系统的服务器2、一双手跟你的小脑袋下载图床工具可以直接去Git下来或者直接通过这个我的网盘链接下载:官方GitHub:Lsky-org/lsky-pro:兰空图床我的网盘:lsky-p......
  • 海豚调度器(DolphinScheduler)单机模式的部署与使用
    一、概述1、什么是DolphinScheduler  ApacheDolphinScheduler(下面简称DS) 是一个为企业级应用场景设计的开源任务调度系统,它提供了分布式的、可扩展的并且易于使用的可视化界面,让用户能够高效地管理和调度复杂的工作流任务,覆盖从任务创建到监控的全生命周期数据处理流程......
  • Java代码审计篇 | ofcms系统审计思路讲解 - 篇1 | 环境搭建、路由机制
    文章目录Java代码审计篇|ofcms系统审计思路讲解-篇1|环境搭建、路由机制1.前言2.项目环境搭建3.项目路由机制3.1.1)先搜索pom.xml文件,看看使用了什么框架3.2.2)确定是否是spring的路由机制3.3.3)确定自写路由机制的特点3.4.4)从前端探索3.5.5)断点调试3.6.6)寻......
  • FancyVideo环境搭建&推理
    ​引子很少关注360开源的代码,最近360AI团队开源了最新视频模型FancyVideo,据说RTX3090可跑。可以在消费级显卡(如GeForceRTX3090)上生成任意分辨率、任意宽高比、不同风格、不同运动幅度的视频,其衍生模型还能够完成视频扩展、视频回溯的功能,一种基于UNet架构的视频生成......