ADCM Objects

Before using ADCM we recomend you to take a glance at ADCM’s object model. At first let us show you what are the internal objects and their roles.

../_images/concept.png

Рис. 3. Platform concept

Bundle

Bundle is a delivery unit in ADCM. New extensions and parts are coming over in bundles. In short, it is just a tarball with the information for ADCM, explaining how to do everything.

There are two kinds of bundle: Cluster Bundle and Infrastructure Bundle.

Cluster Bundle allows you to install Cluster (take a look at a definition bellow), while Infrastructure Bundle allows you to add support of different host providers (like Google Cloud, Yandex Cloud or regular ssh host).

Host

It is a representation of real hardware host or virtual host. It doesn’t metter whether it commes in (a cloud or baremetal) but it should be accessable over ssh. Every host could be added to setten cluster only.

Provider

Provider is a complecated idea. Provider is something that produces a host. For example you have a Google Cloud account. In that case you create a GCE Provider, place credentials to it, and it allows you to create a host in GCE. Or create a lot of hosts and all of them will have the same Provider and consequently have the same credentials.

Service

Service is a software that does some function. For example Hadoop is a service, and Hive is a service, as well as Postgres and so on.

Component

Component is a part of the service. For example Hadoop service has DataNode component and ServiceNode component. It is a way of service decomposition which is native for complecated cluster software.

Cluster

In short, cluster is a set of services running on the set of hosts. With ADCM you are able to create a lot of clusters with different configuration and destribution of services over clusters.

But one cluster allows restricted set of service kinds only. So if you create a cluster Hadoop from bundle Hadoop, there is no way to install services from cluster ADB from bundle ADB.