Skip to content

Administration of CSDs

Kostas Sakellis edited this page Feb 26, 2014 · 9 revisions

For the first release of the CSD framework, Cloudera Manager does not fully support a dynamic installation of CSDs. Because of this, it is advised that customers go though the full installation instructions to install a CSD.

Installing

  1. Copy the CSD jar to the local repository location. This location is configurable but the default is: /opt/cloudera/csd
  2. Restart Cloudera Manager
  3. Restart all Management Services

Uninstalling

  1. Make sure all services of the CSD service type are stopped and deleted.
  2. Remove the CSD jar from the local repository.
  3. Restart Cloudera Manager
  4. Restart all Management Services.

Note: Although there is a developer shortcut to installing/uninstalling CSDs, this is the only way that Cloudera recommends to our customers administer CSDs. Documentation can be found here

Placeholder Service Handlers

Cloudera Manager has a concept of services and service handlers. A service is a specific instance of a service type and is persisted in the CM database. There can be multiple services for the same service type. A service handler on the other hand is stateless and provides the metadata for the service type - for example, commands to run, how to start/stop and configuration files. A CSD in essence is a service handler but just provided externally through a jar file. For example the SPARK-1.0.jar CSD provides the service handler for the SPARK service type.

Since built-in service handlers, like HDFS, are part of the Cloudera Manager binary they cannot disappear. CSDs on the other hand are all read from disk and stored in memory when Cloudera Manager starts up. If a service exists in the database but there isn't a corresponding CSD on disk on startup, then Cloudera Manager won't know what to do with that service. To address this, there is a concept of placeholder service handlers.

A placeholder service handler is added to Cloudera Manager if, on startup, it detects there are services in its database without a corresponding CSD. A placeholder service handler provides very limited functionality to the service. A user can only stop the service and delete it. The service type is no longer available in the wizards to be added. Other situations that CM can create placeholders are:

  • the CSD has a validation error and cannot be loaded
  • the CSD is missing
  • an incompatible CSD is added (generation change)

In these cases, the correct CSD needs to be re-added for the service to be fully functional again.

Clone this wiki locally