Azkaban安装

编译
  1. 通过git下载azkaban3.12分支。试过master编译略痛苦,一直报错。
  • git clone -b 3.12.0 https://github.com/azkaban/azkaban.git
  1. 打开gitbash
  • ./gradlew clean
  • ./gradlew build installDist -x test
  1. 编译后的压缩包位置都在类似./azkaban-solo-server/build/distributions/azkaban-solo-server-0.1.0-SNAPSHOT.tar.gz这种路径下(随便举个栗子)

安装

  1. 创建azkaban在mysql中的表结构
运行mysql的命令 : mysql -uroot -proot
数据数据库命令 : create database azkaban;
打开某个数据库 : use azkaban;
将azkaban sql表结构导入mysql : source /home/zhanqian/azkaban-sql-3.12.0/create-all-sql-3.12.0.sql

1.1 创建azkaban用户

CREATE USER 'azkaban'@'%' IDENTIFIED BY 'azkaban'; #创建用户noah_dba
grant all on azkaban.* to azkaban@'%' identified by 'azkaban'; #授权azkaban给azkaban
flush privileges;#刷新

不出意外后续启动会报错:

2019-03-12 10:32:49 ERROR StdOutErrRedirect:55 - SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
2019-03-12 10:32:49 ERROR StdOutErrRedirect:55 - SLF4J: Defaulting to no-operation (NOP) logger implementation
2019-03-12 10:32:49 ERROR StdOutErrRedirect:55 - SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.
2019-03-12 10:32:49 INFO  AzkabanWebServer:253 - Loading user manager class azkaban.user.XmlUserManager
2019-03-12 10:32:49 INFO  XmlUserManager:176 - Loading user azkaban
2019-03-12 10:32:49 INFO  XmlUserManager:176 - Loading user metrics
2019-03-12 10:32:49 INFO  XmlUserManager:176 - Loading user admin
2019-03-12 10:32:49 INFO  ExecutorManager:200 - Initializing local executor localhost:12321
2019-03-12 10:32:50 ERROR StdOutErrRedirect:55 - Exception in thread "main" 
2019-03-12 10:32:50 ERROR StdOutErrRedirect:55 - azkaban.executor.ExecutorManagerException: Error fetching active flows
2019-03-12 10:32:50 ERROR StdOutErrRedirect:55 -        at azkaban.executor.JdbcExecutorLoader.fetchActiveFlows(JdbcExecutorLoader.java:216)
2019-03-12 10:32:50 ERROR StdOutErrRedirect:55 -        at azkaban.executor.ExecutorManager.loadRunningFlows(ExecutorManager.java:432)
2019-03-12 10:32:50 ERROR StdOutErrRedirect:55 -        at azkaban.executor.ExecutorManager.<init>(ExecutorManager.java:127)
2019-03-12 10:32:50 ERROR StdOutErrRedirect:55 -        at azkaban.webapp.AzkabanWebServer.loadExecutorManager(AzkabanWebServer.java:281)
2019-03-12 10:32:50 ERROR StdOutErrRedirect:55 -        at azkaban.webapp.AzkabanWebServer.<init>(AzkabanWebServer.java:202)
2019-03-12 10:32:50 ERROR StdOutErrRedirect:55 -        at azkaban.webapp.AzkabanWebServer.main(AzkabanWebServer.java:762)
2019-03-12 10:32:50 ERROR StdOutErrRedirect:55 - Caused by: java.sql.SQLException: Unknown column 'ex.executor_id' in 'on clause' Query: SELECT ex.exec_id exec_id, ex.enc_type enc_type, ex.flow_data flow_data, et.host host, et.port port, ax.update_time axUpdateTime, et.id executorId, et.active executorStatus FROM execution_flows ex INNER JOIN  active_executing_flows ax ON ex.exec_id = ax.exec_id INNER JOIN  executors et ON ex.executor_id = et.id Parameters: []
2019-03-12 10:32:50 ERROR StdOutErrRedirect:55 -        at org.apache.commons.dbutils.AbstractQueryRunner.rethrow(AbstractQueryRunner.java:363)
2019-03-12 10:32:50 ERROR StdOutErrRedirect:55 -        at org.apache.commons.dbutils.QueryRunner.query(QueryRunner.java:350)
2019-03-12 10:32:50 ERROR StdOutErrRedirect:55 -        at org.apache.commons.dbutils.QueryRunner.query(QueryRunner.java:306)
2019-03-12 10:32:50 ERROR StdOutErrRedirect:55 -        at azkaban.executor.JdbcExecutorLoader.fetchActiveFlows(JdbcExecutorLoader.java:212)
2019-03-12 10:32:50 ERROR StdOutErrRedirect:55 -        ... 5 more

你需要继续导入更新SQL(参考:azkaban3.12 编译与安装

source /home/zhanqian/azkaban-sql-3.12.0/update.execution_flows.3.0.sql  #
source /home/zhanqian/azkaban-sql-3.12.0/update.active_executing_flows.3.0.sql #
  1. 修改azkaban.properties的配置(azkaban-exec-server-3.12.0和azkaban-web-server-3.12.0),如果没找到conf目录,从azkaban-solo-server里面拷贝。
azkaban.name=Test
azkaban.label=My Local Azkaban
azkaban.color=#FF3601
azkaban.default.servlet.path=/index
web.resource.dir=web/
default.timezone.id=Asia/Shanghai #默认时区为美国时区,需要修改不然时间对不上

# Azkaban UserManager class
user.manager.class=azkaban.user.XmlUserManager
#user.manager.xml.file=conf/azkaban-users.xml
user.manager.xml.file=/opt/azkaban/azkaban-web-server-3.12.0/conf/azkaban-users.xml

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

database.type=mysql
mysql.port=3306
mysql.host=hadoop-master #如果mysql服务器在本机可以改成localhost
mysql.database=azkaban
mysql.user=root
mysql.password=root
mysql.numconnections=100

# Velocity dev mode
velocity.dev.mode=false

# Azkaban Jetty server properties.
jetty.maxThreads=25
jetty.ssl.port=8443
# jetty.use.ssl=false
jetty.port=8081
jetty.keystore=keystore
jetty.password=azkaban
jetty.keypassword=azkaban
jetty.truststore=keystore
jetty.trustpassword=azkaban
...
启动
  1. 启动azkaban-web-server
cd /opt/azkaban/azkaban-web-server-3.12.0 #一定要在该目录下,默认启动找的配置文件为 conf/azkaban.properties
sh bin/azkaban-web-start.sh 
  1. 启动azkaban-exe-server
踩坑
  1. 报错1:上传文件报错
2019-03-14 14:37:35 INFO  JdbcProjectLoader:439 - Running update for noah4-client.zip chunk 0
2019-03-14 14:37:37 INFO  ProjectManagerServlet:1765 - Installation Failed.
azkaban.project.ProjectManagerException: Error Chunking during uploading files to db...
      at azkaban.project.JdbcProjectLoader.uploadProjectFile(JdbcProjectLoader.java:453)
      at azkaban.project.JdbcProjectLoader.uploadProjectFile(JdbcProjectLoader.java:358)
      at azkaban.project.ProjectManager.uploadProject(ProjectManager.java:540)
      at azkaban.webapp.servlet.ProjectManagerServlet.ajaxHandleUpload(ProjectManagerServlet.java:1714)
      at azkaban.webapp.servlet.ProjectManagerServlet.handleUpload(ProjectManagerServlet.java:1790)
      at azkaban.webapp.servlet.ProjectManagerServlet.handleMultiformPost(ProjectManagerServlet.java:198)
      at azkaban.webapp.servlet.LoginAbstractAzkabanServlet.doPost(LoginAbstractAzkabanServlet.java:316)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:688)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:770)
      at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:511)
      at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:401)
      at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182)
      at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:766)
      at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
      at org.mortbay.jetty.Server.handle(Server.java:326)
      at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:542)
      at org.mortbay.jetty.HttpConnection$RequestHandler.content(HttpConnection.java:945)
      at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:756)
      at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:212)
      at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404)
      at org.mortbay.jetty.bio.SocketConnector$Connection.run(SocketConnector.java:228)
      at org.mortbay.jetty.security.SslSocketConnector$SslConnection.run(SslSocketConnector.java:713)
      at org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:582)

解决(Ubuntu16.04):

1. vi /etc/mysql/mysql.conf.d/mysqld.cnf
2. 修改max_allowed_packet = 160M #将16M改成160M
3. 重启 service mysql restart
  1. 报错
22-04-2018 01:56:02 CST foo ERROR - Job run failed!
azkaban.utils.UndefinedPropertyException: Missing required property 'azkaban.native.lib'
   at azkaban.utils.Props.getString(Props.java:421)
   at azkaban.jobExecutor.ProcessJob.run(ProcessJob.java:234)
   at azkaban.execapp.JobRunner.runJob(JobRunner.java:784)
   at azkaban.execapp.JobRunner.doRun(JobRunner.java:600)
   at azkaban.execapp.JobRunner.run(JobRunner.java:561)
   at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
   at java.util.concurrent.FutureTask.run(FutureTask.java:266)
   at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
   at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)

解决

出现这个错误时,在azkaban-exec-server-3.46.0/plugins/jobtypes 目录下添加commonprivate.properties配置文件,内容中添加:azkaban.native.lib=false

原文链接:https://blog.csdn.net/qq_37279279/article/details/80031972
使用
command命令截图.png

noah-dp-spark.job

type=command
command=spark2-submit \
    --class noah.MyJob \
    --master yarn \
    --deploy-mode cluster \
    --driver-memory 1g \
    --executor-memory 1g \
    --executor-cores 1 \
    --queue thequeue \
    --jars mybatis-scala-core_2.11-1.0.3.jar,hbase-client-1.3.0.jar,hbase-common-1.2.0.jar,mybatis-3.4.4.jar,mysql-connector-java-5.1.35.jar,hbase-protocol-1.3.0.jar,hbase-server-1.3.0.jar,htrace-core-3.1.0-incubating.jar,emoji-java-4.0.0.jar \
    noah-dp-spark.jar
    10
zip包解压后的文件截图.png
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 204,530评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 86,403评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 151,120评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,770评论 1 277
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,758评论 5 367
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,649评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,021评论 3 398
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,675评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,931评论 1 299
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,659评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,751评论 1 330
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,410评论 4 321
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,004评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,969评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,203评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,042评论 2 350
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,493评论 2 343

推荐阅读更多精彩内容

  • 1.创建元数据库 为Azkaban创建一个数据库: # Example database creation com...
    hbtszyt阅读 1,399评论 0 1
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,594评论 18 139
  • 简介 Azkaban在官网上的说明中介绍是支持集群模式的,网上看了不少文章,写得最多的是solo-server安装...
    GoofyWang阅读 5,254评论 5 4
  • 本文作者:林伟兵,叩丁狼高级讲师。原创文章,转载请注明出处。 1. Azkaban概述 Azkaban技术产生前景...
    叩丁狼教育阅读 2,012评论 0 6
  • 安装azkaban时参考了网上的资料,结果没一篇能安装成功的。调试半天才成功,大部分的问题是资料版本太老,gith...
    天夭夭阅读 4,338评论 2 0