Cloud computing is the delivery of computing services via the Internet ("the cloud"), including servers, storage, databases, networking, software, analytics, and more. Cloud computing providers such as Amazon Web Services (AWS) provide these services on a pay-as-you-go basis, allowing businesses and users to pay only for what they use.
Cloud computing is a paradigm shift from traditional on-premises IT infrastructure to remotely accessed services over the internet. It offers flexibility, scalability, and cost-efficiency compared to traditional IT models.
Objective is to move into cloud from on-premises infrastructure.
- Cost Savings
- Scalability and Flexibility
- Agility and Speed
- Disaster Recovery
- Automatic Updates
- Infrastructure as a Service (IaaS) - Provides virtualized computing resources over the internet. Examples include Amazon EC2, Google Compute Engine, and Microsoft Azure.
- Platform as a Service (PaaS) - Provides a platform allowing customers to develop, run, and manage applications without the complexity of building and maintaining the infrastructure. Examples include AWS Elastic Beanstalk, Google App Engine, and Microsoft Azure App Service.
- Software as a Service (SaaS) - Delivers software applications over the internet on a subscription basis. Examples include Google Workspace, Microsoft 365, and Salesforce.
- Public Cloud - Services are delivered over the public internet and shared across organizations. Examples include AWS, Google Cloud Platform, and Microsoft Azure.
- Private Cloud - Services are maintained on a private network and dedicated to a single organization. Examples include VMware Cloud Foundation, OpenStack, and Microsoft Azure Stack.
- Hybrid Cloud - Combines public and private clouds, allowing data and applications to be shared between them. Examples include AWS Outposts, Google Anthos, and Microsoft Azure Arc.
- Multi-Cloud - Involves using services from multiple cloud providers to meet specific business requirements.
Virtualization allows multiple virtual instances to run on a single physical machine, enabling better resource utilization and flexibility.
Cloud services can scale resources up or down based on demand, ensuring optimal performance and cost-effectiveness.
Cloud infrastructure is designed to be fault-tolerant and resilient, minimizing downtime and ensuring high availability.
Elasticity refers to the ability to automatically provision and de-provision resources based on workload fluctuations.
Users can provision computing resources as needed without human intervention, enabling agility and flexibility.
Cloud providers pool computing resources to serve multiple users, optimizing resource utilization and efficiency.
Cloud usage is metered and billed based on actual usage, providing cost transparency and control.
- Security and Compliance
- Data Privacy
- Vendor Lock-in
- Performance and Reliability