What is Cloud Computing?
Cloud Computing is on-demand delivery of IT resources and applications via the Internet with pay-as-you-go pricing. With cloud computing, we do not required to make large up-front investments in hardware and spend a lot of time in managing that hardware. Instead, we can provision exactly the right type and size of computing resources instantly we required. You can access as many resources as you need, almost instantly, and only pay for what you use.
Cloud computing provides an easy way to access servers, storage, databases and a broad set of application services over the Internet. Cloud computing providers such as AWS, Azure, GCP etc. own and maintain the network connected hardware required for these application services, while we provision and use what we need for our workloads.
Advantages of Cloud Computing
There are various advantages of cloud computing. Few of them are as follows:
- Scalability/Elasticity : On Demand Cloud Infrastructure.
- Low Cost : Reducing up-front cost to buy service machines, No need for hiring/training manpower. Pay as you go charges are applied hourly, monthly and yearly basis.
- Disaster Recovery and Backup : Cloud services have very high availability of ~99.9999% by proactively taking backups, having standby virtual resources.
- Secure : There are various services available to provide security to your applications.
Cloud Deployment Models
There are four types of deployment models as follows:
- Public Cloud
- Private Cloud
- Hybrid Cloud
- Community Cloud
Public Cloud Service providers use the internet to make resources, such as applications, storage and other services available. Few public cloud providers are Amazon web Service, Google Cloud Services, Microsoft Azure, IBM CLoud, Oracle Cloud etc.These types of clouds provides the best economies of scale, are inexpensive to set-up because hardware, application and bandwidth costs beared by the cloud provider. It’s a pay-per-usage model and the only costs incurred are based on the capacity that is used.
Public cloud model may not be the right fit for every organization. This model can limit configuration, security and SLA making it less-than-ideal for services using sensitive data that is subject to compliance regulations.
Private clouds are data-center architectures owned by a single company that provides flexibility, scalability, provisioning, automation and monitoring. The goal of private cloud is not sell “as-a-service” offerings to external customers but instead to gain the benefits of cloud architecture without giving up the control of maintaining your own data-center.
Private clouds can be very expensive, so mostly used by large enterprises. Private clouds are driven by concerns around data security and compliance, keeping assets within the firewall.
Using Hybrid Model, companies can maintain & control of an internally managed private cloud while relying on the public cloud as needed. For instance, during peak periods individual applications, or portions of applications can be migrated to the Public Cloud. This will also be beneficial during predictable outages: hurricane warnings, scheduled maintenance windows, rolling brown/blackouts.
Community cloud is a multi-tenant infrastructure that is shared among several enterprises from a specific group with common computing concerns.
Cloud Service Models
There are three types of cloud service models:
- SaaS – Software as a Service
- PaaS – Platform as a Service
- IaaS – Infrastructure as a Service
Software as a Service (SaaS)
Saas is software distribution model in which applications are hosted by the vendor over the internet. Software as a service is the easiest way to cloud compute. The softwares are accessed over the internet. Users can subscribe the service and use the app through a web browser or by installing an application in desktop or mobile phones.
A few SaaS providers are :
- Google – mails, calendars, docs etc.
- Paypal etc.
Platform as a Service (PaaS)
Platform as a Service (PaaS) is a category of cloud computing that provides a platform and environment to allow developers to build applications. It frees developers without going into the complexity of building and maintaining the whole infrastructure. With PaaS, developers and organizations can create highly scalable apps without having to provision, maintain hardware and operating system resources.
A few PaaS providers are:
- AWS Beanstalk
- GCP App Engine
- Azure App Services etc.
Infrastructure as a Service (IaaS)
Infrastructure as a Service (IaaS) is a form of cloud computing that provides virtualized computing resources over the internet such as CPU, Memory (RAM), Hard disk, switches, routers, firewall, DNS, DHCP, Load-Balancer, Auto Scaling etc.
A few IaaS providers are:
- Amazon Web Services
- Microsoft Azure
- Google Cloud Platform
- IBM Cloud
- Rackspace Cloud
- Oracle Cloud
So far you have got better understanding of cloud computing. I hope you get it. In our upcoming tutorials, you will learn various AWS Services.
Read Also : Amazon S3 – Simple Storage Service