首页 > 代码库 > Ambari Agent Command分析
Ambari Agent Command分析
一、概述:
根据 Ambari Server 架构文章中的介绍,由于 Ambari Server 和 Ambari Agent 之间是通过 HTTP 短连接进行通信,所以 Server 无法把需要执行的 Command,直接推送给 Agent,而是需要把命令存储在 ActionQueue 中,
然后 Agent 通过定期发送 Heartbeat 请求,把 Command 拉过去执行,并通过下次的 Heartbeat 请求,返回执行结果。下面简单分析一下 Command 的处理过程:
二、Agent Command 类型
- REGISTRATION_COMMAND:注册指令
- STATUS_COMMAND:汇报状态
- EXECUTION_COMMAND:执行任务
- CANCEL_COMMAND:取消任务
- ALERT_DEFINITION_COMMAND:更新 Alert 定义
- ALERT_EXECUTION_COMMAND:立即执行一个 Alert
三、Request 处理逻辑
时机:用户触发了一个操作服务/组件的操作
1、计算依赖,生成 Command,并保存到数据库
2、定期从数据库加载 Command,并添加到 ActionQueue
3、心跳逻辑:
· 把 ActionQueue 中的所有 Command 下发给 Agent
· 根据 Agent 的汇报,处理 Request 的结果
Ambari Agent Command分析
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。