Build and install Ambari 2.8.0


Refer Ambari Development for prerequisites and additional information on how to build Apache Ambari.
Maven blocks external HTTP repositories by default since version 3.8.1. In such a case you can disable this feature by following these steps.


Notice: Ambari 2.8.0 only supports CentOS-7(x86_64) currently

Step 1: Download and build Ambari 2.8.0 source

Go to http://www.apache.org/dyn/closer.cgi/ambari/ambari-2.8.0 and find the suggested mirror for download. The process to verify the download is described is at http://www.apache.org/dyn/closer.cgi#verify

wget https://dlcdn.apache.org/ambari/ambari-2.8.0/apache-ambari-2.8.0-src.tar.gz (use the suggested mirror from above)
tar xfvz apache-ambari-2.8.0-src.tar.gz
cd apache-ambari-2.8.0-src
mvn clean install rpm:rpm -DskipTests -Drat.skip=true


Note: You need to have tools such as rpm-build tool, brunch, etc.  For details on prerequisites, please see Ambari Development.

Step 2: Install Ambari Server

Install the rpm package from ambari-server/target/rpm/ambari-server/RPMS/noarch/

yum install ambari-server*.rpm    #This should also pull in postgres packages as well.

Step 3: Setup and Start Ambari Server

Run the setup command to configure your Ambari Server, Database, JDK, LDAP, and other options:

ambari-server setup

Follow the on-screen instructions to proceed.

Once set up is done, start Ambari Server:

ambari-server start

Step 4: Install and Start Ambari Agent on All Hosts

Note: This step needs to be run on all hosts that will be managed by Ambari.

Copy the rpm package from ambari-agent/target/rpm/ambari-agent/RPMS/x86_64/ and run:

yum install ambari-agent*.rpm


Edit /etc/ambari-agent/ambari.ini

Make sure hostname under the [server] section points to the actual Ambari Server host, rather than "localhost".

ambari-agent start

Step 5: Deploy Cluster using Ambari Web UI

Open up a web browser and go to http://<ambari-server-host>:8080.

Log in with username admin and password admin and follow on-screen instructions. Secure your environment by ensuring your administrator details are changed from the default values as soon as possible.

Under Install Options page, enter the hosts to add to the cluster.  Do not supply any SSH key, and check "Perform manual registration on hosts and do not use SSH" and hit "Next".

Build your yum repository

Ambari 2.8.0 doesn't provide yum repository like the old versions did, we need to build repository on our own.

Check Bigtop document before you do the following steps: https://github.com/apache/bigtop#for-developers-building-the-entire-distribution-from-scratch.

Step 1: Download Bigtop 3.2.0 source

Go to http://www.apache.org/dyn/closer.cgi/bigtop/bigtop-3.2.0 and find the suggested mirror for download. The process to verify the download is described is at http://www.apache.org/dyn/closer.cgi#verify

wget https://dlcdn.apache.org/bigtop/bigtop-3.2.0/bigtop-3.2.0-project.tar.gz (use the suggested mirror from above)
tar xfvz bigtop-3.2.0-project.tar.gz

Step 2: Build Bigtop components

Make sure you have build environment set for bigtop packages(CentOS-7, x86_64).

cd bigtop-3.2.0
./gradlew allclean bigtop-groovy-pkg bigtop-jsvc-pkg bigtop-select-pkg bigtop-utils-pkg flink-pkg hadoop-pkg hbase-pkg hive-pkg kafka-pkg solr-pkg spark-pkg tez-pkg zeppelin-pkg zookeeper-pkg -Dbuildwithdeps=true -PparentDir=/usr/bigtop -PpkgSuffix

Step 3: Download and Build Ambari Metrics 3.0.0

Go to http://www.apache.org/dyn/closer.cgi/ambari/ambari-metrics-3.0.0 and find the suggested mirror for download. The process to verify the download is described is at http://www.apache.org/dyn/closer.cgi#verify

wget https://dlcdn.apache.org/ambari/ambari-metrics-3.0.0/apache-ambari-metrics-3.0.0-src.tar.gz (use the suggested mirror from above)
tar xfvz apache-ambari-metrics-3.0.0-src.tar.gz
cd apache-ambari-metrics-3.0.0-src
mvn clean install -DskipTests -Dbuild-rpm

Step 4: Move Ambari Metrics packages to bigtop directory

Assuming you download ambari-metrics and bigtop source code on the same directory

mkdir -p bigtop-3.2.0/output/ambari-metrics
rm -f bigtop-3.2.0/output/ambari-metrics/ambari-metrics-*.rpm
cp apache-ambari-metrics-3.0.0-src/ambari-metrics-assembly/target/rpm/ambari-metrics-collector/RPMS/x86_64/ambari-metrics-collector-*.rpm bigtop-3.2.0/output/ambari-metrics/
cp apache-ambari-metrics-3.0.0-src/ambari-metrics-assembly/target/rpm/ambari-metrics-grafana/RPMS/x86_64/ambari-metrics-grafana-*.rpm bigtop-3.2.0/output/ambari-metrics/
cp apache-ambari-metrics-3.0.0-src/ambari-metrics-assembly/target/rpm/ambari-metrics-hadoop-sink/RPMS/x86_64/ambari-metrics-hadoop-sink-*.rpm bigtop-3.2.0/output/ambari-metrics/
cp apache-ambari-metrics-3.0.0-src/ambari-metrics-assembly/target/rpm/ambari-metrics-monitor/RPMS/x86_64/ambari-metrics-monitor-*.rpm bigtop-3.2.0/output/ambari-metrics/

Step 5: Create your yum repository

cd bigtop-3.2.0/output/
createrepo .

# Expose the directory on HTTP server(choose your own way, here we use python2 SimpleHTTPServer for example)
python -m SimpleHTTPServer

Step 6: Change repository url

Change your repository url to point to the yum repository you just built.