Ambari Agent 源码分析
Posted mymelody
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Ambari Agent 源码分析相关的知识,希望对你有一定的参考价值。
一、ambari-agent 启动方式
Ambari-Agent的启动脚本为/etc/init.d/ambari-agent。该脚本主要实现了start,stop,status,restart,reset方法。对于start,stop,status,reset方法的实现,直接调用/usr/sbin/ambari-agent脚本,将所有命令参数传入进去,reset直接调用stop,在调用start。
二、ambari-agent启动脚本
/usr/sbin/ambari-agent 通过软链接指向/etc/init.d/ambari-agent,其执行过程如下:
1. set -u 脚本执行过程中,如果使用到未定义的变量,则显示错误信息。
set -u # fail on unset variables
2. 参数检测,如果设置了“–home”参数,则根据参数值,设置HOME_DIR。Ambari-Agent允许在单台节点上运行多个agent客户端(进行集群模拟),每个客户端有自己的配置文件目录。默认情况下,HOME_DIR为空。
export HOME_DIR="" if [ "$#" = 3 ] && [ $2 = "--home" ] ; then export HOME_DIR=$3 echo "Allow running multiple agents on this host; will use custom Home Dir: $HOME_DIR" fi
3. 设置环境变量CONFIG_FILE="$HOME_DIR/etc/ambari-agent/conf/ambari-agent.ini",默认情况下,CONFIG_FILE=/etc/ambari-agent/conf/ambari-agent.ini。
export CONFIG_FILE="$HOME_DIR/etc/ambari-agent/conf/ambari-agent.ini"
以上是关于Ambari Agent 源码分析的主要内容,如果未能解决你的问题,请参考以下文章
Ambari-Server Rest API处理2(Ambari-Server通过Rest API进行服务安装部署操作流程+操作源码分析)