Introducing Apache Ambari

Apache Ambari is a web-based tool for provisioning, managing, and monitoring Apache Hadoop clusters. Ambari provides Restful APIs and a web-based management interface.

Ambari started as a sub-project of Hadoop but has now become a fully-fledged tool used by many Hadoop developers and administrators. The latest version available is Ambari 2.5.1

System requirements for Ambari:

Ambari can be installed only on UNIX based servers as of now. You would also need the following add-ons / packages.

  • xCode
  • JDK 7.0 (in case you use a previous version of Ambari it can be compiled using JDK 6.0). The future versions of Ambari>3.0 will require JDK 8.0
  • Python and Python setup tools
  • rpmbuild
  • gcc-c++ package
  • nodejs

Running the Ambari server:

Download the tarball and install it on the server.

Type command ambari-server setup. This will initialize the Ambari server.

To start /stop /restart/ check the status of the Ambari server use the following command:

ambari-server start/stop/status

To login to the Ambari server, open the URL: http://<<your-ambari-server>>:8080/. The default username and password is admin and admin respectively.

Changing the default port 8080 on the Ambari server:

To change the port of Ambari server , open the following file

/etc/ambari-server/conf/ambari.properties

search for the line that starts with client.api.port, it would be like:

client.api.port = 8080

change it to

#client.api.port = 8080

client.api.port = 8090 (We have taken a backup in case the Ambari is not happy using the new port).

Save the file and then restart the Ambari server.

sudo ambari-server stop

sudo ambari-server start

If you have a webserver such as Apache running, you can also do a proxypass and proxyreserve to transfer all the requests on a particular URL to the Ambari port.

Deploying Ambari client on the clusters:

  • Download and install the Ambari agent rpm on the clusters.
  • Edit the file /etc/ambari-agent/conf/ambari-agent.ini and in the location update the ip address / location of the ambari server
  • then start the Ambari agent using command ambari-agent start

Ports used by Ambari:

The Ambari uses the following default ports:

  • 8080-for Ambari web interface
  • 8440 – for connection between Ambari agents to Ambari server.
  • 8441 – for registration and providing the heartbeat from Ambari agents to Ambari server.

When the Ambari host does not connect to Ambari server, there are basic checkpoints that you can perform:

  • In case there is a firewall between the Ambari host and server, check that the port 8440 and 8441 are allowed over the firewall.
  • Check the iptables for the rules pertaining to Ambari ports
  • Disable selinux on both server and client and check if the host is able to connect to the server.
  • Check the logs available at location /var/lob/ambari-agent/ambari-agent.log to see the error messages.

Further information on Ambari is available on: https://ambari.apache.org/

Author

  • Anubhav Jha is experienced in web development and specializes in languages such as PHP, MySQL, Linux and Java. He specializes in geo-spatial databases, CRM designing and search algorithms. His technology interests span machine learning, NLP, Analytics and Big Data.

Published by

Anubhav Jha

Anubhav Jha is experienced in web development and specializes in languages such as PHP, MySQL, Linux and Java. He specializes in geo-spatial databases, CRM designing and search algorithms. His technology interests span machine learning, NLP, Analytics and Big Data. View all posts by Anubhav Jha