遇见未知的Saturn | 第二篇:Saturn 本地环境搭建

前言
  • Saturn包括两大部分,Saturn Console和Saturn Executor。

Saturn Console是一个GUI,用于作业/Executor管理,统计报表展现,系统配置等功能。它同时也是整个调度系统的大脑:将作业任务分配到各Executor。

Saturn Executor是执行任务的Worker:按照作业配置的要求去执行部署于Executor所在容器或物理机当中的作业脚本和代码。

环境准备
  • JDK 7 or JDK 8
  • Maven 3.0.4+
  • node.js 8.7.0+
  • npm 5.4.2+
  • git
1. 代码获取
  • 你可以用工具SourceTree|tower 下载到本地,也可以用下边的命令下载到本地。
    $ git clone https://github.com/vipshop/Saturn
    $ git checkout develop
    $ cd saturn-docker
    $ chmod +x quickstart.sh
    $ ./quickstart.sh|quickstart.bat
2.项目运行

quickstart脚本将做如下事情:

  • 启动内嵌的ZooKeeper
  • 启动内嵌的Saturn-Console
  • 启动内嵌的Saturn-Executor(包含了一个Java作业的实现)
  • 在Saturn-Console添加该Java作业
  • 启动完成后,您可以访问Saturn-Console:http://localhost:9088

如下图所示:
遇见未知的Saturn | 第二篇:Saturn 本地环境搭建_第1张图片

在首页的search bar点击会出现一个叫做’mydomain’的namespace。点击进去会见到一个名为’SaturnJavaJob’的作业,该作业有5个分片,每隔5秒调度一次。
遇见未知的Saturn | 第二篇:Saturn 本地环境搭建_第2张图片

问题梳理
  • 以上是Saturn 官网给出的本地环境搭建,会报错,需要修改几个文件,以mysql为例
  • mysql 数据库创建
    从这里获取最新的schema.sql。如果希望获得其他版本的schema,可以在源代码的其他tag上获取。
  • 修改 saturn-console/src/main/resources/context/applicationContext.xml
- 	
+ 
  • 修改 saturn-console/src/main/resources/context/applicationContext_datasource_mysql.xml
- 
- 
- 
+ 
+ 
+ 

  • 修改 quickstart/quickstart.sh
- nohup java -Dfile.encoding=UTF-8 -Dsaturn.embeddedZk=true -Dsaturn.embeddedDb=true -Dspring.h2.console.enabled=true -Dsaturn.stdout=true -jar saturn-console/target/saturn-console-master-SNAPSHOT-exec.jar > ./saturn-console.log 2>&1 &


+ nohup java -Dfile.encoding=UTF-8 -DVIP_SATURN_RUNNING_IP=192.168.33.113 -Dsaturn.embeddedZk=true -Dsaturn.embeddedDb=true -DSATURN_CONSOLE_DB_URL=jdbc:mysql://localhost:3306/saturn_console -DSATURN_CONSOLE_DB_USERNAME=root -DSATURN_CONSOLE_DB_PASSWORD=123456 -Dspring.h2.console.enabled=true -Dsaturn.stdout=true -jar saturn-console/target/saturn-console-master-SNAPSHOT-exec.jar > ./saturn-console.log 2>&1 &

DVIP_SATURN_RUNNING_IP  本地机器的IP

DSATURN_CONSOLE_DB_URL mysql 连接地址
DSATURN_CONSOLE_DB_USERNAME  mysql 用户名
DSATURN_CONSOLE_DB_PASSWORD  myslq 密码

小结:这三个文件的调整,就可以在本地正常的启动项目。

文档地址
  • https://vipshop.github.io/Saturn/#/
代码开源地址
  • https://github.com/vipshop/Saturn
贡献者

前人栽树后人乘凉,感谢Saturn贡献者。

你可能感兴趣的:(遇见未知的分布式定时任务,Saturn)