Apache Ambari architecture
Apache Ambari follows a master/slave architecture where the master node instructs the slave nodes to perform certain actions and report back the state of every action. The master node is responsible for keeping track of the state of the infrastructure. In order to do this, the master node uses a database server, which can be configured during setup time.
In order to have a better understanding of how Ambari works, let's take a look at the high level architecture of Ambari, in the following diagram:

At the core, we have the following applications:
- Ambari server
- Ambari agent
- Ambari web UI
- Database
The Ambari server
The Ambari server (ambari-server
) is a shell script which is the entry point for all administrative activities on the master server. This script internally uses Python code, ambari-server.py,
and routes all the requests to it.
The Ambari server has the following entry points which are available when passed different parameters to the ambari-server
program:
- Daemon...