After exploring how to secure systems and networks in Day 8 (Network Security and DevSecOps), I wanted to understand where all these systems actually live.
I had spent enough time protecting the pipelines - now it was time to understand the platform that powers them.
That's when I entered the world of Cloud Computing - the heart of modern DevOps.
What is Cloud Computing?
When I first launched my sandbox project on an AWS EC2 instance, it hit me - the cloud isn't some distant, complex system.
It's computing on demand - available anytime, anywhere, in seconds.
No cables, no datacenters - just configuration, connectivity, and scalability.
Definition: Cloud computing delivers servers, databases, storage, networking, and software services over the internet ("the cloud") - on a pay-as-you-go model.
Cloud Service Models
Model | Meaning | What It Offers | Example |
---|---|---|---|
IaaS | Infrastructure as a Service | Compute, storage, networking | AWS EC2, Azure VM |
PaaS | Platform as a Service | Managed environment for development | AWS Elastic Beanstalk |
SaaS | Software as a Service | Ready-to-use applications | Gmail, Salesforce |
Each model defines how much control you have:
- IaaS: You manage everything above the OS.
- PaaS: Focus only on code - the platform handles scaling.
- SaaS: You consume; the vendor manages all.
Lesson: Cloud computing isn't about moving data online - it's about shifting responsibility strategically.
Deployment Models
Type | Description | Example |
---|---|---|
Public Cloud | Shared by multiple organizations | AWS, Azure, GCP |
Private Cloud | Dedicated to one organization | VMware Cloud |
Hybrid Cloud | Mix of both | AWS Outposts, Azure Stack |
My "Aha!" Moment - Elasticity in Action
During one of my log analyzer tests, I scaled my application on AWS from 1 to 3 instances in under a minute.
Then, I stopped them - and billing stopped too.
That's when I realized what "elasticity" truly meant.
You only pay for what you use, and you scale when you need it.
Lesson: Cloud computing isn't just about running servers - it's about running them intelligently.
Identity and Access Management (IAM) - The Security Backbone of AWS
In traditional setups, access control meant login credentials.
In the cloud, it's Identity and Access Management (IAM) - a system that defines who can do what on which resources.
At first, I underestimated IAM - until I accidentally gave an admin-level policy to a test user.
It taught me a critical lesson about cloud security hygiene.
Key IAM Components
Component | Role |
---|---|
Users | Individual accounts (engineers, admins) |
Groups | Collection of users with common permissions |
Roles | Temporary access for AWS services (EC2, Lambda) |
Policies | JSON-based documents defining permissions |
Example IAM Policy (Least Privilege)
This gives read-only access to the S3 bucket - nothing more.
Key takeaway: Always apply the Principle of Least Privilege - give only what's needed.
My First IAM Mistake
While experimenting with AWS, I once created a new IAM user to test access permissions for S3.
I wanted the user to upload log reports from the Bash Log Analyzer project — but every time I tried running:
aws s3 cp ./reports s3://my-devops-logs/ --recursive
I kept getting this frustrating error:
An error occurred (AccessDenied) when calling the PutObject operation: Access Denied
After checking the policy, I realized the user only had s3:GetObject (read-only) permissions - not s3:PutObject (write).
It was such a small oversight, yet it stopped my automation completely.
I updated the policy to:
And instantly, everything worked.
Lesson: In the cloud, permissions can make or break productivity. Always double-check what’s allowed — both read and write.
Introduction to AWS - My First Steps into the Cloud
AWS (Amazon Web Services) felt like a huge universe of services at first.
So I simplified it - I started with the essentials every DevOps engineer must know.
Step 1: Launching an EC2 Instance
My first step was creating a virtual machine (EC2) on AWS.
Commands that became second nature:
ssh -i mykey.pem ubuntu@<public-ip>
sudo apt update && sudo apt install git
That one EC2 instance became my testing ground for every experiment - from bash scripts to log analyzers.
Step 2: Storing Logs in S3
Then I moved my project's log reports to Amazon S3 (Simple Storage Service):
aws s3 cp reports/ s3://my-devops-logs/ --recursive
Suddenly, my reports were globally accessible - securely and durably.
Step 3: Networking with VPC
I created a Virtual Private Cloud (VPC) - my own isolated network inside AWS.
I configured:
- Subnets (Public & Private)
- Internet Gateway
- Routing Tables
That experience made me appreciate how my networking knowledge from Day 7 now directly applied in the cloud.
The DevOps Connection - Cloud as the Engine
In DevOps, cloud computing isn't just about hosting - it's about automation and scalability.
Benefit | Impact |
---|---|
Scalability | Auto-scaling instances during traffic spikes |
Reliability | Multi-region deployments |
Speed | CI/CD pipelines running globally |
Security | IAM, encryption, monitoring |
Observability | CloudWatch + custom dashboards |
Lesson: DevOps without cloud is like scripting without a terminal - limited and local.
Real Scenario - The Forgotten S3 Policy
Once, while uploading files from EC2 to S3, I kept getting "Access Denied."
Everything seemed fine - until I checked the bucket policy.
It was denying uploads from non-HTTPS connections.
A small oversight, but a great reminder:
"Security isn't a barrier - it's a guide to better configurations."
Key Takeaways
- Cloud Computing = Renting intelligence, not just hardware.
- IAM = The guardian of every resource.
- AWS = The backbone of modern DevOps workflows.
- Always prefer roles over credentials.
- Test your permissions before you automate them.
What's Next (Day 10 - Deep Dive into AWS EC2)
Now that we've explored the foundations of Cloud Computing and IAM, it's time to roll up our sleeves and build inside the cloud.
In Day 10, I'll dive deep into Amazon EC2 (Elastic Compute Cloud) - where theory meets execution.
Here's what's coming next:
- Elastic Compute Cloud (EC2) - Understanding the core of AWS computing.
- Amazon Machine Images (AMI) - The blueprints of every instance.
- EC2 Instance Metadata & User Data - Automating configuration at launch.
- EC2 Instance Types & Pricing Models - Choosing the right compute for the right workload.
- AWS CLI - Managing AWS resources from the terminal like a true DevOps engineer.
"This is where cloud theory turns into infrastructure reality."
Stay tuned - Day 10 will be all about launching, configuring, and optimizing instances at scale.
Top comments (0)