The deployment and configuration of virtual clusters on top of Cloud infrastructures is not a trivial task. Moreover, ensure automatic elasticity to better take advantage of the provided resources requires computing abilities that end-users usually do not have. EC3 (Elastic Cloud Computing Clusters) is a tool that can facilitate this task for the users, deploying and automatically configuring a virtual elastic cluster on top of Cloud infrastructures. This tool is of special interest in the project, because it can be used to deploy every virtual infrastructure needed to execute final applications. In this use-case, we demonstrate the usage of EC3 to deploy a virtual elastic Kubernetes cluster on top of a federated cloud managed by Fogbow.
By using EC3 CLI, available in GitHub (https://github.com/grycap/ec3/tree/im_rest ), users can deploy and configure virtual elastic clusters on top of the federated cloud of the project just typing one command. They can request to EC3 all the software packages and dependencies needed for their clusters.
Elastic Cloud Computing Cluster (EC3) is a tool to create elastic virtual clusters on top of IaaS providers. These self-managed clusters have the capability to adapt the size of the cluster to the workload, creating the illusion of a real cluster without requiring an investment beyond the actual usage. They can be fully customized and dynamically and automatically enlarged and shrunk (in terms of the number of nodes) depending on the number of jobs queued up at the Local Resource Management System (LRMS). The elasticity management is automatically carried out by the front-end node of the cluster, with the help of CLUES. EC3 eases the deployment of virtual clusters providing both a Software as a Service (SaaS) graphical web interface and a powerful Command Line Interface (CLI), for enhanced capabilities.
In the showcase, EC3 is used to deploy a Kubernetes virtual elastic cluster on top of Fogbow. The steps that can be followed in the video are:
Deploy an elastic Kubernetes cluster on top of Fogbow with only a command.
Check the deployment process and status with EC3 CLI and Fogbow CLI.
Connect to the cluster and launch a deployment in Kubernetes.
Monitorize the automatic deployment of a new node (elasticity) that will run the deployment.
Destroy the deployment and observe the automatic elasticity management powering off the node.
Launch manually a node and disable it (testing purposes).
Destroy the complete infrastructure using the EC3 CLI.
EC3 will support the deployment of the virtual infrastructures needed in ATMOSPHERE to execute the applications.