Ambari Agent 源碼分析
阿新 • • 發佈:2018-08-07
eset 執行 所有 color amp multipl 文件目錄 run tom
一、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 源碼分析