Altus Director Interfaces

Altus Director provides different user interfaces for centralized deployment, configuration, and administration of Cloudera Manager and CDH clusters in the cloud. After you complete the Altus Director installation, you can use any interface to deploy Cloudera Manager and CDH clusters in the cloud. To manage the CDH deployment, use the interface that is appropriate for the complexity of the configuration or administrative tasks that you need to perform.

Altus Director provides the following user interfaces:
  • Web User Interface (Web UI) - The web UI is a graphical interface to deploy and manage clusters in the cloud. You can use the web UI to monitor the clusters and access the cluster activity logs.
  • Command Line Interface (CLI) - The command line interface uses a configuration file to define the settings for a cluster. The configuration file allows you to deploy clusters with custom settings and without operator intervention.
  • API - You can use the Altus Director API to programmatically control the lifecycle of your clusters. Cloudera provides SDKs for the Python and Java programming languages.

Web User Interface

After you install the Altus Director server, you can use a browser to access the Altus Director web UI.

The web UI has a dashboard that shows the available environments and displays information about the Cloudera Manager deployments and the clusters in the deployment. Use the setup wizard in the web UI to easily and quickly deploy clusters in the cloud. You can also use the web UI to define environments, deployments, and clusters, add nodes to clusters, or clone clusters.

When you use the web UI to deploy a cluster, Altus Director saves the state of the cluster in the Altus Director database. The database can store deployment information about multiple environments, deployments, and clusters that are deployed and managed by Altus Director. The deployment information in the database allows Altus Director to create additional clusters in the managed deployments.

By default, Altus Director saves deployment information in an H2 database, but the H2 database is only supported for proof-of-concept clusters or for testing. Configure Altus Director to use an externally managed MySQL or MariaDB database for production clusters. Specify an external database in the application.properties file in the server host. For more information, see Configuring Storage for Altus Director.

If you use the web UI to deploy Cloudera Manager and CDH, you can use the web UI or API to manage the Cloudera Manager deployment, terminate clusters, or deploy additional clusters. You can use the command line interface to deploy more clusters or to terminate clusters. You can also use the web UI to manage clusters if you use the command line interface or API to deploy them.

You can use the web UI to perform most configuration and administrative tasks on a Cloudera Manager deployment. When you perform a complex or customized deployment or configuration, you might have to use the command line interface with a configuration file or to use the API. For example, you cannot update the TLS settings of a deployment on the web UI. You must use the CLI or the API to enable or disable TLS in a deployment.

Command Line Interface

To use the Altus Director command line interface, you must install the Altus Director client in addition to the server. You can install the Altus Director client separately from the server. You can install the client in multiple locations, with all clients communicating with the same Altus Director server in the cloud.

When you run a command, the client connects to the server to complete the operation. To connect to the server, the client requires the host and user account information for the Altus Director server.

When you use the command line interface to deploy a cluster, the state of the cluster is saved in the Altus Director database. The database can store deployment information about multiple environments, deployments, and clusters that are deployed and managed by Altus Director. The deployment information in the database allows Altus Director to create additional clusters within the managed deployments.

If you use the command line interface to deploy a cluster, you can use the web UI or the API to manage the cluster.

Application Properties File

When you install the Altus Director client, the installation creates a configuration file named application.properties. The properties file includes configuration properties such as the Altus Director server host, port number, and user account. You can modify the settings in the application.properties file based on your operational requirements.

By default, the command line interface reads the settings in the application.properties file on the client host to determine the parameters of a command. When you run a command, you can override properties in the application.properties file by passing the properties directly to the command. For example, you can pass the hostname and port number for the Altus Director server. If you do not include these properties in the command, the command reads the properties from the application.properties file.

Cluster Configuration File

A template is a common and useful way to define the configuration and infrastructure of a cloud deployment. Altus Director uses a configuration file as a template for cluster deployments in the cloud. You can use the configuration file to define your cluster deployment across different cloud environments.

The Altus Director command line interface uses a configuration file to determine the deployment configuration for a cluster. When you use the command line interface to deploy a cluster, you must provide the configuration file name. The command reads the file you specify and deploys a cluster configured with the settings defined in the configuration file.

You can create multiple configuration files to deploy clusters with different settings, or you can reuse a configuration file to deploy multiple clusters with the same settings. Cloudera provides sample configuration files that you can use as templates to start a configuration file for your cluster deployment. You can find the sample configuration files on the Altus Director scripts GitHub page.

Commands

The command line interface includes the following commands:

Command Description
bootstrap-remote

Creates an environment, deployment, and cluster on a remote server based on the settings in a configuration file. The configuration file name must have a .conf extension. The bootstrap-remote command reads the configuration file and creates a cluster with the configuration settings defined in the file. As with Director UI installations,

bootstrap-remote speeds up the bootstrap process by configuring Cloudera Manager and the CDH cluster in parallel.

To ensure that the command connects to the Altus Director server correctly, you can pass server host and user account properties to the command. The bootstrap-remote command uses the values you pass to connect to the server instead of the values in the application.properties file. For example, you can pass the following properties:
  • lp.remote.hostAndPort=host[:port]

    Hostname and port number of the Altus Director server. The default value in the application.properties file is set to localhost:7189.

  • lp.remote.username=<Altus Director server username>

    Username to use to log in to the Altus Director server.

  • lp.remote.password=<Altus Director server password>

    Password for the Altus Director server user account.

terminate-remote

Terminates a cluster and deployment on a remote server.

As in the bootstrap-remote command, you can pass the hostname and port number to connect to the Altus Director server and the username and password to log in to Altus Director.

validate-remote

Validates the configuration file of an environment, deployment, or cluster. For clusters, it validates the correctness of the role and service types, but not the configuration keys, values, or semantics of the role placement.

You can set the lp.validate.verbose property to true to output an HTML representation of the configuration.

convert-remote Converts a simple configuration file to a standard configuration file. For more information, see Converting a Configuration File from Simple to Standard Format.

API

Altus Director has an API that provides access to all Altus Director features. The Altus Director API is a REST API that uses JSON as the data interchange format.

Use the API to access Altus Director from a script or to integrate Altus Director features with an application. The API includes SDKs to help you integrate Altus Director into Python or Java applications. You can use the API to deploy Cloudera Manager and CDH clusters on any cloud environment supported by Altus Director. You can find information about the Altus Director Java and Python APIs on the Altus Director SDK GitHub page.

The API includes a console to assist the development process. You can use the API console during development to interactively configure settings or perform ad hoc operations on the cluster in the cloud. You can also use it to explore Altus Director features and to test and troubleshoot clusters. You can access the API console for your deployment at http://director-server-hostname:7189/api-console.

Altus Director Interface Usage

The following table shows the tasks you can perform in the different Director interfaces:

Task Web UI Command line Interface API
Deploy simple clusters
Deploy complex clusters with Kerberos or high availability  
Deploy in production  
View dashboard of cluster deployment    
Manage multiple clusters
Add nodes to clusters  
Remove nodes from clusters  
Clone clusters
Update Cloudera Manager password  
Terminate clusters