CentOS7安装Azkaban

下载地址:https://github.com/azkaban/azkaban

1、MySQL安装与配置(略)

创建数据库azkaban

sudo service mysqld start
mysql -uroot -p
mysql> create database azkaban;
mysql> use azkaban;
Database changed
mysql> source /home/azkaban/azkaban-2.5.0/create-all-sql-2.5.0.sql;
mysql> show tables;
+------------------------+
| Tables_in_azkaban      |
+------------------------+
| active_executing_flows |
| active_sla             |
| execution_flows        |
| execution_jobs         |
| execution_logs         |
| project_events         |
| project_files          |
| project_flows          |
| project_permissions    |
| project_properties     |
| project_versions       |
| projects               |
| properties             |
| schedules              |
| triggers               |
+------------------------+
15 rows in set (0.00 sec)

2、安装安装azkaban-web

1、解压azkaban-sql-script-2.5.0.tar.gz,执行其中的create-all-sql-2.5.0.sql文件
2、解压azkaban-web-server-2.5.0.tar.gz,修改配置文件azkaban-web-server-2.5.0/conf/azkaban.properties

default.timezone.id=Asia/Shanghai                           #默认时区,已改为亚洲/上海 默认为美国

executor.global.properties=/home/azkaban/azkaban-executor-2.5.0/conf/global.properties
azkaban.project.dir=projects

database.type=mysql
mysql.port=3306
mysql.host=localhost
mysql.database=azkaban
mysql.user=root
mysql.password=root
mysql.numconnections=100

# Azkaban Jetty server properties.
jetty.maxThreads=25
jetty.ssl.port=8443
jetty.port=8081
jetty.keystore=keystore      #SSL文件名
jetty.password=azkaban       #SSL文件密码
jetty.keypassword=azkaban    #Jetty主密码 与 keystore文件相同
jetty.truststore=truststore  #SSL文件名
jetty.trustpassword=azkaban  #SSL文件密码

3、修改web登录用户及密码azkaban-users.xml

<azkaban-users>
	<user username="azkaban" password="azkaban" roles="admin" groups="azkaban" />
	<user username="metrics" password="metrics" roles="metrics"/>
	<user username="admin" password="admin" roles="admin,metrics" />
	<role name="admin" permissions="ADMIN" />
	<role name="metrics" permissions="METRICS"/>
</azkaban-users>

4、配置SSL的KeyStore
因为走的是https协议所以需要这一步操作,执行一下命令一定要在进入azkaban-web-2.5.0文件夹之后执行,生成密钥keystore在azkaban-web-2.5.0文件夹中,把 keystore 考贝到 azkaban web服务器bin目录中

注意:密码必须与azkaban.properties中jetty密码相同,否则错误Keystore was tampered with, or password was incorrect

keytool -genkey -keystore keystore -alias jetty-azkaban -keyalg RSA -validity 3560    #需要输入一系列密码,最好统一输入#
keytool -export -alias jetty-azkaban -keystore keystore -rfc -file selfsignedcert.cer #需要输入一系列密码,最好统一输入#
keytool -import -alias certificatekey -file selfsignedcert.cer -keystore truststore   #需要输入一系列密码,最好统一输入#

如果需要删除则使用如下:

keytool -delete -alias jetty-azkaban -keystore keystore -storepass azkaban

5、增加文件夹logs

/home/azkaban/azkaban-web-2.5.0/logs

注意:ERROR [AzkabanWebServer] [Azkaban] plugin path plugins/triggers doesn't exist!忽视
如果添加 triggers 文件夹,登录页面时 500 并提示 Velocity could not be initialized!
6、添加环境变量(非必须)

sudo vim /etc/profile
AK_HOME=/home/azkaban/azkaban-web-2.5.0
PATH=$PATH:$PATH/bin

7、启动web服务器

nohup bin/azkaban-web-start.sh &

登录:https://s166:8443/
8、修改执行服务器配置文件

vim conf/azkaban.properties
#Azkaban
default.timezone.id=Asia/Shanghai  #默认时区,已改为亚洲/上海 默认为美国

# Azkaban JobTypes Plugins
azkaban.jobtype.plugin.dir=plugins/jobtypes #jobtype 插件所在位置

#Loader for projects
executor.global.properties=conf/global.properties
azkaban.project.dir=projects

database.type=mysql  #数据库类型(目前只支持mysql)
mysql.port=3306
mysql.host=localhost
mysql.database=azkaban
mysql.user=root
mysql.password=root
mysql.numconnections=100  #最大连接数

# Azkaban Executor settings
executor.maxThreads=50   #最大线程数
executor.port=12321      #端口号(如修改,请与web服务中一致)
executor.flow.threads=30 #线程数

9、启动执行服务器

bin/azkaban-executor-start.sh
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章