前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >CentOS 7下安装azkaban详细步骤

CentOS 7下安装azkaban详细步骤

作者头像
用户5766185
发布2019-07-08 14:55:35
1.9K0
发布2019-07-08 14:55:35
举报
文章被收录于专栏:运维架构之路

一 azkaban是什么?

azkaban是一个开源的任务调度系统,用于负责任务的调度运行(如数据仓库调度),用以替代linux中的crontab.

二 azkaban的功能特点

  • 1、Web用户界面
  • 2、方便上传工作流
  • 3、方便设置任务之间的关系
  • 4、工作流调度
  • 5、认证/授权
  • 6、能够杀死并重启工作流
  • 7、模块化和可插拔的插件机制
  • 8、项目工作区
  • 9、工作流和任务的日志记录和审计

三 开始安装

(一) 环境要求

安装gcc依赖:yum -y install gcc-c++

mysql数据库

linux --git

(二) 下载编译安装

1.下载源码

cd /root

git clone https://github.com/azkaban/azkaban.git

2、下载完成后切换到azkaban目录下(gradlew 压缩获取tar包)

cd /root/azkaban

编译

./gradlew distTar

显示 BUILD SUCCESSFUL 压缩成功

注:所有压缩后的tar包都在各目录下的/build/distributions目录下

例如:/root/azkaban/azkaban-web-server的tar包/build/distributions 目录下为:azkaban-web-server的tar包

3、复制所有tar包到azkaban目录下

cp /root/azkaban/azkaban-*/build/distributions/*.tar.gz /root/azkaban

cd /root/azkaban

tar xf azkaban-db-3.74.0-2-g129ce2b.tar.gz

tar xf azkaban-exec-server-3.74.0-2-g129ce2b.tar.gz

tar xf azkaban-hadoop-security-plugin-3.74.0-2-g129ce2b.tar.gz

tar xf azkaban-solo-server-3.74.0-2-g129ce2b.tar.gz

tar xf azkaban-web-server-3.74.0-2-g129ce2b.tar.gz

4、导入表到Mysql数据库

(sql文件为:/root//azkaban/azkaban-db-3.74.0-2-g129ce2b目录下create-all-sql-3.74.0-2-g129ce2b.sql文件)

注:我们在创建一个新库的时候编码默认是utf-8,我们需要把字符集修改为latin1;如果不修改导入表时会报错

alter database azkaban default character set latin1;

5、生成keystore文件

cd /root/azkaban/

keytool -keystore keystore -alias jetty -genkey -keyalg RSA

输入密钥库口令:(输入keystore)

再次输入新口令: (输入keystore)

您的名字与姓氏是什么?

[Unknown]:

您的组织单位名称是什么?

[Unknown]:

您的组织名称是什么?

[Unknown]:

您所在的城市或区域名称是什么?

[Unknown]:

您所在的省/市/自治区名称是什么?

[Unknown]:

该单位的双字母国家/地区代码是什么?

[Unknown]: CN

CN=Unknown, OU=Unknown, O=Unknown, L=Unknown, ST=Unknown, C=CN是否正确?

[否]: y

输入 <jetty> 的密钥口令

(如果和密钥库口令相同, 按回车): (回车)

6、配置conf/azkaban.properties

如果Azkaban WebServer下面没有conf目录,将azkaban-solo-web 下的conf目录拷贝过来

# Azkaban Personalization Settings

azkaban.name=name Scheduler

azkaban.label=My Local Azkaban

azkaban.color=#FF3601

azkaban.default.servlet.path=/index

web.resource.dir=/opt/local/azkaban/azkaban-web-server-3.74.0-2-g129ce2b/web

default.timezone.id=Asia/Shanghai

# Azkaban UserManager class

user.manager.class=azkaban.user.XmlUserManager

user.manager.xml.file=/opt/local/azkaban/azkaban-web-server-3.74.0-2-g129ce2b/conf/azkaban-users.xml

# Loader for projects

executor.global.properties=conf/global.properties

azkaban.project.dir=projects

# Velocity dev mode

velocity.dev.mode=false

# Azkaban Jetty server properties.

############################################jetty.use.ssl=true

jetty.maxThreads=25#最大线程数

#jetty.port=8081#Jetty 端口

jetty.ssl.port=8443#Jetty SSL 端口

jetty.keystore=/opt/local/azkaban/keystore#SSL 文件名

jetty.password=yourpassword#SSL 文件密码

jetty.keypassword=yourpassword#Jetty 主密码 与 keystore 文件相同

jetty.truststore=/opt/local/azkaban/keystore#SSL 文件名

jetty.trustpassword=yourpassword# SSL 文件密码

# Azkaban Executor settings

executor.port=12321

# mail settings

mail.sender=xxx@qq.com#发送邮箱

mail.host=smtp.exmail.qq.com#发送邮箱 smtp 地址

mail.user=xxx@qq.com#发送邮件时显示的名称

mail.password=xxx#邮箱密码

# User facing web server configurations used to construct the user facing server URLs. They are useful when there is a reverse proxy between Azkaban web servers and users.

# enduser -> myazkabanhost:443 -> proxy -> localhost:8081

# when this parameters set then these parameters are used to generate email links.

# if these parameters are not set then jetty.hostname, and jetty.port(if ssl configured jetty.ssl.port) are used.

# azkaban.webserver.external_hostname=myazkabanhost.com

# azkaban.webserver.external_ssl_port=443

# azkaban.webserver.external_port=8081

job.failure.email=#任务失败时发送邮件的地址

job.success.email=#任务成功时发送邮件的地址

lockdown.create.projects=false

cache.directory=cache#缓存目录

# JMX stats

jetty.connector.stats=true

executor.connector.stats=true

# Azkaban mysql settings by default. Users should configure their own username and password.

database.type=mysql

mysql.port=3306

mysql.host=yourip

mysql.database=yourdatabase

mysql.user=youruser

mysql.password=yourpassword

mysql.numconnections=100#最大连接数

azkaban.jobtype.plugin.dir=/opt/local/azkaban/azkaban-web-server/plugins/jobtypes

#Multiple Executor

azkaban.use.multiple.executors=true

azkaban.executorselector.filters=StaticRemainingFlowSize,MinimumFreeMemory,CpuStatus

azkaban.executorselector.comparator.NumberOfAssignedFlowComparator=1

azkaban.executorselector.comparator.Memory=1

azkaban.executorselector.comparator.LastDispatched=1

azkaban.executorselector.comparator.CpuUsage=1

7.修改azkaban-exec-server文件

#Azkaban

default.timezone.id=Asia/Shanghai

# Azkaban JobTypes 插件配置

azkaban.jobtype.plugin.dir=plugins/jobtypes

#Loader for projects

executor.global.properties=conf/global.properties

azkaban.project.dir=projects

#数据库设置

database.type=mysql

mysql.port=3306

mysql.host=yourip

mysql.database=yourdatabase

mysql.user=youruser

mysql.password=yourpassword

mysql.numconnections=100

# 执行服务器配置

executor.maxThreads=80

executor.port=12321

executor.flow.threads=50

8.此时先启动exec服务器,会看到监听12321端口

./bin/start-exec.sh

9.再启动web服务器

./bin/start-web.sh

此时应该会报一个错,Executor 未激活,这个每次重启Executor 就需要手动激活一下

执行这个命令:curl http://localhost:12321/executor?action=activate

此时就可以访问了,https://yourip:8443

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2019-06-24,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 运维架构之路 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
数据库
云数据库为企业提供了完善的关系型数据库、非关系型数据库、分析型数据库和数据库生态工具。您可以通过产品选择和组合搭建,轻松实现高可靠、高可用性、高性能等数据库需求。云数据库服务也可大幅减少您的运维工作量,更专注于业务发展,让企业一站式享受数据上云及分布式架构的技术红利!
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档