当前位置: 首页 > news >正文

Azkaban 大数据 任务调度

参考视频:尚硅谷大数据Azkaban 3.x教程(全新发布)_哔哩哔哩_bilibili

Azkaban: 是一个定时、批量工作流任务调度器(工作流程调度,定时调度)

常见的开源调度系统:

        简单单一的任务调度: Linux的Crontab

        复杂的任务调度: Ooize ,Azkaban, Airflow(python写的), DolphinScheduler

 比较:

        Ooize 相比Azkaban 是一个重量级的任务调度系统,功能全面,但配置使用更加复杂。如果可以不在意某些功能的缺失,轻量级调度器Azkaban是很不错的选择

        Ooize : CDH平台下的平台调度器,借助可视化的HUE使用比较友好

        Azkaban:简单易用

        Airflow : python开发调度的,具备一定的python基础

        DolphinScheduler: 现在比较好的,可视化的操作,比较方便

特点:

    1 兼容任何版本的hadoop

    2 易于使用的web用户界面

    3 简单的工作流上传

    4 方便设置任务之间的关系

    5 调度工作流

    6 模块化和可插拔的插件机制

    7 认证/授权

    8 能够杀死并重新启动工作流

    9 有关失败和成功的电子邮件提醒

三个关键组件

  1  AzkabanWebServer :

        是Azkaban工作流系统的主要管理者,作用:用户认证,负责project管理,定时执行工作流,跟踪工作流执行进度等等

  2  AzkabanExecutorServer :

        负责具体的工作流的提交、执行,他们通过mysql数据库来协调任务的执行

  3  Mysql :

        存储大部分执行流状态等信息

部署:

       1 上传jar包,解压

                里面mysql脚本包,excecutor包(集群部署多个服务器),web包.

                安装顺序: mysql -> excecutor -> web

        2 安装mysql数据库

                刷mysql脚本里的 create-all-sql-3.xxxx.sql 脚本

        3 修改mysql的配置文件                
sudo vim /etc/my.cnf# mysqld下面加一行 , 更改mysql包大小,防止Azkaban连接Mysql阻塞,重启mysql
max_allowed_packet=1024M# 重启mysql
sudo systemctl restart mysqld
        4 配置Executor Server

                编辑executor解压包下conf里的 azkaban.properties , 同步其他节点

vim .../azkaban/azkaban-exec/conf/azkaban.properties# 配置时区
default.timezone.id=Asia/Shanghai# webserver的连接 
azkaban.webserver.url=http://hadoop102:8081# executor的端口,不配会随机值,不便于管理
executor.port=12321# 配置数据库信息
mysql.port=3306
mysql.host=
mysql.database=
mysql.user=
mysql.password=
         5 Executor Server启动,激活:         
# 最好进入azkaban/azkaban-exec下执行,启动server
# 如果 azkaban-exec 下面出现executor.port文件,说明启动成功。或者数据库表(executors)里查看
bin/start-exec.sh# 激活
curl -G "hadoop102:12321/executor?action=activate" && echojps 查看
        6 配置 Web Server 

        编辑 web解压包下conf的azkaban.properties        

default.timezone.id=Asia/Shanghai#mysql的数据库信息
mysql...# 集群可不做修改,单机MininumFreeMemory可能保留的内存过多导致无法启动,去掉
# StaticRemainingFlowSize 正在排队的任务数
# MininumFreeMemory 内存占用最小保留
# CpuStatus cpu占用情况
azkaban.executorselector.filters=StaticRemainingFlowSize,MininumFreeMemory,CpuStatus
        7 修改azkaban-users.xml文件 ,用于用户管理

        可以不配,默认是 azkaban azkaban

vim .../azkaban/azkaban-web/conf/azkaban-users.xml<user password="123456" roles="admin" username="atguigu">
        8 启动web server
bin/start-web.sh

        访问: http://hadoop:8081(/index)  ,并用atguigu登录

Azkaban内置的任务类型支持:commond,java

http://www.lryc.cn/news/311080.html

相关文章:

  • 从预训练到通用智能(AGI)的观察和思考
  • 四种垃圾回收算法
  • stm32f103zet6笔记1-led工程
  • OpenDDS的Qos策略
  • string基本操作(C++)
  • 【网站项目】123网上书城系统
  • LeetCode148.排序链表
  • qt学习:网络调试助手客户端+服务端
  • C语言拾遗
  • 大唐杯学习笔记:Day4
  • docker基线安全修复和容器逃逸修复
  • ZooKeeper概述
  • 【sgCollapseBtn】自定义组件:底部折叠/展开按钮
  • 如何根据玩家数量和游戏需求选择最合适的服务器配置?
  • 问题解决:各版本的vc_redist下载地址 缺少msvcr100.dll、msvcr120.dll、msvcr140.dll
  • 182基于matlab的半监督极限学习机进行聚类
  • C语言数组案例编程
  • NLP - 依存句法分析、句子歧义
  • vue实现图片上传至oss,返回url插入数据库,最后在前端页面上回显图片
  • C++学习笔记:set和map
  • 990-28产品经理:Different types of IT risk 不同类型的IT风险
  • wpa_supplicant与用户态程序的交互分析
  • JavaScript继承 寄生组合式继承 extends
  • Nginx 和Tomcat比较
  • p18 线性代数,行阶梯型矩阵
  • leetcode—— 动态规划—— 零钱兑换
  • java面试题(spring框架篇)(黑马 )
  • LeetCode27 移除元素
  • 自测-5 Shuffling Machine(python版本)
  • 你真的会设计测试用例吗?