...
Note: Replace ${AMBARI_VERSION} with a 4-digit version you want the artifacts to be (e.g., -DnewVersion=1.6.1.1)
Note: If running into errors while compiling the ambari-metrics package due to missing the artifacts of jms, jmxri, jmxtools:
[ERROR] Failed to execute goal on project ambari-metrics-kafka-sink: Could not resolve dependencies for project org.apache.ambari:ambari-metrics-kafka-sink:jar: 2.0 . 0 - 0 : The following artifacts could not be resolved: javax.jms:jms:jar: 1.1 , com.sun.jdmk:jmxtools:jar: 1.2 . 1 , com.sun.jmx:jmxri:jar: 1.2 . 1 : Could not transfer artifact javax.jms:jms:jar: 1.1 from/to java.net (https: //maven-repository.dev.java.net/nonav/repository): No connector available to access repository java.net (https://maven-repository.dev.java.net/nonav/repository) of type legacy using the available factories WagonRepositoryConnectorFactory |
The work around is to manually install the three missing artifacts:
mvn install:install-file -Dfile=jms- 1.1 .pom -DgroupId=javax.jms -DartifactId=jms -Dversion= 1.1 -Dpackaging=jar mvn install:install-file -Dfile=jmxtools- 1.2 . 1 .pom -DgroupId=com.sun.jdmk -DartifactId=jmxtools -Dversion= 1.2 . 1 -Dpackaging=jar mvn install:install-file -Dfile=jmxri- 1.2 . 1 .pom -DgroupId=com.sun.jmx -DartifactId=jmxri -Dversion= 1.2 . 1 -Dpackaging=jar |
RHEL/Fedora/CentOS 5:
Code Block |
---|
#Fedora 18: You may have to install rpmbuild if its not already installed... yum --enablerepo=updates-testing install rpm-build mvn versions:set -DnewVersion=${AMBARI_VERSION} #Note: The ambari-metrics project is not wired up to the main ambari project. However there is a dependency on ambari-metrics-common to build the ambari-server RPM. #Hence you also need to set ambari-metrics project version as well. pushd ambari-metrics mvn versions:set -DnewVersion=${AMBARI_VERSION} popd mvn -B clean install package rpm:rpm -DskipTests -Pcentos5 -Dpython.ver="python26" -Preplaceurl #Note: Or you can use '-Dpython.ver="python > 2.6' as an alternative, which seems to work better in at least one RHEL instance." |
RHEL/CentOS 6:
Code Block |
---|
mvn versions:set -DnewVersion=${AMBARI_VERSION} #Note: The ambari-metrics project is not wired up to the main ambari project. However there is a dependency on ambari-metrics-common to build the ambari-server RPM. #Hence you also need to set ambari-metrics project version as well. pushd ambari-metrics mvn versions:set -DnewVersion=${AMBARI_VERSION} popd mvn -B clean install package rpm:rpm -DskipTests -Dpython.ver="python >= 2.6" -Preplaceurl |
SUSE/SLES 11:
Code Block |
---|
mvn versions:set -DnewVersion=${AMBARI_VERSION} #Note: The ambari-metrics project is not wired up to the main ambari project. However there is a dependency on ambari-metrics-common to build the ambari-server RPM. #Hence you also need to set ambari-metrics project version as well. pushd ambari-metrics mvn versions:set -DnewVersion=${AMBARI_VERSION} popd mvn -B clean install package rpm:rpm -DskipTests -Psuse11 -Dpython.ver="python >= 2.6" -Preplaceurl |
Ubuntu 12:
Code Block |
---|
mvn versions:set -DnewVersion=${AMBARI_VERSION} #Note: The ambari-metrics project is not wired up to the main ambari project. However there is a dependency on ambari-metrics-common to build the ambari-server RPM. #Hence you also need to set ambari-metrics project version as well. pushd ambari-metrics mvn versions:set -DnewVersion=${AMBARI_VERSION} popd mvn -B clean install package jdeb:jdeb -DskipTests -Dpython.ver="python >= 2.6" -Preplaceurl |
Ambari Server will create following packages
- RPM will be created under
AMBARI_DIR
/ambari-server/target/rpm/ambari-server/RPMS/noarch. - DEB will be created under
AMBARI_DIR
/ambari-server/target/
...
NOTE: Run everything as root
below.
Building Ambari Metrics
If you plan on installing the Ambari Metrics service, you will also need to build the Ambari Metrics project.
Code Block |
---|
Code Block |
#] cd ambari-metrics #] mvn clean package -Dbuild-rpm -DskipTests For Ubuntu use ": cd ambari-metrics mvn clean package -Dbuild-deb" -DskipTests |
Note:
The metrics rpms will be found at: ambari-metrics-assembly/target/. These would be need for installing the Ambari Metrics service.
Running the Ambari Server
First, install the Ambari Server RPM.
On RHEL/CentOS:
Code Block |
---|
yum install ambari-server/target/rpm/ambari-server/RPMS/noarch/ambari-server-*.noarch.rpm |
...
Code Block |
---|
zypper install ambari-server/target/rpm/ambari-server/RPMS/noarch/ambari-server-*.noarch.rpm |
On Ubuntu 12:
Code Block |
---|
dpkg --install ambari-server/target/ambari-server-*.deb # Will fail with missing dependencies errors apt-get update # Update locations of dependencies apt-get install -f # Install all failed dependencies dpkg --install ambari-server/target/ambari-server-*.deb # Will succeed |
...