Ambari为Apache基金会的一个顶级项目。作为一个为Hadoop系统提供一站式维护的工具,ambari支持通过web页面/RestfulApi的方式进行对集群的一键部署,最重要的是可以自己编写部署脚本部署自己的分布式系统。这个是富有价值的,现在有的公司使用的是自研的分布式框架,想要自动部署大多也是自研一套分布式框架。现在Ambari的出现,缓解了这个问题,用户只需要使用python按照规则编写一套部署在自己系统上的安装/启动脚本,就可以将自己的系统使用Ambari进行一键式部署。
Ambari不仅提供集群组件的部署功能,还提供了集群的监控功能,不过现在的监控只支持Hadoop生态中的服务,如果想使用Ambari进行监控,可能需要二次开发,这里我没有使用Ambari进行过对自研计算框架或其他服务的监控。
这次,我也要系统的学习一下Ambari底层的实现,以及监控功能如何使用。所以,现在先从编译开始,一步一步进行总结。
首先,我的环境是Mac OS,不过其他Linux环境也可以。
1.安装maven 下面是Mac环境的 Linux/Windows可以百度,具体安装大致相似。
(1) maven 3.0.4下载链接(注意版本一定要3.0.4 或 3.0.5) http://archive.apache.org/dist/maven/maven-3/3.0.4/binaries/apache-maven-3.0.4-bin.tar.gz
(2) 解包并copy到对应目录
tar zxvf apache-maven-3.0.4-bin.tar.gz
cp apache-maven-3.0.4 /opt/local/share/java/maven3.0.4
(3) vi ~/.bash_profile 文件中依次配置
M3_HOME=/opt/local/share/java/maven3.0.4
PATH=$M3_HOME/bin:$PATH
export M3_HOME
export PATH
(4) source ~/.bash_profile 并通过mvn --version 查看版本是否正确
maven的版本一定要是3.0.4或3.0.5,对于其他的三系版本,可能在Mac系统下会有bug,在编译的时候显示缺少对应的类。详情可以参见maven的jira: https://issues.apache.org/jira/browse/MNG-5787
具体的错误可能如下:
[INFO]
[INFO] >>> maven-eclipse-plugin:2.10:eclipse (default-cli) > generate-resources @ ambari-admin >>>
[INFO]
[INFO] --- build-helper-maven-plugin:1.8:regex-property (parse-package-version) @ ambari-admin ---
[INFO]
[INFO] --- build-helper-maven-plugin:1.8:regex-property (parse-package-release) @ ambari-admin ---
[INFO]
[INFO] --- build-helper-maven-plugin:1.8:parse-version (parse-version) @ ambari-admin ---
[INFO]
[INFO] --- build-helper-maven-plugin:1.8:regex-property (regex-property) @ ambari-admin ---
[INFO]
[INFO] --- frontend-maven-plugin:0.0.16:install-node-and-npm (install node and npm) @ ambari-admin ---
Downloading: http://maven.oschina.net/content/groups/public/org/codehaus/plexus/plexus-classworlds/2.4/plexus-classworlds-2.4.jar
Downloaded: http://maven.oschina.net/content/groups/public/org/codehaus/plexus/plexus-classworlds/2.4/plexus-classworlds-2.4.jar (46 KB at 165.3 KB/sec)
[INFO] ------------------------------------------------------------------------
[INFO] Reactor Summary:
[INFO]
[INFO] Ambari Main ........................................ SUCCESS [ 1.323 s]
[INFO] Apache Ambari Project POM .......................... SUCCESS [ 0.033 s]
[INFO] Ambari Web ......................................... SUCCESS [ 0.029 s]
[INFO] Ambari Views ....................................... SUCCESS [ 0.270 s]
[INFO] Ambari Admin View .................................. FAILURE [ 3.559 s]
[INFO] ambari-metrics ..................................... SKIPPED
[INFO] Ambari Metrics Common .............................. SKIPPED
[INFO] Ambari Metrics Hadoop Sink ......................... SKIPPED
[INFO] Ambari Metrics Flume Sink .......................... S