Cloud Computing Basics
Mastering the Fundamentals for the Google Cloud Associate Cloud Engineer Exam
1. Overview of Cloud Computing
Cloud computing is the on-demand delivery of IT resources over the internet with pay-as-you-go pricing. Instead of buying, owning, and maintaining physical data centers and servers, you can access technology services, such as computing power, storage, and databases, from a provider like Google Cloud.
2. Detail Elaboration: The Five Essential Characteristics
To succeed in the ACE exam, you must understand the NIST definition of cloud computing, which GCP embodies:
- On-demand self-service: Provision resources (like VMs) automatically without human intervention from Google.
- Broad network access: Capabilities are available over the network and accessed through standard mechanisms (HTTPS, SDKs).
- Resource pooling: Google’s resources are pooled to serve multiple consumers using a multi-tenant model.
- Rapid elasticity: Resources can be elastically provisioned and released to scale rapidly outward and inward with demand.
- Measured service: Resource usage is monitored, controlled, and reported, providing transparency for both the provider and consumer.
3. Core Concepts & GCP Best Practices
The “What” and the “Why”
Google Cloud focuses on five pillars of architectural excellence:
- Reliability: Using Regions and Zones to ensure applications stay up even if a data center fails.
- Scalability: Using Managed Instance Groups (MIGs) to handle traffic spikes.
- Security: The “Shared Responsibility Model”—Google secures the infrastructure; you secure your data and access.
- Cost Optimization: Leveraging Preemptible/Spot VMs for non-critical tasks to save up to 80%.
- Operational Excellence: Using “Infrastructure as Code” (Deployment Manager or Terraform) to automate environments.
4. Service Model Comparison
| Model | Control Level | GCP Example | Best Use Case |
|---|---|---|---|
| IaaS (Infrastructure) | Highest (Full OS access) | Compute Engine | Migrating legacy apps, custom kernels. |
| PaaS (Platform) | Medium (Code only) | App Engine | Web apps where you don’t want to manage servers. |
| Serverless/FaaS | Low (Functions only) | Cloud Functions | Event-driven microservices, image processing. |
| SaaS (Software) | Lowest (End-user) | Google Workspace | Business collaboration and email. |
5. Decision Matrix: Choosing the Right Service
IF you need to lift-and-shift a virtual machine THEN use Compute Engine.
IF you need to run Docker containers with orchestration THEN use Google Kubernetes Engine (GKE).
IF you want to upload code and let Google handle scaling THEN use App Engine.
IF you have a small snippet of code triggered by an upload THEN use Cloud Functions.
Exam Tips: Golden Nuggets
- Distractor Alert: If a question asks for the “least operational overhead,” avoid IaaS (Compute Engine). Look for PaaS or Serverless options.
- Hierarchy: Remember the order: Organization > Folder > Project > Resource. Policies flow downward.
- Billing: Budgets are set at the Billing Account level, but can be scoped to projects. They do NOT stop services by default; they only alert.
- Global vs Regional: Cloud Storage is Global/Regional/Multi-regional; Compute Engine instances are Zonal. Know your scopes!
GCP Resource Hierarchy & Architecture
Compute: GCE, GKE, App Engine, Cloud Run.
Storage: Cloud Storage (Unstructured), Cloud SQL (Relational), Bigtable (NoSQL).
Leaving the ‘default’ network open (SSH/RDP). Forgetting to enable APIs before trying to use a service via CLI (gcloud).
Standard Web Stack: Cloud DNS -> Cloud Load Balancing -> Managed Instance Group -> Cloud SQL.