According to the National Institution of Standards and Technology, cloud computing is a model for enabling ever present, convenient, on-demand network access to a shared pool of configurable computing resources that can be rapidly provisioned and released with minimal management effort or service provider interaction. In other words, cloud computing can also be referred to as on-demand computing. It is a way for users to get continual access to shared computing resources, such as servers, storage, and sometimes services, as needed.
The cloud has five essential characteristics: resource pooling, on-demand self-service, rapid elasticity, broad network access, and measured service. There are three service models in cloud computing: Infrastructure as a Service (IaaS), Platform as a Service (PaaS), and Software as a Service (SaaS). There are four deployment models, including a private cloud, public cloud, community cloud, and a hybrid cloud, to choose from when considering migrating to the cloud.
Not all organizations and applications should move to the cloud. Before selecting a deployment model, an organization first need to consider the benefits and risks of moving to the cloud in the first place. Cloud computing has opened new possibilities and enables numerous potential benefits, including significant cost savings, faster innovation, and greater flexibility, while accompanying risks such as a sudden jump in costs, varying degree of lock-in, and burden on the existing infrastructure. As for planning for a cloud implementation, some of the most important categories to consider are structured, dependency, connectivity, and reliability. Cloud computing is built upon the ability to virtualize applications, regardless of the deployment model selected. Understanding virtualization is also critical to understanding how pricing works in the cloud.