This section helps new users understand the essential concepts required for using DivineCloud.
Nodes : Nodes are the servers that need to be managed by DivineCloud. Any server that can be connected using SSH protocol, can be managed using Divine Cloud.
For a node to be managed using DivineCloud, it's details need to be added. There are 3 different ways in which the Node details can be added to the DivineCloud:
- Using Add New Node button under Nodes Panel
- Using Import Nodes option. This is useful when adding bulk nodes to DivineCloud.
- Using Cloud Import option. If your servers are located in either AWS, DigitalOcean, Rackspace, Linode or Google cloud, this is the probably the fastest way for adding Nodes.
Credentials : Credentials are passwords and/or private keys required to access the servers. There are 3 different storage options available for credentials :
Inventory : Inventory is a way of organizing all the Nodes in different groups. Inventory can be of different types, like, Private cloud, AWS, Digital Ocean, Linode, Rackspace, Google, etc. Each Inventory has a color code associated with it for easy visual differentiation.
Tenants : Tenants provide a way for isolating all the objects including Nodes, Credential, Inventory, into different groups. Objects from one tenant have NO access to objects in different tenants.
Tags : Tag is a way of grouping nodes in different buckets. Each node can have zero or more tags associated with it. Tags come in very handy when executing ad-hoc commands or executing run-books. Users can select nodes by tag, and can have command or run-book executed on all the nodes belonging to the specified tag.
RunBook : Any repetitive operational procedure can be defined as RunBook using Divine Cloud, allowing companies to standardize their operational procedure and automate the daily execution of the run-book there by reducing errors and increasing the overall visibility and audit ability of the operational process. RunBook is defined as a text file which encapsulates different commands & scripts in a sequence of steps, with each step executable on a different group of servers using RunBook Orchestrator. Each step in RunBook can be defined using any language (Shell script, Ruby, Perl, Python, etc.), thereby making it possible to combine old & new code together for IT automation needs.
The RunBook once defined can be version controlled using the DevOps favorite version control system, there by providing central repository for storing all the system management code base. RunBook once defined can be executed on servers located across any place, including private data centers and/or public clouds like AWS, Digital Ocean, Google, Linode, RackSpace, Joyent, etc.
Figure below shows a sample run-book with each step defined using different language:
RunBook Orchestrator : RunBook Orchestrator allows users to create, edit, document, and execute RunBooks. The figure above showed an example of multi-language run-book being edited using RunBook Orcehstrator. It provides real-time progress for each step of the deploy process. Operators are able to see exactly what step their process is executing and look back on details of previous steps (success, failure, skip, etc).
Group Terminal : Using Group Terminal, DevOps can run Ad-Hoc commands & scripts written in different languages (Shell scripts, Ruby, Perl, Python, Scala, etc.) across 100's of Servers in matter of seconds. This results in significant time savings when managing 1000's of servers distributed across the globe.
Commands & scripts that need to run frequently can be saved , and can later be re-loaded for re-execution. DivineCloud provides a central repository for storing all the command and scripts in single place. Users can choose to save the commands and scripts on their local file system and manage/share the commands & scripts with other peers. This also acts a very good version controlled configuration repository for DevOps.
Booklets : Booklets make it possible to execute any complex task using one-click. The DevOps team can create booklets for any task as simple as installing tomcat server to as complex as creating new AWS VPC along with Subnets, NAT, IgW & desired EC2 instances. Once the booklet is created users can execute the booklet with just one-click, thereby not having to deal with any complex configuration steps from their perspective.