Cloud is an on-demand, pay-as-you-go, IT services that are delivered over the internet

Cloud is just clustering someone else’s computers Clustering is when you get a bunch of servers to do something

Advantages:

  • Trade capital expense for variable expense, no up-front cost (instead of paying for data centers and servers), pay on-demand (pay only when you use computing resources)
  • Benefit from massive economies of scale, you are sharing the cost with other customers
  • No need to guess capacity, you can scale up or down as needed
  • Increase speed and agility, no need to wait for IT to implement the solution
  • No need to spend money on running and maintaining data centers, you can focus on your customers rather than on the heavy lifting of racking, stacking and powering servers
  • Go global in minutes

SaaS Software, for consumers (e.g.: gmail)

PaaS Platform, for developers (e.g.: heroku)

IaaS Infrastructure, for administrators (e.g.: cloud)

BaaS Backend, (e.g.: firebase)

Deployment

Cloud (great for start-ups), Hybrid (uses both cloud and on-premise), On-Premise (aka private cloud)

Infrastructure

Concerns: Latency (where are customers located?), Cost, Compliance, Service Availability

S3 is object level storage

RDS is block level storage

Objects in S3 are stored in buckets

URL is created to all objects in the bucket

Amazon Web Services

Google Cloud Platform

BigQuery

https://codingisforlosers.com/learn-bigquery-sql/

Kubernetes is an open source project from Google that gives engineers a centralized system for managing containers and makes those services portable. Competes with AWS and Google Cloud Platform, both of which can host Kubernetes clusters.

Microsoft Azure

Microsoft Defender for Cloud

Oracle Cloud Infrastructure

GoldenGate

Infrastructure as Code

IaC

HashiCorp Terraform

Terraform for faster deployment and configuration

Terraform Stacks