hadoop学习之azkaban(5):azkaban-2.5.0的详细安装过程
来源:互联网 发布:软件产品质量控制 编辑:程序博客网 时间:2024/06/05 06:14
一个完整的数据分析系统通常由大量的任务单元组成:比如shell脚本,java程序,mr程序,hive脚本等等。
各任务单元之间存在时间先后及前后依赖关系,为了很好地组织起这样的复杂执行计划,需要一个工作流调度系统来调度执行。
azkaban就是这样一个工作流调度器,其提供的web用户界面非常方便使用。
1,前提是安装好mysql数据库,详见本人博客:安装mysql
设置mysql的用户名为root,密码123456
2,下载并解压azkaban运行所需的3个基本组件
(1)Azkaban Web服务器
azkaban-web-server-2.5.0.tar.gz
(2)Azkaban执行服务器
azkaban-executor-server-2.5.0.tar.gz
(3)Azkaban-sql脚本azkaban-sql-script-2.5.0.tar.gz
3,azkaban脚本导入,将解压后的mysql 脚本,导入到mysql中:
进入mysqlmysql> create database azkaban;mysql> use azkaban;Database changedmysql> source /home/hadoop/azkaban-2.5.0/create-all-sql-2.5.0.sql;
4,创建SSL配置
随便在那个地方执行命令:
$ keytool -keystore keystore -alias jetty -genkey -keyalg RSA
运行此命令后,会提示输入当前生成 keystor的密码及相应信息,输入的密码请劳记,信息如下:
输入keystore密码: //这里我们输入123456再次输入新密码:您的名字与姓氏是什么? [Unknown]: //下面都可以直接回车您的组织单位名称是什么? [Unknown]: 您的组织名称是什么? [Unknown]: 您所在的城市或区域名称是什么? [Unknown]: 您所在的州或省份名称是什么? [Unknown]: 该单位的两字母国家代码是什么 [Unknown]: CNCN=Unknown, OU=Unknown, O=Unknown,L=Unknown, ST=Unknown, C=CN 正确吗? [否]: y 输入<jetty>的主密码 (如果和 keystore 密码相同,按回车): //直接回车
完成上述工作后,将在当前目录生成 keystore 证书文件,将keystore 拷贝到 azkaban web服务器根目录中.如:cp keystore ~/azkaban-web-2.5.0/
5,配置服务器节点上的时区。(注:这一步慎选,这一步是将系统的时区改为Shanghai,如果你的系统就是中国时间,就忽略这一步。我执行了这一步后导致后面的进程起不起来,又将虚拟机恢复到以前的快照才好,所以最好还是不要执行这一步)
先生成时区配置文件Asia/Shanghai,用交互式命令 tzselect 即可
拷贝该时区文件,覆盖系统本地时区配置 cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
6,配置azkaban web服务器
vim azkaban-web-2.5.0/conf/azkaban.properties
#Azkaban Personalization Settingsazkaban.name=Test #服务器UI名称,用于服务器上方显示的名字azkaban.label=My Local Azkaban #描述azkaban.color=#FF3601 #UI颜色azkaban.default.servlet.path=/index #web.resource.dir=web/ #默认根web目录default.timezone.id=Asia/Shanghai #默认时区,已改为亚洲/上海 默认为美国 #Azkaban UserManager classuser.manager.class=azkaban.user.XmlUserManager #用户权限管理默认类user.manager.xml.file=conf/azkaban-users.xml #用户配置,具体配置参加下文 #Loader for projectsexecutor.global.properties=conf/global.properties #global配置文件所在位置azkaban.project.dir=projects # database.type=mysql #数据库类型mysql.port=3306 #端口号mysql.host=node1 #数据库连接IPmysql.database=azkaban #数据库实例名mysql.user=root #数据库用户名mysql.password=123456 #数据库密码mysql.numconnections=100 #最大连接数 # Velocity dev modevelocity.dev.mode=false# Jetty服务器属性.jetty.maxThreads=25 #最大线程数jetty.ssl.port=8443 #Jetty SSL端口jetty.port=8081 #Jetty端口jetty.keystore=keystore #SSL文件名jetty.password=123456 #SSL文件密码jetty.keypassword=123456 #Jetty主密码 与 keystore文件相同jetty.truststore=keystore #SSL文件名jetty.trustpassword=123456 # SSL文件密码 # 执行服务器属性executor.port=12321 #执行服务器端口 # 邮件设置mail.sender=xxxxxxxx@163.com #发送邮箱mail.host=smtp.163.com #发送邮箱smtp地址mail.user=xxxxxxxx #发送邮件时显示的名称mail.password=********** #邮箱密码job.failure.email=xxxxxxxx@163.com #任务失败时发送邮件的地址job.success.email=xxxxxxxx@163.com #任务成功时发送邮件的地址lockdown.create.projects=false #cache.directory=cache #缓存目录
vim azkaban-web-2.5.0/conf/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>
保存退出后就可以启动azkaban web server了。
在azkaban的根目录下执行命令,因为配置文件中有相对路径。
azkaban-web-2.5.0@node1 # bin/azkaban-web-start.sh
打开https://node1:8443,就可以进入azkaban页面了,只不过现在只能创建工程,不能执行job,要想执行job,还要配置执行服务器。如下
7,配置azkaban-executer服务器
vim /root/azkaban-executor-2.5.0/conf/azkaban.properties
#Azkabandefault.timezone.id=Asia/Shanghai #时区 # Azkaban JobTypes 插件配置azkaban.jobtype.plugin.dir=plugins/jobtypes #jobtype 插件所在位置 #Loader for projectsexecutor.global.properties=conf/global.propertiesazkaban.project.dir=projects #数据库设置database.type=mysql #数据库类型(目前只支持mysql)mysql.port=3306 #数据库端口号mysql.host=node1 #数据库IP地址mysql.database=azkaban #数据库实例名mysql.user=root #数据库用户名mysql.password=123456 #数据库密码mysql.numconnections=100 #最大连接数 # 执行服务器配置executor.maxThreads=50 #最大线程数executor.port=12321 #端口号(如修改,请与web服务中一致)executor.flow.threads=30 #线程数
配置完后,,在executer-server根目录下启动执行服务器
azkaban-executor-2.5.0 @node1 # bin/azkaban-executor-start.sh
web-server和execute-server都启动后,就可以登陆页面执行job流程了。
- hadoop学习之azkaban(5):azkaban-2.5.0的详细安装过程
- hadoop学习之azkaban(5.1):azkaban的使用及示例
- Azkaban-2.5.0的安装和配置
- Hadoop入门之azkaban的安装和使用
- azkaban 的安装
- azkaban 2.5 安装详解
- Azkaban安装(一)
- Hadoop工作流引擎之Azkaban
- hadoop工作流引擎之azkaban
- Azkaban-2.5及Plugins的安装配置
- Azkaban 2.5.0 job type 插件安装
- Azkaban安装过程分享-附《Azkaban技术分享手册》
- Azkaban安装
- Azkaban安装
- azkaban安装
- Azkaban 2.5.0 搭建
- Azkaban
- Azkaban的安装和使用
- 图的深度优先和广度优先遍历及其实现
- TSL1401线性CCD工作方式---待改进
- java的动态代理机制详解
- 随想录(网站api的设计)
- 嵌入式linux开发环境搭建(一)
- hadoop学习之azkaban(5):azkaban-2.5.0的详细安装过程
- 蓝桥杯-算法提高 8皇后·c++实现
- MFC CFont字体的使用
- 嵌入式软件可靠性设计的一些理解
- 使用xml文件备份短信
- c语言仓库信息管理
- windows使用npm安装node.js环境express提示失败解决办法
- JDBC
- squid安装使用