安装Schedulis0.7.0
下载源码
使用 Git 下载 Schedulis 项目文件 git clone https://github.com/WeBankFinTech/Schedulis.git
下载 jobtypes 插件的依赖和配置,链接:https://share.weiyun.com/RgAiieMx 密码:det7rf(由于文件大小较大,所以放在网盘进行管理),下载时请注意对应版本号(Schedulis jobtypes > Schedulis xxx(version) > jobtypes.zip)
mkdir -p /opt/schedulis
初始化数据库
Schedulis-release-0.7.0/bin/construct目录下
mysql -u hadoop -p -h datasphere --default-character-set=utf8
create database schedulis;
use schedulis;
source hdp_schedulis_deploy_script.sql
配置文件
源码 bin/construct 目录 execute-as-user ,复制到schedulis_xxx_exec/lib/下,并更新权限
sudo chown hadoop execute-as-user
sudo chmod 6050 execute-as-user
bin/internal/host.properties
#该文件未存在需创建
vi /opt/schedulis/schedulis_0.7.0_exec/bin/internal/host.properties
datasphere=1
bin/internal/internal-start-executor.sh
#Executor Server 配置修改
vi bin/internal/internal-start-executor.sh
hostConf=/opt/schedulis/schedulis_0.7.0_exec/bin/internal/host.properties
conf/azkaban.properties
此配置文件是 ExecServer 的核心配置文件,
#项目 MySQL 服务端地址(密码用 Java base64 加密)
mysql.port=3306
mysql.host=datasphere
mysql.database=schedulis
mysql.user=hadoop
mysql.password=aGFkb29w #hadoop
mysql.numconnections=100
#Executor Server 默认端口为 12321,如有冲突可修改
executor.port=12321
#此 server id 请参考《1. 修改 host.properties》 中的 host.properties,改配置会在服务启动的时候自动从host.properties中拉取
executor.server.id=1
#Web Sever url相关配置,port 需与 WebServer 的 conf/azkaban.properties 中的 jetty.port 一致,
azkaban.webserver.url=http://datasphere:8061
plugins/jobtypes/commonprivate.properties
#以下四项配置指向对应组件的安装目录,请将它们修改成相应的组件安装目录
hadoop.home=/opt/hadoop/hadoop-2.7.2
hadoop.conf.dir=/opt/hadoop/hadoop-2.7.2/etc/hadoop
hive.home=/opt/hive/apache-hive-2.3.3-bin
spark.home=/opt/spark/spark-2.4.3-bin-hadoop2.7
schedulis.home=/opt/schedulis/schedulis_0.7.0_exec
#azkaban.native.lib 请修改成 ExecServer 安装目录下 lib 的所在绝对路径
execute.as.user=true
azkaban.native.lib=/opt/schedulis/schedulis_0.7.0_exec/lib
plugins/jobtypes/common.properties
hadoop.home=/opt/hadoop/hadoop-2.7.2
hadoop.conf.dir=/opt/hadoop/hadoop-2.7.2/etc/hadoop
hive.home=/opt/hive/apache-hive-2.3.3-bin
#配置集群 Hive 的元数据库(密码用 Java base64 加密)
job.datachecker.jdo.option.name="job"
job.datachecker.jdo.option.url=jdbc:mysql://datasphere:3306/hive?useUnicode=true&characterEncoding=UTF-8
job.datachecker.jdo.option.username=hadoop
job.datachecker.jdo.option.password=aGFkb29w #hadoop
#配置 Schedulis 的数据库地址(密码用 Java base64 加密)
msg.eventchecker.jdo.option.name="msg"
msg.eventchecker.jdo.option.url=jdbc:mysql://datasphere:3306/schedulis?useUnicode=true&characterEncoding=UTF-8
msg.eventchecker.jdo.option.username=hadoop
msg.eventchecker.jdo.option.password=aGFkb29w #hadoop
#此部分依赖于第三方脱敏服务mask,暂未开源,将配置写为和job类型一样即可(密码用 Java base64 加密)
bdp.datachecker.jdo.option.name="bdp"
bdp.datachecker.jdo.option.url=jdbc:mysql://datasphere:3306/hive?useUnicode=true&characterEncoding=UTF-8
bdp.datachecker.jdo.option.username=hadoop
bdp.datachecker.jdo.option.password=aGFkb29w #hadoop
plugins/alerter/WebankIMS/conf/plugin.properties
该配置文件主要是设置告警插件地址, 请用户基于自己公司的告警系统来设置
此部分依赖于第三方告警服务,如不需要可跳过配置
# webank alerter settings
alert.type=WeBankAlerter
alarm.server=datasphere
alarm.port=8062
alarm.subSystemID=1
alarm.alertTitle=schedulis Aleter Message
alarm.alerterWay=1,2,3
alarm.reciver=1
alarm.toEcc=0
plugins/jobtypes/linkis/plugin.properties
#将该值修改为 Linkis 的gateway地址
wds.linkis.gateway.url.v1=http://127.0.0.1:9001
wds.linkis.gateway.url.v0=http://127.0.0.1:9001
plugins/jobtypes/linkis/private.properties
#将该值修改为 Linkis 插件包下的 lib 目录
jobtype.lib.dir=/opt/schedulis/schedulis_0.7.0_exec/plugins/jobtypes/linkis/lib
conf/azkaban.properties
Web Server 配置文件修改
#项目 MySQL 配置(密码用 base64 加密)
database.type=mysql
mysql.port=3306
mysql.host=datasphere
mysql.database=schedulis
mysql.user=hadoop
mysql.password=aGFkb29w #hadoop
mysql.numconnections=100
#项目 web 端访问的端口
jetty.port=8061
# LDAP 登录校验开关(如不需要 LDAP 校验可关闭)
ladp.switch=true
# LDAP 地址配置
ladp.ip=datasphere
ladp.port=389
修改日志存放目录(按需修改)
Schedulis 项目的日志默认存放路径为 /appcom/logs/azkaban, 目录下存放的就是 Executor 和 Web 两个服务相关的日志
若选择使用默认存放路径,则需要按要求将所需路径提前创建出来, 确认文件属主为 hadoop,赋予 775 权限;若要使用自定义的日志存放路径,则需要创建好自定义路径,并修改 ExecServer 和 WebServer 安装包的以下文件:
Executor 下的 bin/internal/internal-start-executor.sh 和 Web 下的 bin/internal/internal-start-web.sh 文件中的 KEY 值 logFile, 设为自定义日志存放路径, 以及在两个文件中关于 “Set the log4j configuration file” 中的 -Dlog4j.log.dir 也修改为自定义的日志路径
两个服务中的 bin/internal/util.sh 文件中的 KEY 值 shutdownFile,改为自定义日志路径
mkdir -p /opt/schedulis/logs
Executor 下
vi bin/internal/internal-start-executor.sh
前面为logs的创建目录
logFile=/opt/schedulis/logs/executorServerLog__`date +%F+%T`.out
vi bin/internal/util.sh
shutdownlogFile=/opt/schedulis/logs/executorServerShutdownLog__`date +%F+%T`.out
WebServer下
vi bin/internal/internal-start-web.sh
logFile=/opt/schedulis/logs/webServerLog_`date +%F+%T`.out
启动
进入 ExecutorServer 安装包路径,执行
sh bin/start-exec.sh
进入 WebServer 安装包路径,执行
sh bin/start-web.sh
插图
安装Schedulis0.7.0插件
配置信息
查看xx/dss_linkis/dss/dss-appconns目录下面是否存在 schedulis 目录,若不存在用户就需要下载 schedulis 插件
sh bin/appconn-install.sh
# 输入schedulis名称
schedulis
# 输入schedulis前端IP地址
datasphere
# 输入schedulis服务的前端端口后(dss端口保持一致)
8061
然后重启下 workflow 使配置生效:
sh sbin/dss-daemon.sh restart workflow-server
dss-workflow-server.properties
修改 ${DSS_HOME}/conf/dss-workflow-server.properties 配置:
#该路径对应的是dolphinscheduler运维中心的页面
wds.dss.workflow.schedulerCenter.url="http://datasphere:8061"
config.sh配置
cd xx/schedulis_0.7.0_exec/plugins/jobtypes/linkis/bin
## Linkis gateway url
LINKIS_GATEWAY_URL=http://127.0.0.1:9001 ## linkis 的 GateWay 地址
## Linkis gateway token default WS-AUTH
LINKIS_GATEWAY_TOKEN=WS-AUTH ## Linkis 的代理 Token,该参数可以用默认值
## Azkaban executor host
AZKABAN_EXECUTOR_HOST=127.0.0.1 ## 如果 Schedulis 是单机安装则该 IP 就是机器 IP,如果是分布式安装则为 Schedulis 执行器机器 IP
## SSH Port
SSH_PORT=22 ## SSH 端口
## Azkaban executor dir
## 如果 Schedulis 是单机安装则该目录是 Schedulis 的安装目录,如果是分布式安装为执行器的安装目录
AZKABAN_EXECUTOR_DIR=/opt/schedulis/schedulis_0.7.0_exec
## Azkaban executor plugin reload url
## 此处只需要修改 IP 和端口即可
AZKABAN_EXECUTOR_URL=http://datasphere:12321/executor?action=reloadJobTypePlugins
启动
sh install.sh