This is second article in a series on Cloud Computing for HPC. This article series is taken from an insideHPC guide that describes the challenges that users face and the solutions available to make running cloud based HPC applications a reality. This week we explore cloud computing models.
While the concept of cloud computing can be generalized with the previous definitions in this series, different models of use have come to be used, and in some cases providers have focused on one or more of these models.
- Software-as-a-Service (Saas) – Users are able to run the cloud provider’s applications, which are running on the provider’s cloud computing infrastructure. The user interface is available through various client devices. The end user does not have control over the servers, storage, networking, etc.
- Platform-as-a-Service (Paas) – Users can deploy their own software to the cloud provider’s infrastructure using various development tools, libraries, programming languages and tools that are available. The user does not have control over the underlying hardware systems, but can control how the software is deployed.
- Infrastructure-as-a-Service (Iaas) – The capability provided gives the user or developer the most control over the environment. The consumer can provision, through software, the storage, networks and other resources to run arbitrary software. Although the most flexible for the user, the underlying infrastructure still cannot be managed or controlled.
For companies and organizations considering moving from an in-house data center to an external one (the cloud), financial factors may drive the decision. There are a number of factors to consider when comparing an on-site data center with a cloud-based provider.
- Capital expenditure (CAPEX) – As new hardware is developed and released by systems vendors, the cost to purchase servers must be considered. Many data centers have thousands of systems that are accessed continually, so careful planning is needed to ensure that only portions of the computing or storage infrastructure are replaced at a given time. As users demand more interaction with larger and larger data, new computer servers must be acquired. As newer and faster processors are released frequently by CPU providers at similar costs, IT purchasers must refresh systems on a regular basis, just to satisfy their end-user demands. This can lead to significant amounts of CAPEX on a regular, repeating basis.
- Operational expenditure (OPEX) – As data centers have become more complex, significant effort is required to plan, maintain and manage the resources. With every new system acquired, it must be provisioned and integrated into the existing environment. Storage systems must be monitored for failure, and backup services implemented. In addition to managing the systems, software and storage, other costs such as power for the hardware and for the cooling and air circulation must be planned for. Each new compute or storage system requires a certain amount of power and cooling. Expert personnel are a significant cost as well. Staff that are knowledgeable in the specifics of complex applications (tuning for certain inputs) are required for an efficient implementation for the desired workloads. Over time, the operational expenses will be more than the original cost of the hardware.
Next week we’ll explore the critical components of cloud based HPC. If your prefer you can download the entire series in a PDF format from the insideHPC White Paper Library, courtesy of Penguin Computing.