All Sahara Cluster operations are performed in multiple steps. A Cluster objecthas aStatus attribute which changes when Sahara finishes one step ofoperations and starts another one. Also a Cluster object has aStatusdescription attribute which changes whenever Cluster errors occur.
Before performing any operations with OpenStack environment, Sahara validatesuser input.
If any of the validations fails during creating, the Cluster object will stillbe kept in the database with anError status. If any validations failsduring scaling theActive Cluster, it will be kept with anActivestatus. In both cases status description will contain error messages about thereasons of failure.
This status means that the Provisioning plugin is performing someinfrastructure updates.
It takes some time for OpenStack to schedule all the required VMs and Volumes,so sahara will wait until all of the VMs are in anActive state.
Sahara waits while VMs’ operating systems boot up and all internalinfrastructure components like networks and volumes are attached and ready touse.
Sahara prepares a Cluster for starting. This step includes generating the/etc/hosts file or changing/etc/resolv.conf file (if you use Designateservice), so that all instances can access each other by a hostname.Also Sahara updates theauthorized_keys file on each VM, so that VMs cancommunicate without passwords.
Sahara pushes service configurations to VMs. Both XML and JSON basedconfigurations and environmental variables are set on this step.
Sahara is starting Hadoop services on Cluster’s VMs.
Active status means that a Cluster has started successfully and is ready to runEDP Jobs.
Sahara checks the scale/shrink request for validity. The Plugin method calledfor performing Plugin specific checks is different from the validation methodin creation.
Sahara performs database operations updating all affected existing Node Groupsand creating new ones to join the existing Node Groups.
Status is similar toSpawning in Cluster creation. Sahara adds requiredamount of VMs to the existing Node Groups and creates new Node Groups.
Status is similar toConfiguring in Cluster creation. New instances arebeing configured in the same manner as already existing ones. The VMs in theexisting Cluster are also updated with a new/etc/hosts file or/etc/resolv.conf file.
Sahara stops Hadoop services on VMs that will be deleted from a Cluster.Decommissioning a Data Node may take some time because Hadoop rearranges datareplicas around the Cluster, so that no data will be lost after that Data Nodeis deleted.
The sameActive status as after Cluster creation.
The only step, that releases all Cluster’s resources and removes it from thedatabase.
If the Cluster creation fails, the Cluster will enter theError state.This status means the Cluster may not be able to perform any operationsnormally. This cluster will stay in the database until it is manually deleted.The reason for failure may be found in the sahara logs. Also, the statusdescription will contain information about the error.
If an error occurs during theAddingInstances operation, Sahara will firsttry to rollback this operation. If a rollback is impossible or fails itself,then the Cluster will also go into anError state. If a rollback wassuccessful, Cluster will get into anActive state and status descriptionwill contain a short message about the reason ofAddingInstances failure.

Except where otherwise noted, this document is licensed underCreative Commons Attribution 3.0 License. See all OpenStack Legal Documents.