<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>Forem: Sudarshan Yadav</title>
    <description>The latest articles on Forem by Sudarshan Yadav (@sudarshan_yadav).</description>
    <link>https://forem.com/sudarshan_yadav</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3624364%2F2ccca948-7afd-4633-90e6-3ff04e702005.jpg</url>
      <title>Forem: Sudarshan Yadav</title>
      <link>https://forem.com/sudarshan_yadav</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://forem.com/feed/sudarshan_yadav"/>
    <language>en</language>
    <item>
      <title>📅 Day 22 | AWS DynamoDB — Serverless NoSQL Database in AWS ⚡☁️</title>
      <dc:creator>Sudarshan Yadav</dc:creator>
      <pubDate>Thu, 25 Dec 2025 07:59:10 +0000</pubDate>
      <link>https://forem.com/sudarshan_yadav/day-22-aws-dynamodb-serverless-nosql-database-in-aws-19gk</link>
      <guid>https://forem.com/sudarshan_yadav/day-22-aws-dynamodb-serverless-nosql-database-in-aws-19gk</guid>
      <description>&lt;p&gt;# 📅 Day 22 | AWS DynamoDB — Serverless NoSQL Database in AWS ⚡☁️&lt;/p&gt;

&lt;p&gt;Today, I learned about &lt;strong&gt;AWS DynamoDB&lt;/strong&gt;, a fully managed, serverless, NoSQL database service designed to provide fast and predictable performance with seamless scalability.&lt;/p&gt;

&lt;p&gt;DynamoDB is a key-value and document database that delivers single-digit millisecond performance at any scale. It’s a favorite for DevOps and Cloud Engineers because it removes the administrative burden of operating and scaling distributed databases.&lt;/p&gt;




&lt;h1&gt;
  
  
  ⚡ AWS DynamoDB – DevOps Explanation
&lt;/h1&gt;

&lt;h2&gt;
  
  
  What is AWS DynamoDB?
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;AWS DynamoDB&lt;/strong&gt; is a &lt;strong&gt;Serverless NoSQL Database&lt;/strong&gt; that allows you to store and retrieve any amount of data and serve any level of request traffic.&lt;/p&gt;

&lt;p&gt;Unlike relational databases (RDS), DynamoDB is &lt;strong&gt;non-relational&lt;/strong&gt;, meaning it doesn't use fixed schemas or complex joins. AWS handles the:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Hardware provisioning&lt;/li&gt;
&lt;li&gt;Setup and configuration
&lt;/li&gt;
&lt;li&gt;Replication and software patching&lt;/li&gt;
&lt;li&gt;Cluster scaling &lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  Why DevOps Engineers Use DynamoDB
&lt;/h2&gt;

&lt;p&gt;DynamoDB is the go-to choice when: &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;You need &lt;strong&gt;extreme scale&lt;/strong&gt; (millions of requests per second)&lt;/li&gt;
&lt;li&gt;You require &lt;strong&gt;consistent low latency&lt;/strong&gt; (single-digit milliseconds)&lt;/li&gt;
&lt;li&gt;You want a &lt;strong&gt;serverless architecture&lt;/strong&gt; (no instances to manage)&lt;/li&gt;
&lt;li&gt;You need &lt;strong&gt;global availability&lt;/strong&gt; (Global Tables)&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  Core Concepts (The Fundamentals)
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Tables:&lt;/strong&gt; Similar to a table in SQL, but with no fixed schema.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Items:&lt;/strong&gt; Similar to a "row." Each item is a collection of attributes.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Attributes:&lt;/strong&gt; Similar to a "column." Can be strings, numbers, binaries, or even JSON (Maps/Lists).&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Primary Key:&lt;/strong&gt; Must be defined at creation. It consists of:

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Partition Key (PK):&lt;/strong&gt; Used for internal data distribution.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Sort Key (SK):&lt;/strong&gt; (Optional) Used to sort data within a partition.&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;

&lt;/ul&gt;




&lt;h2&gt;
  
  
  DynamoDB Features &amp;amp; Architecture
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;High Availability:&lt;/strong&gt; Data is automatically replicated across three Availability Zones (AZs) within a region.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Read Consistency:&lt;/strong&gt; * &lt;strong&gt;Eventually Consistent&lt;/strong&gt; (Default) – Best performance, lowest cost.

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Strongly Consistent&lt;/strong&gt; – Returns the most up-to-date data.&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;

&lt;li&gt;

&lt;strong&gt;DynamoDB Streams:&lt;/strong&gt; Captures item-level changes (Insert/Update/Delete) and triggers &lt;strong&gt;AWS Lambda&lt;/strong&gt;—perfect for event-driven apps.&lt;/li&gt;

&lt;li&gt;

&lt;strong&gt;TTL (Time to Live):&lt;/strong&gt; Automatically deletes expired items to reduce storage costs.&lt;/li&gt;

&lt;/ul&gt;




&lt;h2&gt;
  
  
  Capacity Modes (How you pay)
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;On-Demand:&lt;/strong&gt; You pay per request. Best for unpredictable workloads or new apps.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Provisioned:&lt;/strong&gt; You specify &lt;strong&gt;RCU (Read Capacity Units)&lt;/strong&gt; and &lt;strong&gt;WCU (Write Capacity Units)&lt;/strong&gt;. Best for predictable traffic and cost control (supports Auto Scaling).&lt;/li&gt;
&lt;/ol&gt;




&lt;h2&gt;
  
  
  Indexing for Performance
&lt;/h2&gt;

&lt;p&gt;Since you can only query by Primary Key, you use Indexes to query other attributes:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Local Secondary Index (LSI):&lt;/strong&gt; Same Partition Key, different Sort Key. (Must be created with the table).&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Global Secondary Index (GSI):&lt;/strong&gt; Different Partition Key AND different Sort Key. (Can be created anytime).&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  Security in DynamoDB
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;IAM:&lt;/strong&gt; Control who can read/write to specific tables.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Encryption at Rest:&lt;/strong&gt; All data is encrypted by default using AWS KMS.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;VPC Endpoints:&lt;/strong&gt; Keep traffic within the AWS network (Gateway Endpoint).&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Fine-Grained Access Control:&lt;/strong&gt; Using IAM policies to restrict access to specific items or attributes.&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  Common Use Cases
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Serverless Apps:&lt;/strong&gt; Paired with AWS Lambda and API Gateway.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Session Management:&lt;/strong&gt; Storing user sessions for web applications.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Gaming:&lt;/strong&gt; Storing leaderboards and player profiles.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;IoT:&lt;/strong&gt; Ingesting massive amounts of sensor data.&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  Advantages
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;No Servers to Manage:&lt;/strong&gt; Zero operational overhead.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Auto-Scaling:&lt;/strong&gt; Grows and shrinks based on traffic.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Enterprise Grade:&lt;/strong&gt; Supports ACID transactions and 99.999% availability with Global Tables.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Performance at Scale:&lt;/strong&gt; Latency does not increase as the database grows.&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  Limitations
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;No Joins:&lt;/strong&gt; You must model data to avoid needing joins.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Query Limitations:&lt;/strong&gt; You cannot perform complex SQL-like queries easily.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Item Size:&lt;/strong&gt; Maximum size per item is &lt;strong&gt;400 KB&lt;/strong&gt;.&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  Interview One-Line Answer
&lt;/h2&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;AWS DynamoDB is a fully managed, serverless NoSQL database that provides consistent, single-digit millisecond latency at any scale. It supports both document and key-value data models, offers built-in security, backup/restore, and multi-region replication via Global Tables.&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;




&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F6tp80vip65cayuj4lpdb.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F6tp80vip65cayuj4lpdb.png" alt=" " width="800" height="800"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;blockquote&gt;
&lt;h2&gt;
  
  
  Thank You
&lt;/h2&gt;
&lt;/blockquote&gt;

&lt;h2&gt;
  
  
  🔗 Connect With Me
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;🌐 Platform&lt;/th&gt;
&lt;th&gt;🔗 Link&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;🐙 &lt;strong&gt;GitHub&lt;/strong&gt;
&lt;/td&gt;
&lt;td&gt;&lt;a href="https://lnkd.in/d2F3JPa3" rel="noopener noreferrer"&gt;https://lnkd.in/d2F3JPa3&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;✍️ &lt;strong&gt;Dev.to Blog&lt;/strong&gt;
&lt;/td&gt;
&lt;td&gt;&lt;a href="https://lnkd.in/dNtgqAME" rel="noopener noreferrer"&gt;https://lnkd.in/dNtgqAME&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;💼 &lt;strong&gt;LinkedIn&lt;/strong&gt;
&lt;/td&gt;
&lt;td&gt;&lt;a href="https://lnkd.in/d3NctxFT" rel="noopener noreferrer"&gt;https://lnkd.in/d3NctxFT&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;📄 &lt;strong&gt;Resume (Google Drive)&lt;/strong&gt;
&lt;/td&gt;
&lt;td&gt;&lt;a href="https://lnkd.in/dHDNsd_D" rel="noopener noreferrer"&gt;https://lnkd.in/dHDNsd_D&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h2&gt;
  
  
  🔖 Hashtags
&lt;/h2&gt;

&lt;h1&gt;
  
  
  AWS #DevOps #CloudComputing #AWSLearning #EBS #VolumeMounting #DataPersistence #LearningJourney #CareerGrowth #DevOpsEngineer #AWSCommunity
&lt;/h1&gt;




&lt;p&gt;⭐ If you like this guide, don’t forget to star the repo!&lt;/p&gt;

</description>
    </item>
    <item>
      <title>📅 Day 21 | AWS Elastic Beanstalk — Platform as a Service (PaaS) in AWS 🌱☁️</title>
      <dc:creator>Sudarshan Yadav</dc:creator>
      <pubDate>Mon, 22 Dec 2025 16:47:11 +0000</pubDate>
      <link>https://forem.com/sudarshan_yadav/day-21-aws-elastic-beanstalk-platform-as-a-service-paas-in-aws-591h</link>
      <guid>https://forem.com/sudarshan_yadav/day-21-aws-elastic-beanstalk-platform-as-a-service-paas-in-aws-591h</guid>
      <description>&lt;h1&gt;
  
  
  📅 Day 21 | AWS Elastic Beanstalk — Platform as a Service (PaaS) in AWS 🌱☁️
&lt;/h1&gt;

&lt;p&gt;Today, I learned about AWS Elastic Beanstalk, which is a fully managed Platform as a Service (PaaS) provided by AWS to deploy, manage, and scale applications automatically.&lt;/p&gt;

&lt;p&gt;Elastic Beanstalk allows developers and DevOps engineers to focus only on application code, while AWS handles the infrastructure provisioning, scaling, load balancing, monitoring, and updates.&lt;/p&gt;

&lt;p&gt;With Elastic Beanstalk, you can deploy applications quickly and reliably, making it a powerful service for DevOps workflows and cloud-native architectures.&lt;/p&gt;

&lt;h1&gt;
  
  
  🌱 AWS Elastic Beanstalk – DevOps Explanation
&lt;/h1&gt;

&lt;h2&gt;
  
  
  What is AWS Elastic Beanstalk?
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;AWS Elastic Beanstalk&lt;/strong&gt; is a &lt;strong&gt;Platform as a Service (PaaS)&lt;/strong&gt; that helps you &lt;strong&gt;deploy, manage, and scale applications automatically&lt;/strong&gt; without worrying about the underlying infrastructure.&lt;/p&gt;

&lt;p&gt;You just upload your &lt;strong&gt;application code&lt;/strong&gt;, and Elastic Beanstalk automatically handles:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;EC2 instances&lt;/li&gt;
&lt;li&gt;Load Balancer&lt;/li&gt;
&lt;li&gt;Auto Scaling &lt;/li&gt;
&lt;li&gt;Monitoring&lt;/li&gt;
&lt;li&gt;Application updates&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  Why DevOps Engineers Use Elastic Beanstalk
&lt;/h2&gt;

&lt;p&gt;Elastic Beanstalk is useful when:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;You want &lt;strong&gt;fast deployment&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;You don’t want to manage infrastructure manually&lt;/li&gt;
&lt;li&gt;You need &lt;strong&gt;auto scaling + high availability&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;You want &lt;strong&gt;CI/CD friendly deployments&lt;/strong&gt;
&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  Elastic Beanstalk Architecture (Behind the Scenes)
&lt;/h2&gt;

&lt;p&gt;When you deploy an app, Elastic Beanstalk automatically creates:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;EC2&lt;/strong&gt; – runs your application&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Auto Scaling Group&lt;/strong&gt; – handles scaling&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Elastic Load Balancer (ALB)&lt;/strong&gt; – distributes traffic&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Security Groups&lt;/strong&gt; – network security&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;CloudWatch&lt;/strong&gt; – logs &amp;amp; monitoring&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;S3&lt;/strong&gt; – stores application versions&lt;/li&gt;
&lt;/ul&gt;

&lt;blockquote&gt;
&lt;p&gt;You control everything, but AWS manages it for you.&lt;/p&gt;
&lt;/blockquote&gt;




&lt;h2&gt;
  
  
  How Elastic Beanstalk Works (Step-by-Step)
&lt;/h2&gt;

&lt;h3&gt;
  
  
  1. Create an Application
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Logical container for your app&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  2. Choose Platform
&lt;/h3&gt;

&lt;p&gt;Supported platforms include:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Java&lt;/li&gt;
&lt;li&gt;Python&lt;/li&gt;
&lt;li&gt;Node.js&lt;/li&gt;
&lt;li&gt;.NET&lt;/li&gt;
&lt;li&gt;PHP&lt;/li&gt;
&lt;li&gt;Docker&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  3. Upload Code
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;ZIP file&lt;/li&gt;
&lt;li&gt;WAR file&lt;/li&gt;
&lt;li&gt;Docker image&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  4. Environment Created
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Web Server Environment&lt;/strong&gt; (most common)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Worker Environment&lt;/strong&gt; (background jobs) &lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  5. Application Runs
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;User → Load Balancer → EC2 Instances → Application
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;






&lt;h2&gt;
  
  
  Deployment Options in Elastic Beanstalk
&lt;/h2&gt;

&lt;p&gt;Important for interviews:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;All at Once&lt;/strong&gt; – Fastest, but downtime possible&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Rolling&lt;/strong&gt; – Updates instances in batches&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Rolling with Additional Batch&lt;/strong&gt; – Safer than rolling&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Immutable&lt;/strong&gt; – Zero downtime, safest&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Blue/Green Deployment&lt;/strong&gt; – Best practice for production&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  Configuration Options
&lt;/h2&gt;

&lt;p&gt;You can customize:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Instance type&lt;/li&gt;
&lt;li&gt;Auto Scaling rules&lt;/li&gt;
&lt;li&gt;Environment variables&lt;/li&gt;
&lt;li&gt;Load balancer settings&lt;/li&gt;
&lt;li&gt;Health checks&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Configuration methods:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;AWS Console&lt;/li&gt;
&lt;li&gt;AWS CLI&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;.ebextensions&lt;/code&gt; (YAML configuration files)&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  CI/CD with Elastic Beanstalk
&lt;/h2&gt;

&lt;p&gt;Typical DevOps pipeline:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Git → Jenkins / GitHub Actions → Build → Deploy to Elastic Beanstalk
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Features:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Application versioning&lt;/li&gt;
&lt;li&gt;Rollback support&lt;/li&gt;
&lt;li&gt;Automated deployments&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  Monitoring &amp;amp; Logs
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;CloudWatch metrics&lt;/li&gt;
&lt;li&gt;Application logs&lt;/li&gt;
&lt;li&gt;Environment health dashboard (Green / Yellow / Red)&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  Security in Elastic Beanstalk
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;IAM roles &amp;amp; policies&lt;/li&gt;
&lt;li&gt;Security Groups&lt;/li&gt;
&lt;li&gt;VPC support&lt;/li&gt;
&lt;li&gt;SSL/TLS using ACM&lt;/li&gt;
&lt;li&gt;Environment-level isolation&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  Advantages
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Easy to use&lt;/li&gt;
&lt;li&gt;Automatic scaling&lt;/li&gt;
&lt;li&gt;Built-in load balancing&lt;/li&gt;
&lt;li&gt;Supports multiple languages&lt;/li&gt;
&lt;li&gt;Reduced operational overhead&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  Limitations
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Less control than raw EC2&lt;/li&gt;
&lt;li&gt;Not ideal for complex microservices&lt;/li&gt;
&lt;li&gt;Slightly higher cost than manual EC2 setup&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  Interview One-Line Answer
&lt;/h2&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;AWS Elastic Beanstalk is a PaaS service that allows developers and DevOps engineers to deploy and manage applications without managing infrastructure. It automatically handles EC2, load balancing, auto scaling, monitoring, and supports multiple deployment strategies.&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fc9207cba1tnba3f809pz.webp" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fc9207cba1tnba3f809pz.webp" alt=" " width="784" height="554"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;blockquote&gt;
&lt;h2&gt;
  
  
  Thank You
&lt;/h2&gt;
&lt;/blockquote&gt;

&lt;h2&gt;
  
  
  🔗 Connect With Me
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;🌐 Platform&lt;/th&gt;
&lt;th&gt;🔗 Link&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;🐙 &lt;strong&gt;GitHub&lt;/strong&gt;
&lt;/td&gt;
&lt;td&gt;&lt;a href="https://lnkd.in/d2F3JPa3" rel="noopener noreferrer"&gt;https://lnkd.in/d2F3JPa3&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;✍️ &lt;strong&gt;Dev.to Blog&lt;/strong&gt;
&lt;/td&gt;
&lt;td&gt;&lt;a href="https://lnkd.in/dNtgqAME" rel="noopener noreferrer"&gt;https://lnkd.in/dNtgqAME&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;💼 &lt;strong&gt;LinkedIn&lt;/strong&gt;
&lt;/td&gt;
&lt;td&gt;&lt;a href="https://lnkd.in/d3NctxFT" rel="noopener noreferrer"&gt;https://lnkd.in/d3NctxFT&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;📄 &lt;strong&gt;Resume (Google Drive)&lt;/strong&gt;
&lt;/td&gt;
&lt;td&gt;&lt;a href="https://lnkd.in/dHDNsd_D" rel="noopener noreferrer"&gt;https://lnkd.in/dHDNsd_D&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h2&gt;
  
  
  🔖 Hashtags
&lt;/h2&gt;

&lt;h1&gt;
  
  
  AWS #DevOps #CloudComputing #AWSLearning #EBS #VolumeMounting #DataPersistence #LearningJourney #CareerGrowth #DevOpsEngineer #AWSCommunity
&lt;/h1&gt;




&lt;p&gt;⭐ If you like this guide, don’t forget to star the repo!&lt;/p&gt;

</description>
    </item>
    <item>
      <title>📅 Day 20 | AWS Lambda — Serverless Compute in AWS ⚡☁️</title>
      <dc:creator>Sudarshan Yadav</dc:creator>
      <pubDate>Sat, 20 Dec 2025 15:51:39 +0000</pubDate>
      <link>https://forem.com/sudarshan_yadav/day-20-aws-lambda-serverless-compute-in-aws-3k92</link>
      <guid>https://forem.com/sudarshan_yadav/day-20-aws-lambda-serverless-compute-in-aws-3k92</guid>
      <description>&lt;h2&gt;
  
  
  📅 Day 20 | AWS Lambda — Serverless Compute in AWS ⚡☁️
&lt;/h2&gt;

&lt;p&gt;Today, I learned about &lt;strong&gt;AWS Lambda&lt;/strong&gt;, a &lt;strong&gt;serverless compute service&lt;/strong&gt; provided by AWS that lets you run code &lt;strong&gt;without provisioning or managing servers&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;With Lambda, you only focus on &lt;strong&gt;writing code&lt;/strong&gt;, and AWS automatically handles &lt;strong&gt;infrastructure, scaling, and availability&lt;/strong&gt;. You pay &lt;strong&gt;only for the execution time&lt;/strong&gt;, making it highly cost-effective and scalable.&lt;/p&gt;

&lt;p&gt;AWS Lambda is a core service in &lt;strong&gt;modern DevOps and cloud-native architectures&lt;/strong&gt;.  &lt;/p&gt;




&lt;h2&gt;
  
  
  🔹 What is AWS Lambda?
&lt;/h2&gt;

&lt;p&gt;AWS Lambda allows you to run code in response to &lt;strong&gt;events&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;You can use Lambda to: &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Process files&lt;/li&gt;
&lt;li&gt;Handle API requests&lt;/li&gt;
&lt;li&gt;Automate tasks&lt;/li&gt;
&lt;li&gt;Build serverless backends&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Supported languages:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Python&lt;/li&gt;
&lt;li&gt;Node.js&lt;/li&gt;
&lt;li&gt;Java&lt;/li&gt;
&lt;li&gt;Go&lt;/li&gt;
&lt;li&gt;C#&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  🔹 Why AWS Lambda is Important in DevOps?
&lt;/h2&gt;

&lt;p&gt;Lambda helps DevOps teams by:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Eliminating server management&lt;/li&gt;
&lt;li&gt;Automatically scaling applications&lt;/li&gt;
&lt;li&gt;Reducing infrastructure costs&lt;/li&gt;
&lt;li&gt;Integrating easily with CI/CD pipelines&lt;/li&gt;
&lt;li&gt;Enabling event-driven architectures&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  🔹 How AWS Lambda Works (Step-by-Step)
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;Developer writes Lambda function code&lt;/li&gt;
&lt;li&gt;Code is uploaded to AWS Lambda&lt;/li&gt;
&lt;li&gt;An event triggers the function
&lt;em&gt;(S3, API Gateway, SNS, SQS, EventBridge, etc.)&lt;/em&gt;
&lt;/li&gt;
&lt;li&gt;AWS creates an execution environment&lt;/li&gt;
&lt;li&gt;Lambda runs the function&lt;/li&gt;
&lt;li&gt;Output is returned&lt;/li&gt;
&lt;li&gt;Logs &amp;amp; metrics are sent to &lt;strong&gt;CloudWatch&lt;/strong&gt;
&lt;/li&gt;
&lt;/ol&gt;




&lt;h2&gt;
  
  
  🔹 Common Lambda Triggers
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Amazon S3 – file upload events&lt;/li&gt;
&lt;li&gt;API Gateway – REST &amp;amp; HTTP APIs&lt;/li&gt;
&lt;li&gt;Amazon SNS – notifications&lt;/li&gt;
&lt;li&gt;Amazon SQS – message processing&lt;/li&gt;
&lt;li&gt;EventBridge – scheduled jobs (cron)&lt;/li&gt;
&lt;li&gt;DynamoDB Streams – data changes&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  🔹 AWS Lambda in CI/CD (DevOps Use Case)
&lt;/h2&gt;

&lt;p&gt;Typical flow:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Code pushed to GitHub&lt;/li&gt;
&lt;li&gt;CI/CD pipeline builds &amp;amp; tests&lt;/li&gt;
&lt;li&gt;Lambda function deployed&lt;/li&gt;
&lt;li&gt;Event triggers Lambda&lt;/li&gt;
&lt;li&gt;Application executes automatically&lt;/li&gt;
&lt;/ol&gt;




&lt;h2&gt;
  
  
  🔹 Real-World Use Cases
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Serverless APIs&lt;/li&gt;
&lt;li&gt;Image resizing &amp;amp; file processing&lt;/li&gt;
&lt;li&gt;Automation scripts&lt;/li&gt;
&lt;li&gt;Background jobs&lt;/li&gt;
&lt;li&gt;Microservices&lt;/li&gt;
&lt;li&gt;Monitoring &amp;amp; alerts&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  🔹 Interview Quick Answers
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;What is AWS Lambda?&lt;/strong&gt;&lt;br&gt;
A serverless compute service that runs code in response to events.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Do we manage servers in Lambda?&lt;/strong&gt;&lt;br&gt;
No, AWS fully manages the infrastructure.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;How does Lambda scale?&lt;/strong&gt;&lt;br&gt;
Automatically scales based on the number of requests.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;How is Lambda billed?&lt;/strong&gt;&lt;br&gt;
Based on number of executions and execution time.&lt;/p&gt;




&lt;h2&gt;
  
  
  🔹 Summary
&lt;/h2&gt;

&lt;p&gt;AWS Lambda:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Is serverless and event-driven&lt;/li&gt;
&lt;li&gt;Scales automatically&lt;/li&gt;
&lt;li&gt;Reduces operational overhead&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  * Fits perfectly into DevOps workflows
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ftghsrfw0pts8y4dh0c89.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ftghsrfw0pts8y4dh0c89.png" alt=" " width="800" height="348"&gt;&lt;/a&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  Thank You
&lt;/h2&gt;

&lt;h2&gt;
  
  
  🔗 Connect With Me
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;🌐 Platform&lt;/th&gt;
&lt;th&gt;🔗 Link&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;🐙 &lt;strong&gt;GitHub&lt;/strong&gt;
&lt;/td&gt;
&lt;td&gt;&lt;a href="https://lnkd.in/d2F3JPa3" rel="noopener noreferrer"&gt;https://lnkd.in/d2F3JPa3&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;✍️ &lt;strong&gt;Dev.to Blog&lt;/strong&gt;
&lt;/td&gt;
&lt;td&gt;&lt;a href="https://lnkd.in/dNtgqAME" rel="noopener noreferrer"&gt;https://lnkd.in/dNtgqAME&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;💼 &lt;strong&gt;LinkedIn&lt;/strong&gt;
&lt;/td&gt;
&lt;td&gt;&lt;a href="https://lnkd.in/d3NctxFT" rel="noopener noreferrer"&gt;https://lnkd.in/d3NctxFT&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;📄 &lt;strong&gt;Resume (Google Drive)&lt;/strong&gt;
&lt;/td&gt;
&lt;td&gt;&lt;a href="https://lnkd.in/dHDNsd_D" rel="noopener noreferrer"&gt;https://lnkd.in/dHDNsd_D&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h2&gt;
  
  
  🔖 Hashtags
&lt;/h2&gt;

&lt;h1&gt;
  
  
  AWS #DevOps #CloudComputing #AWSLearning #EBS #VolumeMounting #DataPersistence #LearningJourney #CareerGrowth #DevOpsEngineer #AWSCommunity
&lt;/h1&gt;




&lt;p&gt;⭐ If you like this post, don’t forget to &lt;strong&gt;react &amp;amp; share&lt;/strong&gt; 🙌&lt;/p&gt;

</description>
      <category>aws</category>
      <category>devops</category>
      <category>serverless</category>
    </item>
    <item>
      <title>Day 19 | Amazon CloudFront — Content Delivery Network (CDN) in AWS 🌍⚡</title>
      <dc:creator>Sudarshan Yadav</dc:creator>
      <pubDate>Fri, 19 Dec 2025 13:18:04 +0000</pubDate>
      <link>https://forem.com/sudarshan_yadav/day-19-amazon-cloudfront-content-delivery-network-cdn-in-aws-44ee</link>
      <guid>https://forem.com/sudarshan_yadav/day-19-amazon-cloudfront-content-delivery-network-cdn-in-aws-44ee</guid>
      <description>&lt;h2&gt;
  
  
  📅 Day 19 | Amazon CloudFront — Content Delivery Network (CDN) in AWS 🌍⚡
&lt;/h2&gt;

&lt;p&gt;Today, I learned about &lt;strong&gt;Amazon CloudFront&lt;/strong&gt;, which is a &lt;strong&gt;fast, secure, and scalable Content Delivery Network (CDN)&lt;/strong&gt; service provided by AWS.&lt;/p&gt;

&lt;p&gt;CloudFront delivers &lt;strong&gt;web content, images, videos, APIs, and static files&lt;/strong&gt; to users from &lt;strong&gt;edge locations&lt;/strong&gt; (servers closest to users), reducing latency and improving performance.&lt;/p&gt;

&lt;p&gt;CloudFront helps in building &lt;strong&gt;highly available, low-latency, and secure applications&lt;/strong&gt;, making it an essential service in &lt;strong&gt;DevOps and cloud-native architectures&lt;/strong&gt;.&lt;/p&gt;




&lt;h1&gt;
  
  
  Amazon CloudFront in AWS DevOps – Step-by-Step Guide
&lt;/h1&gt;

&lt;h2&gt;
  
  
  1. What is Amazon CloudFront?
&lt;/h2&gt;

&lt;p&gt;Amazon CloudFront is a &lt;strong&gt;Content Delivery Network (CDN)&lt;/strong&gt; service provided by AWS.&lt;/p&gt;

&lt;p&gt;It delivers content like:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;HTML&lt;/li&gt;
&lt;li&gt;CSS&lt;/li&gt;
&lt;li&gt;JavaScript&lt;/li&gt;
&lt;li&gt;Images&lt;/li&gt;
&lt;li&gt;Videos &lt;/li&gt;
&lt;li&gt;APIs&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;from &lt;strong&gt;edge locations&lt;/strong&gt; (servers near users) to provide &lt;strong&gt;low latency and high speed&lt;/strong&gt;. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Main Goal:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Faster website performance&lt;/li&gt;
&lt;li&gt;Reduced load on backend servers&lt;/li&gt;
&lt;li&gt;Secure and scalable content delivery&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  2. Why CloudFront is Important in DevOps?
&lt;/h2&gt;

&lt;p&gt;In DevOps, applications are deployed frequently and accessed globally.&lt;/p&gt;

&lt;p&gt;CloudFront helps by:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Caching content&lt;/li&gt;
&lt;li&gt;Improving performance&lt;/li&gt;
&lt;li&gt;Reducing server load&lt;/li&gt;
&lt;li&gt;Integrating with CI/CD pipelines&lt;/li&gt;
&lt;li&gt;Providing security (HTTPS, WAF)&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  3. How CloudFront Works (Architecture Flow)
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Request Flow:
&lt;/h3&gt;

&lt;ol&gt;
&lt;li&gt;User requests &lt;code&gt;www.example.com&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;Request goes to the nearest &lt;strong&gt;CloudFront Edge Location&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;CloudFront checks cache:

&lt;ul&gt;
&lt;li&gt;If content exists → serve immediately&lt;/li&gt;
&lt;li&gt;If not → request goes to &lt;strong&gt;Origin&lt;/strong&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Origin sends data to CloudFront&lt;/li&gt;
&lt;li&gt;CloudFront caches the data and delivers it to the user&lt;/li&gt;
&lt;li&gt;Next users get cached content faster&lt;/li&gt;
&lt;/ol&gt;




&lt;h2&gt;
  
  
  4. What is an Origin?
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Origin&lt;/strong&gt; is the source of original content.&lt;/p&gt;

&lt;p&gt;Common origins:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Amazon S3 &lt;/li&gt;
&lt;li&gt;EC2 Instance&lt;/li&gt;
&lt;li&gt;Application Load Balancer (ALB)&lt;/li&gt;
&lt;li&gt;API Gateway&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  5. Key Components of CloudFront
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Component&lt;/th&gt;
&lt;th&gt;Description&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Distribution&lt;/td&gt;
&lt;td&gt;CloudFront configuration&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Origin&lt;/td&gt;
&lt;td&gt;Source of content&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Edge Location&lt;/td&gt;
&lt;td&gt;CDN server near users&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Cache Behavior&lt;/td&gt;
&lt;td&gt;Rules for caching&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;TTL&lt;/td&gt;
&lt;td&gt;Cache duration&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Invalidation&lt;/td&gt;
&lt;td&gt;Clear cached content&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;




&lt;h2&gt;
  
  
  6. Step-by-Step: Using CloudFront with S3
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Step 1: Create an S3 Bucket
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Create bucket (example: &lt;code&gt;my-static-site&lt;/code&gt;)&lt;/li&gt;
&lt;li&gt;Upload files: &lt;code&gt;index.html&lt;/code&gt;, &lt;code&gt;style.css&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;Enable &lt;strong&gt;Static Website Hosting&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;Configure permissions or OAC&lt;/li&gt;
&lt;/ul&gt;




&lt;h3&gt;
  
  
  Step 2: Create CloudFront Distribution
&lt;/h3&gt;

&lt;ol&gt;
&lt;li&gt;Go to CloudFront&lt;/li&gt;
&lt;li&gt;Click &lt;strong&gt;Create Distribution&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;Select S3 bucket as Origin&lt;/li&gt;
&lt;li&gt;Enable &lt;strong&gt;Origin Access Control (OAC)&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;Set Default Root Object: &lt;code&gt;index.html&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;Redirect HTTP → HTTPS&lt;/li&gt;
&lt;li&gt;Create distribution&lt;/li&gt;
&lt;/ol&gt;




&lt;h3&gt;
  
  
  Step 3: Access Website
&lt;/h3&gt;

&lt;p&gt;CloudFront provides a domain like:&lt;/p&gt;

&lt;p&gt;Your website is now faster and globally accessible.&lt;/p&gt;




&lt;h2&gt;
  
  
  7. Cache Behavior Explained
&lt;/h2&gt;

&lt;p&gt;CloudFront caches content based on:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;URL path&lt;/li&gt;
&lt;li&gt;Headers&lt;/li&gt;
&lt;li&gt;Cookies&lt;/li&gt;
&lt;li&gt;Query strings&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Example:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;code&gt;/static/*&lt;/code&gt; → Cached&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;/api/*&lt;/code&gt; → Not cached&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  8. Cache Invalidation
&lt;/h2&gt;

&lt;p&gt;When content changes, CloudFront may still serve old cached files.&lt;/p&gt;

&lt;h3&gt;
  
  
  To invalidate cache:
&lt;/h3&gt;

&lt;ol&gt;
&lt;li&gt;Open CloudFront Distribution&lt;/li&gt;
&lt;li&gt;Go to Invalidations&lt;/li&gt;
&lt;li&gt;Add paths:&lt;/li&gt;
&lt;/ol&gt;




&lt;h2&gt;
  
  
  9. CloudFront with EC2 / ALB
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Flow:
&lt;/h3&gt;

&lt;p&gt;User → CloudFront → ALB → EC2&lt;/p&gt;

&lt;p&gt;Use cases:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Dynamic web applications&lt;/li&gt;
&lt;li&gt;APIs&lt;/li&gt;
&lt;li&gt;Microservices&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Benefits:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Reduced latency&lt;/li&gt;
&lt;li&gt;Reduced backend load&lt;/li&gt;
&lt;li&gt;Better security&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  10. Security Features in CloudFront
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Feature&lt;/th&gt;
&lt;th&gt;Purpose&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;HTTPS&lt;/td&gt;
&lt;td&gt;Secure data transfer&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;AWS WAF&lt;/td&gt;
&lt;td&gt;Protect from attacks&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Signed URLs&lt;/td&gt;
&lt;td&gt;Restrict access&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Geo Restriction&lt;/td&gt;
&lt;td&gt;Country-based access&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;OAC&lt;/td&gt;
&lt;td&gt;Secure S3 access&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;




&lt;h2&gt;
  
  
  11. CloudFront in CI/CD (DevOps Use Case)
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Typical Flow:
&lt;/h3&gt;

&lt;ol&gt;
&lt;li&gt;Developer pushes code to GitHub&lt;/li&gt;
&lt;li&gt;CI/CD pipeline builds project&lt;/li&gt;
&lt;li&gt;Files uploaded to S3&lt;/li&gt;
&lt;li&gt;CloudFront cache invalidation triggered&lt;/li&gt;
&lt;li&gt;Users see updated content instantly&lt;/li&gt;
&lt;/ol&gt;




&lt;h2&gt;
  
  
  12. Common Interview Questions
&lt;/h2&gt;

&lt;h3&gt;
  
  
  What is CloudFront?
&lt;/h3&gt;

&lt;p&gt;A CDN service that delivers content with low latency using edge locations.&lt;/p&gt;

&lt;h3&gt;
  
  
  What is an Edge Location?
&lt;/h3&gt;

&lt;p&gt;A server that caches and delivers content closer to users.&lt;/p&gt;

&lt;h3&gt;
  
  
  Difference between S3 and CloudFront?
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;S3 stores data&lt;/li&gt;
&lt;li&gt;CloudFront delivers data faster using caching&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Why use CloudFront in DevOps?
&lt;/h3&gt;

&lt;p&gt;For speed, scalability, security, and CI/CD integration.&lt;/p&gt;




&lt;h2&gt;
  
  
  13. Real-Time Use Cases
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Static websites (React, Angular)&lt;/li&gt;
&lt;li&gt;Video streaming&lt;/li&gt;
&lt;li&gt;API acceleration&lt;/li&gt;
&lt;li&gt;E-commerce websites&lt;/li&gt;
&lt;li&gt;Software downloads&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  14. Summary
&lt;/h2&gt;

&lt;p&gt;Amazon CloudFront is a powerful CDN service that:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Improves performance&lt;/li&gt;
&lt;li&gt;Enhances security&lt;/li&gt;
&lt;li&gt;Reduces backend load&lt;/li&gt;
&lt;li&gt;Fits perfectly into DevOps pipelines&lt;/li&gt;
&lt;/ul&gt;




&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fbw1eejm1z868njgpngcr.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fbw1eejm1z868njgpngcr.png" alt=" " width="800" height="440"&gt;&lt;/a&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  Thank You
&lt;/h2&gt;

&lt;h2&gt;
  
  
  🔗 Connect With Me
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;🌐 Platform&lt;/th&gt;
&lt;th&gt;🔗 Link&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;🐙 &lt;strong&gt;GitHub&lt;/strong&gt;
&lt;/td&gt;
&lt;td&gt;&lt;a href="https://lnkd.in/d2F3JPa3" rel="noopener noreferrer"&gt;https://lnkd.in/d2F3JPa3&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;✍️ &lt;strong&gt;Dev.to Blog&lt;/strong&gt;
&lt;/td&gt;
&lt;td&gt;&lt;a href="https://lnkd.in/dNtgqAME" rel="noopener noreferrer"&gt;https://lnkd.in/dNtgqAME&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;💼 &lt;strong&gt;LinkedIn&lt;/strong&gt;
&lt;/td&gt;
&lt;td&gt;&lt;a href="https://lnkd.in/d3NctxFT" rel="noopener noreferrer"&gt;https://lnkd.in/d3NctxFT&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;📄 &lt;strong&gt;Resume (Google Drive)&lt;/strong&gt;
&lt;/td&gt;
&lt;td&gt;&lt;a href="https://lnkd.in/dHDNsd_D" rel="noopener noreferrer"&gt;https://lnkd.in/dHDNsd_D&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h2&gt;
  
  
  🔖 Hashtags
&lt;/h2&gt;

&lt;h1&gt;
  
  
  AWS #DevOps #CloudComputing #AWSLearning #EBS #VolumeMounting #DataPersistence #LearningJourney #CareerGrowth #DevOpsEngineer #AWSCommunity
&lt;/h1&gt;




&lt;p&gt;⭐ If you like this guide, don’t forget to star the repo!&lt;/p&gt;

</description>
    </item>
    <item>
      <title>📅 Day 18 | AWS CloudFormation — Infrastructure as Code (IaC) in AWS ☁️</title>
      <dc:creator>Sudarshan Yadav</dc:creator>
      <pubDate>Tue, 16 Dec 2025 17:20:56 +0000</pubDate>
      <link>https://forem.com/sudarshan_yadav/day-18-aws-cloudformation-infrastructure-as-code-iac-in-aws-4e46</link>
      <guid>https://forem.com/sudarshan_yadav/day-18-aws-cloudformation-infrastructure-as-code-iac-in-aws-4e46</guid>
      <description>&lt;h1&gt;
  
  
  📅 Day 18 | AWS CloudFormation — Infrastructure as Code (IaC) in AWS ☁️
&lt;/h1&gt;

&lt;p&gt;Today, I learned about &lt;strong&gt;AWS CloudFormation&lt;/strong&gt;, which is an &lt;strong&gt;Infrastructure as Code (IaC)&lt;/strong&gt; service that helps create, update, and delete AWS resources automatically using &lt;strong&gt;YAML or JSON templates&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;CloudFormation is widely used in DevOps to deploy infrastructure in a &lt;strong&gt;repeatable, consistent, and automated way&lt;/strong&gt;.&lt;/p&gt;




&lt;h2&gt;
  
  
  🏗️ AWS CloudFormation (DevOps – Infrastructure Automation)
&lt;/h2&gt;

&lt;h3&gt;
  
  
  🔹 Amazon CloudFormation
&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;Service Type&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
Infrastructure as Code (IaC)&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Template Format&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
YAML / JSON&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Key Features&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Automated infrastructure creation&lt;/li&gt;
&lt;li&gt;Manages full lifecycle (Create, Update, Delete)&lt;/li&gt;
&lt;li&gt;Consistent deployments&lt;/li&gt;
&lt;li&gt;Automatic rollback on failure&lt;/li&gt;
&lt;li&gt;Fully managed by AWS&lt;/li&gt;
&lt;/ul&gt;


&lt;h2&gt;
  
  
  🔹 Why We Use CloudFormation in DevOps
&lt;/h2&gt;

&lt;p&gt;CloudFormation is used when we need:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;✅ Automated infrastructure deployment
&lt;/li&gt;
&lt;li&gt;✅ Repeatable environments (Dev / Test / Prod)
&lt;/li&gt;
&lt;li&gt;✅ Version-controlled infrastructure
&lt;/li&gt;
&lt;li&gt;✅ Reduced manual errors
&lt;/li&gt;
&lt;li&gt;✅ Easy rollback and recovery
&lt;/li&gt;
&lt;/ul&gt;


&lt;h2&gt;
  
  
  🔹 Real-World DevOps Use Cases
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Use Case&lt;/th&gt;
&lt;th&gt;Why CloudFormation&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;EC2 &amp;amp; VPC setup&lt;/td&gt;
&lt;td&gt;One-click infrastructure&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Auto Scaling&lt;/td&gt;
&lt;td&gt;Consistent scaling&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;CI/CD pipelines&lt;/td&gt;
&lt;td&gt;Infrastructure automation&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Disaster recovery&lt;/td&gt;
&lt;td&gt;Easy recreation&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Multi-environment setup&lt;/td&gt;
&lt;td&gt;Template reuse&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;


&lt;h2&gt;
  
  
  🔹 How CloudFormation Works (Architecture)
&lt;/h2&gt;

&lt;p&gt;User&lt;br&gt;&lt;br&gt;
↓&lt;br&gt;&lt;br&gt;
CloudFormation Template (YAML / JSON)&lt;br&gt;&lt;br&gt;
↓&lt;br&gt;&lt;br&gt;
CloudFormation Stack&lt;br&gt;&lt;br&gt;
↓&lt;br&gt;&lt;br&gt;
AWS Resources (EC2, S3, VPC, IAM, RDS)&lt;/p&gt;


&lt;h2&gt;
  
  
  🔹 Key CloudFormation Components
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Template&lt;/strong&gt; – Blueprint of infrastructure
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Stack&lt;/strong&gt; – Deployed version of template
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Resources&lt;/strong&gt; – AWS services defined
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Parameters&lt;/strong&gt; – Input values
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Outputs&lt;/strong&gt; – Results like IP, DNS
&lt;/li&gt;
&lt;/ul&gt;


&lt;h2&gt;
  
  
  🔹 Step-by-Step: How to Use CloudFormation
&lt;/h2&gt;
&lt;h3&gt;
  
  
  🔹 Step 1: Create Template
&lt;/h3&gt;

&lt;p&gt;Create a YAML or JSON file defining AWS resources.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight yaml"&gt;&lt;code&gt;&lt;span class="na"&gt;Resources&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
  &lt;span class="na"&gt;MyS3Bucket&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
    &lt;span class="na"&gt;Type&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s"&gt;AWS::S3::Bucket&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  🔹 Step 2: Create Stack
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;AWS Console → CloudFormation
&lt;/li&gt;
&lt;li&gt;Click &lt;strong&gt;Create Stack&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;Upload template
&lt;/li&gt;
&lt;li&gt;Enter stack name
&lt;/li&gt;
&lt;li&gt;Click &lt;strong&gt;Create&lt;/strong&gt;
&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  🔹 Step 3: Stack Creation
&lt;/h2&gt;

&lt;p&gt;CloudFormation:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Creates resources automatically
&lt;/li&gt;
&lt;li&gt;Handles dependencies
&lt;/li&gt;
&lt;li&gt;Shows status: &lt;code&gt;CREATE_COMPLETE&lt;/code&gt;
&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  🔹 Step 4: Update Stack
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Modify template
&lt;/li&gt;
&lt;li&gt;Click &lt;strong&gt;Update Stack&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;Resources update automatically&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  🔹 Step 5: Delete Stack
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Delete stack
&lt;/li&gt;
&lt;li&gt;All resources are deleted safely&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  🔹 CloudFormation vs Terraform (Interview)
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Feature&lt;/th&gt;
&lt;th&gt;CloudFormation&lt;/th&gt;
&lt;th&gt;Terraform&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Provider&lt;/td&gt;
&lt;td&gt;AWS only&lt;/td&gt;
&lt;td&gt;Multi-cloud&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Language&lt;/td&gt;
&lt;td&gt;YAML / JSON&lt;/td&gt;
&lt;td&gt;HCL&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;State&lt;/td&gt;
&lt;td&gt;AWS managed&lt;/td&gt;
&lt;td&gt;Local / Remote&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Owner&lt;/td&gt;
&lt;td&gt;AWS&lt;/td&gt;
&lt;td&gt;HashiCorp&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;




&lt;h2&gt;
  
  
  🔹 CloudFormation Usage in DevOps
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Tool&lt;/th&gt;
&lt;th&gt;Usage&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Jenkins&lt;/td&gt;
&lt;td&gt;Infra automation&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;CI/CD&lt;/td&gt;
&lt;td&gt;Stack deployment&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Git&lt;/td&gt;
&lt;td&gt;Template versioning&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;CodePipeline&lt;/td&gt;
&lt;td&gt;IaC workflow&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;DevOps Teams&lt;/td&gt;
&lt;td&gt;Environment setup&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;




&lt;h2&gt;
  
  
  🔹 Common Interview Questions
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Q1:&lt;/strong&gt; What is CloudFormation?&lt;br&gt;&lt;br&gt;
✔ Infrastructure as Code service in AWS.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Q2:&lt;/strong&gt; Supported template formats?&lt;br&gt;&lt;br&gt;
✔ YAML and JSON.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Q3:&lt;/strong&gt; What is a Stack?&lt;br&gt;&lt;br&gt;
✔ Deployed template.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Q4:&lt;/strong&gt; Does CloudFormation support rollback?&lt;br&gt;&lt;br&gt;
✔ Yes.&lt;/p&gt;




&lt;h2&gt;
  
  
  🔹 One-Line Interview Answer
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;AWS CloudFormation is an Infrastructure as Code service used to automate AWS resources using YAML or JSON templates.&lt;/strong&gt;&lt;/p&gt;




&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Frh9esaars2z50mbktsld.webp" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Frh9esaars2z50mbktsld.webp" alt=" " width="800" height="269"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Thank You
&lt;/h2&gt;

&lt;h2&gt;
  
  
  🔗 Connect With Me
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;🌐 Platform&lt;/th&gt;
&lt;th&gt;🔗 Link&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;🐙 &lt;strong&gt;GitHub&lt;/strong&gt;
&lt;/td&gt;
&lt;td&gt;&lt;a href="https://lnkd.in/d2F3JPa3" rel="noopener noreferrer"&gt;https://lnkd.in/d2F3JPa3&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;✍️ &lt;strong&gt;Dev.to Blog&lt;/strong&gt;
&lt;/td&gt;
&lt;td&gt;&lt;a href="https://lnkd.in/dNtgqAME" rel="noopener noreferrer"&gt;https://lnkd.in/dNtgqAME&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;💼 &lt;strong&gt;LinkedIn&lt;/strong&gt;
&lt;/td&gt;
&lt;td&gt;&lt;a href="https://lnkd.in/d3NctxFT" rel="noopener noreferrer"&gt;https://lnkd.in/d3NctxFT&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;📄 &lt;strong&gt;Resume (Google Drive)&lt;/strong&gt;
&lt;/td&gt;
&lt;td&gt;&lt;a href="https://lnkd.in/dHDNsd_D" rel="noopener noreferrer"&gt;https://lnkd.in/dHDNsd_D&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h2&gt;
  
  
  🔖 Hashtags
&lt;/h2&gt;

&lt;h1&gt;
  
  
  AWS #DevOps #CloudComputing #AWSLearning #EBS #VolumeMounting #DataPersistence #LearningJourney #CareerGrowth #DevOpsEngineer #AWSCommunity
&lt;/h1&gt;




&lt;p&gt;⭐ If you like this guide, don’t forget to star the repo!&lt;/p&gt;

</description>
    </item>
    <item>
      <title>📅 Day 17 | AWS EFS (Elastic File System) — Shared Storage in AWS 🗂️☁️</title>
      <dc:creator>Sudarshan Yadav</dc:creator>
      <pubDate>Mon, 15 Dec 2025 08:45:19 +0000</pubDate>
      <link>https://forem.com/sudarshan_yadav/day-17-aws-efs-elastic-file-system-shared-storage-in-aws-31lk</link>
      <guid>https://forem.com/sudarshan_yadav/day-17-aws-efs-elastic-file-system-shared-storage-in-aws-31lk</guid>
      <description>&lt;h2&gt;
  
  
  📅 Day 17 | AWS EFS (Elastic File System) — Shared Storage in AWS 🗂️☁️
&lt;/h2&gt;

&lt;p&gt;Today, I learned about &lt;strong&gt;Amazon EFS (Elastic File System)&lt;/strong&gt;, which is a &lt;strong&gt;fully managed, scalable, shared file system&lt;/strong&gt; in AWS.&lt;br&gt;&lt;br&gt;
EFS allows multiple EC2 instances to &lt;strong&gt;read and write data simultaneously&lt;/strong&gt;, making it ideal for &lt;strong&gt;DevOps and cloud-native architectures&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;EFS helps in building &lt;strong&gt;highly available, scalable, and persistent storage solutions&lt;/strong&gt; for applications running across multiple Availability Zones.&lt;/p&gt;


&lt;h1&gt;
  
  
  🗂️ AWS EFS (DevOps – Shared File System)
&lt;/h1&gt;
&lt;h2&gt;
  
  
  🔹 Amazon EFS (Elastic File System)
&lt;/h2&gt;
&lt;h3&gt;
  
  
  Service Type
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;File-based storage service&lt;/li&gt;
&lt;li&gt;Uses &lt;strong&gt;NFS protocol (Port 2049)&lt;/strong&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;
  
  
  Key Features
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Shared storage across multiple EC2 instances&lt;/li&gt;
&lt;li&gt;Automatically scales storage&lt;/li&gt;
&lt;li&gt;Highly available (Multi-AZ)&lt;/li&gt;
&lt;li&gt;Fully managed by AWS&lt;/li&gt;
&lt;li&gt;Linux-based file system&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;
  
  
  Common DevOps Use Cases
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Jenkins shared workspace&lt;/li&gt;
&lt;li&gt;Kubernetes Persistent Volumes (PV/PVC)&lt;/li&gt;
&lt;li&gt;Web application shared uploads&lt;/li&gt;
&lt;li&gt;Centralized logs storage&lt;/li&gt;
&lt;li&gt;WordPress media storage&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;
  
  
  One-Line Summary (Interview)
&lt;/h3&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Amazon EFS is a fully managed shared file system that provides scalable and highly available storage for multiple EC2 instances across availability zones using NFS.&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h1&gt;
  
  
  AWS EFS (Elastic File System) – Step by Step DevOps Guide
&lt;/h1&gt;

&lt;p&gt;This guide explains &lt;strong&gt;Amazon EFS&lt;/strong&gt; in a &lt;strong&gt;simple, fresher-friendly DevOps way&lt;/strong&gt;, ready to upload on &lt;strong&gt;GitHub (Markdown format)&lt;/strong&gt;.&lt;/p&gt;


&lt;h2&gt;
  
  
  1️⃣ What is AWS EFS?
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Amazon EFS (Elastic File System)&lt;/strong&gt; is a &lt;strong&gt;fully managed, scalable, shared file system&lt;/strong&gt; provided by AWS.&lt;/p&gt;

&lt;p&gt;👉 Think of EFS like &lt;strong&gt;Google Drive for EC2 instances&lt;/strong&gt; — multiple EC2 instances can &lt;strong&gt;read and write the same data at the same time&lt;/strong&gt;.&lt;/p&gt;


&lt;h2&gt;
  
  
  2️⃣ Why We Use EFS in DevOps
&lt;/h2&gt;

&lt;p&gt;EFS is used when we need:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;✅ Shared storage between multiple EC2 instances&lt;/li&gt;
&lt;li&gt;✅ Persistent data (data survives EC2 termination)&lt;/li&gt;
&lt;li&gt;✅ High availability (multi-AZ)&lt;/li&gt;
&lt;li&gt;✅ Linux-based file system (NFS)&lt;/li&gt;
&lt;/ul&gt;


&lt;h2&gt;
  
  
  3️⃣ Real-World DevOps Use Cases
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Use Case&lt;/th&gt;
&lt;th&gt;Why EFS&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Web application uploads&lt;/td&gt;
&lt;td&gt;Same files for all EC2&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Jenkins shared workspace&lt;/td&gt;
&lt;td&gt;Multiple Jenkins agents&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Kubernetes persistent storage&lt;/td&gt;
&lt;td&gt;Shared PVC&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Centralized logs&lt;/td&gt;
&lt;td&gt;Common log directory&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;WordPress media&lt;/td&gt;
&lt;td&gt;Shared media files&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;


&lt;h2&gt;
  
  
  4️⃣ How EFS Works (Architecture)
&lt;/h2&gt;


&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;User
 ↓
Load Balancer
 ↓
EC2 (AZ-1) ─┐
EC2 (AZ-2) ─┼──&amp;gt; EFS (Shared File System)
EC2 (AZ-3) ─┘
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;ul&gt;
&lt;li&gt;EFS is &lt;strong&gt;regional&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;Uses &lt;strong&gt;NFS protocol (Port 2049)&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;Mounted like a folder inside EC2&lt;/li&gt;
&lt;/ul&gt;


&lt;h2&gt;
  
  
  5️⃣ EBS vs EFS vs S3 (Interview Comparison)
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Feature&lt;/th&gt;
&lt;th&gt;EBS&lt;/th&gt;
&lt;th&gt;EFS&lt;/th&gt;
&lt;th&gt;S3&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Storage Type&lt;/td&gt;
&lt;td&gt;Block&lt;/td&gt;
&lt;td&gt;File&lt;/td&gt;
&lt;td&gt;Object&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Attach&lt;/td&gt;
&lt;td&gt;Single EC2&lt;/td&gt;
&lt;td&gt;Multiple EC2&lt;/td&gt;
&lt;td&gt;Internet&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;OS Support&lt;/td&gt;
&lt;td&gt;Linux/Windows&lt;/td&gt;
&lt;td&gt;Linux only&lt;/td&gt;
&lt;td&gt;Any&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Mountable&lt;/td&gt;
&lt;td&gt;Yes&lt;/td&gt;
&lt;td&gt;Yes&lt;/td&gt;
&lt;td&gt;No&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Shared Access&lt;/td&gt;
&lt;td&gt;❌&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;td&gt;✅&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;


&lt;h2&gt;
  
  
  6️⃣ Step-by-Step: How to Create and Use EFS
&lt;/h2&gt;
&lt;h3&gt;
  
  
  🔹 Step 1: Create EFS
&lt;/h3&gt;

&lt;ol&gt;
&lt;li&gt;AWS Console → &lt;strong&gt;EFS&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;Click &lt;strong&gt;Create file system&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;Select &lt;strong&gt;VPC&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;Availability Zones → Auto selected&lt;/li&gt;
&lt;li&gt;Click &lt;strong&gt;Create&lt;/strong&gt;
&lt;/li&gt;
&lt;/ol&gt;


&lt;h3&gt;
  
  
  🔹 Step 2: Configure Security Group
&lt;/h3&gt;

&lt;p&gt;EFS needs &lt;strong&gt;NFS access&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Inbound Rule:&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Type: NFS
Port: 2049
Source: EC2 Security Group
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;






&lt;h3&gt;
  
  
  🔹 Step 3: Launch EC2 Instance
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Amazon Linux 2&lt;/li&gt;
&lt;li&gt;Same VPC as EFS&lt;/li&gt;
&lt;li&gt;Attach same Security Group&lt;/li&gt;
&lt;li&gt;SSH into the instance&lt;/li&gt;
&lt;/ul&gt;




&lt;h3&gt;
  
  
  🔹 Step 4: Install EFS Utilities
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;sudo &lt;/span&gt;yum &lt;span class="nb"&gt;install&lt;/span&gt; &lt;span class="nt"&gt;-y&lt;/span&gt; amazon-efs-utils
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;






&lt;h3&gt;
  
  
  🔹 Step 5: Create Mount Directory
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;sudo mkdir&lt;/span&gt; /efs
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;






&lt;h3&gt;
  
  
  🔹 Step 6: Mount EFS to EC2
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;sudo &lt;/span&gt;mount &lt;span class="nt"&gt;-t&lt;/span&gt; efs fs-xxxx:/ /efs
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Check mount:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;df&lt;/span&gt; &lt;span class="nt"&gt;-h&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;






&lt;h3&gt;
  
  
  🔹 Step 7: Test Shared Storage
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;cd&lt;/span&gt; /efs
&lt;span class="nb"&gt;sudo touch &lt;/span&gt;devops.txt
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Mount the same EFS on another EC2 → file will be visible ✅&lt;/p&gt;




&lt;h2&gt;
  
  
  7️⃣ Auto-Mount EFS on Reboot (Important)
&lt;/h2&gt;

&lt;p&gt;Edit fstab file:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;sudo &lt;/span&gt;nano /etc/fstab
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Add entry:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;fs-xxxx:/ /efs efs defaults,_netdev 0 0
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;






&lt;h2&gt;
  
  
  8️⃣ EFS Performance Modes
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Mode&lt;/th&gt;
&lt;th&gt;Usage&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;General Purpose&lt;/td&gt;
&lt;td&gt;Web apps, CMS&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Max I/O&lt;/td&gt;
&lt;td&gt;Big data, analytics&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;




&lt;h2&gt;
  
  
  9️⃣ EFS Storage Classes
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Class&lt;/th&gt;
&lt;th&gt;Cost&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Standard&lt;/td&gt;
&lt;td&gt;Normal access&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Infrequent Access (IA)&lt;/td&gt;
&lt;td&gt;Lower cost&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;One Zone&lt;/td&gt;
&lt;td&gt;Cheapest (single AZ)&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;




&lt;h2&gt;
  
  
  🔟 EFS Usage in DevOps Tools
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Tool&lt;/th&gt;
&lt;th&gt;Usage&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Jenkins&lt;/td&gt;
&lt;td&gt;Shared workspace&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Docker&lt;/td&gt;
&lt;td&gt;Shared volume&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Kubernetes&lt;/td&gt;
&lt;td&gt;Persistent Volumes&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Terraform&lt;/td&gt;
&lt;td&gt;Infrastructure creation&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Ansible&lt;/td&gt;
&lt;td&gt;Auto mount configuration&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;




&lt;h2&gt;
  
  
  1️⃣1️⃣ Common Interview Questions
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Q1: Can EFS be mounted on multiple EC2 instances?&lt;/strong&gt;&lt;br&gt;
✔ Yes, simultaneously.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Q2: Is EFS AZ-specific?&lt;/strong&gt;&lt;br&gt;
✔ No, it is regional.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Q3: Which protocol does EFS use?&lt;/strong&gt;&lt;br&gt;
✔ NFS (Port 2049).&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Q4: Can Windows use EFS?&lt;/strong&gt;&lt;br&gt;
✔ No, only Linux supports EFS.&lt;/p&gt;




&lt;h2&gt;
  
  
  &lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fn3f3ey8em1t7sebn1j25.png" alt=" " width="800" height="501"&gt;
&lt;/h2&gt;

&lt;h2&gt;
  
  
  1️⃣2️⃣ One-Line Interview Answer
&lt;/h2&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Amazon EFS is a fully managed, scalable, shared file system that allows multiple EC2 instances across availability zones to access the same data using NFS.&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;




&lt;h2&gt;
  
  
  Thank You
&lt;/h2&gt;

&lt;h2&gt;
  
  
  🔗 Connect With Me
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;🌐 Platform&lt;/th&gt;
&lt;th&gt;🔗 Link&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;🐙 &lt;strong&gt;GitHub&lt;/strong&gt;
&lt;/td&gt;
&lt;td&gt;&lt;a href="https://lnkd.in/d2F3JPa3" rel="noopener noreferrer"&gt;https://lnkd.in/d2F3JPa3&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;✍️ &lt;strong&gt;Dev.to Blog&lt;/strong&gt;
&lt;/td&gt;
&lt;td&gt;&lt;a href="https://lnkd.in/dNtgqAME" rel="noopener noreferrer"&gt;https://lnkd.in/dNtgqAME&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;💼 &lt;strong&gt;LinkedIn&lt;/strong&gt;
&lt;/td&gt;
&lt;td&gt;&lt;a href="https://lnkd.in/d3NctxFT" rel="noopener noreferrer"&gt;https://lnkd.in/d3NctxFT&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;📄 &lt;strong&gt;Resume (Google Drive)&lt;/strong&gt;
&lt;/td&gt;
&lt;td&gt;&lt;a href="https://lnkd.in/dHDNsd_D" rel="noopener noreferrer"&gt;https://lnkd.in/dHDNsd_D&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h2&gt;
  
  
  🔖 Hashtags
&lt;/h2&gt;

&lt;h1&gt;
  
  
  AWS #DevOps #CloudComputing #AWSLearning #EBS #VolumeMounting #DataPersistence #LearningJourney #CareerGrowth #DevOpsEngineer #AWSCommunity
&lt;/h1&gt;




&lt;p&gt;⭐ If you like this guide, don’t forget to star the repo!&lt;/p&gt;

</description>
      <category>architecture</category>
      <category>aws</category>
      <category>devops</category>
    </item>
    <item>
      <title>📅 Day 16 | AWS RDS — Managed Database Service in AWS 🗄️☁️</title>
      <dc:creator>Sudarshan Yadav</dc:creator>
      <pubDate>Sun, 14 Dec 2025 17:12:31 +0000</pubDate>
      <link>https://forem.com/sudarshan_yadav/day-16-aws-rds-managed-database-service-in-aws-3j2</link>
      <guid>https://forem.com/sudarshan_yadav/day-16-aws-rds-managed-database-service-in-aws-3j2</guid>
      <description>&lt;h1&gt;
  
  
  📅 Day 16 | AWS RDS — Managed Database Service in AWS 🗄️☁️
&lt;/h1&gt;

&lt;p&gt;Today, I learned about &lt;strong&gt;AWS RDS (Relational Database Service)&lt;/strong&gt;, which is a &lt;strong&gt;fully managed database service&lt;/strong&gt; provided by AWS to easily set up, operate, and scale relational databases in the cloud.&lt;/p&gt;

&lt;p&gt;AWS RDS helps teams focus on application development by handling &lt;strong&gt;database provisioning, backups, patching, scaling, and maintenance&lt;/strong&gt; automatically.&lt;/p&gt;




&lt;h2&gt;
  
  
  🗄️ What is AWS RDS?
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;AWS RDS (Relational Database Service)&lt;/strong&gt; allows you to run relational databases in AWS without managing the underlying infrastructure.&lt;/p&gt;

&lt;h3&gt;
  
  
  Supported Database Engines:
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;MySQL
&lt;/li&gt;
&lt;li&gt;PostgreSQL
&lt;/li&gt;
&lt;li&gt;MariaDB
&lt;/li&gt;
&lt;li&gt;Oracle
&lt;/li&gt;
&lt;li&gt;SQL Server
&lt;/li&gt;
&lt;li&gt;Amazon Aurora
&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  🚀 Why Use AWS RDS?
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;No manual database installation&lt;/li&gt;
&lt;li&gt;Automated backups and snapshots&lt;/li&gt;
&lt;li&gt;High availability with &lt;strong&gt;Multi-AZ&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;Easy scaling of compute and storage&lt;/li&gt;
&lt;li&gt;Built-in monitoring using &lt;strong&gt;CloudWatch&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;Secure access using &lt;strong&gt;VPC, Security Groups, and IAM&lt;/strong&gt;
&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  ⚙️ Key Features of AWS RDS
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Multi-AZ Deployment&lt;/strong&gt; → Automatic failover for high availability
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Read Replicas&lt;/strong&gt; → Improve read performance
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Automated Backups&lt;/strong&gt; → Point-in-time recovery
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Snapshots&lt;/strong&gt; → Manual backups
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Encryption&lt;/strong&gt; → Data at rest and in transit
&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  🧩 AWS RDS in DevOps Workflow
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Backend database for applications&lt;/li&gt;
&lt;li&gt;Used in CI/CD pipelines&lt;/li&gt;
&lt;li&gt;Supports production and non-production environments&lt;/li&gt;
&lt;li&gt;Integrated with monitoring and alerting systems&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  🌍 Real-World Example
&lt;/h2&gt;

&lt;p&gt;A web application running on &lt;strong&gt;EC2 / EKS&lt;/strong&gt; uses &lt;strong&gt;AWS RDS&lt;/strong&gt; to store application data.&lt;br&gt;&lt;br&gt;
The application scales automatically while RDS ensures &lt;strong&gt;data availability, security, and backups&lt;/strong&gt;.&lt;/p&gt;




&lt;h2&gt;
  
  
  ✅ Summary
&lt;/h2&gt;

&lt;p&gt;AWS RDS is a core AWS service for building &lt;strong&gt;secure, scalable, and highly available applications&lt;/strong&gt; and is widely used in &lt;strong&gt;production-level DevOps architectures&lt;/strong&gt;.&lt;/p&gt;




&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fsd93empeiv4timkv3eey.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fsd93empeiv4timkv3eey.jpg" alt=" " width="800" height="378"&gt;&lt;/a&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  Thank You
&lt;/h2&gt;

&lt;h2&gt;
  
  
  🔗 Connect With Me
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;🌐 Platform&lt;/th&gt;
&lt;th&gt;🔗 Link&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;🐙 &lt;strong&gt;GitHub&lt;/strong&gt;
&lt;/td&gt;
&lt;td&gt;&lt;a href="https://lnkd.in/d2F3JPa3" rel="noopener noreferrer"&gt;https://lnkd.in/d2F3JPa3&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;✍️ &lt;strong&gt;Dev.to Blog&lt;/strong&gt;
&lt;/td&gt;
&lt;td&gt;&lt;a href="https://lnkd.in/dNtgqAME" rel="noopener noreferrer"&gt;https://lnkd.in/dNtgqAME&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;💼 &lt;strong&gt;LinkedIn&lt;/strong&gt;
&lt;/td&gt;
&lt;td&gt;&lt;a href="https://lnkd.in/d3NctxFT" rel="noopener noreferrer"&gt;https://lnkd.in/d3NctxFT&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;📄 &lt;strong&gt;Resume (Google Drive)&lt;/strong&gt;
&lt;/td&gt;
&lt;td&gt;&lt;a href="https://lnkd.in/dHDNsd_D" rel="noopener noreferrer"&gt;https://lnkd.in/dHDNsd_D&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h2&gt;
  
  
  🔖 Hashtags
&lt;/h2&gt;

&lt;h1&gt;
  
  
  AWS #DevOps #RDS #CloudComputing #AWSLearning #EBS #VolumeMounting #DataPersistence #LearningJourney #CareerGrowth #DevOpsEngineer #AWSCommunity
&lt;/h1&gt;

</description>
      <category>aws</category>
      <category>devops</category>
      <category>cloud</category>
      <category>python</category>
    </item>
    <item>
      <title>📅 Day 15 | AWS SNS &amp; SQS — Messaging Services in AWS 🚀</title>
      <dc:creator>Sudarshan Yadav</dc:creator>
      <pubDate>Sat, 13 Dec 2025 17:25:14 +0000</pubDate>
      <link>https://forem.com/sudarshan_yadav/day-15-aws-sns-sqs-messaging-services-in-aws-29ec</link>
      <guid>https://forem.com/sudarshan_yadav/day-15-aws-sns-sqs-messaging-services-in-aws-29ec</guid>
      <description>&lt;h2&gt;
  
  
  📅 Day 15 | AWS SNS &amp;amp; SQS — Messaging Services in AWS 🚀
&lt;/h2&gt;

&lt;p&gt;Today, I learned about AWS SNS (Simple Notification Service) and AWS SQS (Simple Queue Service), which are core messaging services used in AWS &amp;amp; DevOps architectures for communication between applications and services.&lt;br&gt;
These services help in building decoupled, scalable, and reliable systems.&lt;/p&gt;

&lt;h1&gt;
  
  
  🔔 AWS SNS &amp;amp; 📦 AWS SQS (DevOps – Point to Point)
&lt;/h1&gt;

&lt;h2&gt;
  
  
  🔔 AWS SNS (Simple Notification Service)
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Service Type
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Push-based messaging service&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Main Purpose
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Used to send notifications and alerts&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Messaging Model
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Publish / Subscribe (Pub-Sub)&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Flow
&lt;/h3&gt;

&lt;h3&gt;
  
  
  Delivery
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Message is pushed automatically to subscribers&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Subscribers Can Be
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Email
&lt;/li&gt;
&lt;li&gt;SMS
&lt;/li&gt;
&lt;li&gt;AWS Lambda
&lt;/li&gt;
&lt;li&gt;HTTP / HTTPS
&lt;/li&gt;
&lt;li&gt;SQS
&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Message Storage
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;SNS does &lt;strong&gt;not store messages&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;If the subscriber is unavailable, the message is lost&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Use in DevOps
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;CloudWatch alarms
&lt;/li&gt;
&lt;li&gt;Deployment notifications
&lt;/li&gt;
&lt;li&gt;System failure alerts
&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Scalability
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Fully managed and highly scalable&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Interview One Line
&lt;/h3&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;SNS is used to send real-time notifications to multiple subscribers.&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;




&lt;h2&gt;
  
  
  📦 AWS SQS (Simple Queue Service)
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Service Type
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Pull-based message queue service&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Main Purpose
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Used to decouple applications&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Messaging Model
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Queue-based&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Flow
&lt;/h3&gt;

&lt;h3&gt;
  
  
  Message Retrieval
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Consumer polls (pulls) messages from the queue&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Message Storage
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Messages are stored safely until processed&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Visibility Timeout
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Message is hidden while being processed&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Types of Queues
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Standard Queue&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;High throughput
&lt;/li&gt;
&lt;li&gt;At-least-once delivery
&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;

&lt;li&gt;

&lt;p&gt;&lt;strong&gt;FIFO Queue&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Ordered processing
&lt;/li&gt;
&lt;li&gt;Exactly-once delivery
&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;

&lt;/ul&gt;

&lt;h3&gt;
  
  
  Use in DevOps
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Background jobs
&lt;/li&gt;
&lt;li&gt;Auto Scaling workloads
&lt;/li&gt;
&lt;li&gt;CI/CD task handling
&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Interview One Line
&lt;/h3&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;SQS is used to store messages and process them asynchronously.&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;




&lt;h2&gt;
  
  
  🔄 SNS vs SQS – Point to Point Difference
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Feature&lt;/th&gt;
&lt;th&gt;SNS&lt;/th&gt;
&lt;th&gt;SQS&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Message Type&lt;/td&gt;
&lt;td&gt;Push&lt;/td&gt;
&lt;td&gt;Pull&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Purpose&lt;/td&gt;
&lt;td&gt;Send notifications&lt;/td&gt;
&lt;td&gt;Store &amp;amp; process messages&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Consumers&lt;/td&gt;
&lt;td&gt;Multiple subscribers&lt;/td&gt;
&lt;td&gt;One consumer per message&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Storage&lt;/td&gt;
&lt;td&gt;No&lt;/td&gt;
&lt;td&gt;Yes&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Use Case&lt;/td&gt;
&lt;td&gt;Alerts &amp;amp; notifications&lt;/td&gt;
&lt;td&gt;Task &amp;amp; job processing&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;




&lt;h2&gt;
  
  
  🔁 SNS + SQS Together (DevOps Use Case)
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Application sends message to SNS
&lt;/li&gt;
&lt;li&gt;SNS topic fans out the message
&lt;/li&gt;
&lt;li&gt;Multiple SQS queues receive the message
&lt;/li&gt;
&lt;li&gt;Each service processes independently
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;👉 Used in &lt;strong&gt;Microservices Architecture &amp;amp; CI/CD Pipelines&lt;/strong&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  ⭐ Final Interview Line
&lt;/h2&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;SNS is for sending messages, SQS is for queuing messages until they are processed.&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h2&gt;
  
  
  &lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F40zcechdy4davp62tugs.jpg" alt=" " width="800" height="533"&gt;
&lt;/h2&gt;

&lt;h2&gt;
  
  
  Thank You
&lt;/h2&gt;

&lt;h2&gt;
  
  
  🔗 Connect With Me
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;🌐 Platform&lt;/th&gt;
&lt;th&gt;🔗 Link&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;🐙 &lt;strong&gt;GitHub&lt;/strong&gt;
&lt;/td&gt;
&lt;td&gt;&lt;a href="https://lnkd.in/d2F3JPa3" rel="noopener noreferrer"&gt;https://lnkd.in/d2F3JPa3&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;✍️ &lt;strong&gt;Dev.to Blog&lt;/strong&gt;
&lt;/td&gt;
&lt;td&gt;&lt;a href="https://lnkd.in/dNtgqAME" rel="noopener noreferrer"&gt;https://lnkd.in/dNtgqAME&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;💼 &lt;strong&gt;LinkedIn&lt;/strong&gt;
&lt;/td&gt;
&lt;td&gt;&lt;a href="https://lnkd.in/d3NctxFT" rel="noopener noreferrer"&gt;https://lnkd.in/d3NctxFT&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;📄 &lt;strong&gt;Resume (Google Drive)&lt;/strong&gt;
&lt;/td&gt;
&lt;td&gt;&lt;a href="https://lnkd.in/dHDNsd_D" rel="noopener noreferrer"&gt;https://lnkd.in/dHDNsd_D&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h2&gt;
  
  
  🔖 Hashtags
&lt;/h2&gt;

&lt;h1&gt;
  
  
  AWS #DevOps #CloudComputing #AWSLearning #EBS #VolumeMounting #DataPersistence #LearningJourney #CareerGrowth #DevOpsEngineer #AWSCommunity
&lt;/h1&gt;

</description>
      <category>devops</category>
      <category>aiops</category>
      <category>programming</category>
      <category>awschallenge</category>
    </item>
    <item>
      <title>📅 Day 14 | AWS NACL — Subnet-Level Security in AWS 🔐</title>
      <dc:creator>Sudarshan Yadav</dc:creator>
      <pubDate>Fri, 12 Dec 2025 17:56:43 +0000</pubDate>
      <link>https://forem.com/sudarshan_yadav/day-14-aws-nacl-subnet-level-security-in-aws-22lj</link>
      <guid>https://forem.com/sudarshan_yadav/day-14-aws-nacl-subnet-level-security-in-aws-22lj</guid>
      <description>&lt;h1&gt;
  
  
  📅 Day 14 | AWS NACL — Subnet-Level Security in AWS 🔐
&lt;/h1&gt;

&lt;p&gt;&lt;strong&gt;NACL (Network Access Control List)&lt;/strong&gt; is a subnet-level firewall in AWS VPC.&lt;br&gt;&lt;br&gt;
It controls what traffic is allowed &lt;strong&gt;in and out of each subnet&lt;/strong&gt;, acting like a security gate at the subnet boundary.&lt;/p&gt;

&lt;p&gt;If you’re learning AWS networking, mastering NACL is a key step in building secure cloud architectures.&lt;/p&gt;


&lt;h2&gt;
  
  
  🔥 Why NACL Is Important in AWS &amp;amp; DevOps
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;🛡️ Adds an extra layer of security at the &lt;strong&gt;subnet&lt;/strong&gt; level
&lt;/li&gt;
&lt;li&gt;🔁 Controls inbound &amp;amp; outbound traffic (stateless)
&lt;/li&gt;
&lt;li&gt;🚫 Supports both &lt;strong&gt;ALLOW&lt;/strong&gt; and &lt;strong&gt;DENY&lt;/strong&gt; rules
&lt;/li&gt;
&lt;li&gt;📦 Protects private subnets (App Servers, Databases, EKS Nodes)
&lt;/li&gt;
&lt;li&gt;⚙️ Often used in &lt;strong&gt;secure DevOps infrastructure&lt;/strong&gt; (EKS, EC2, CI/CD, Load Balancers)&lt;/li&gt;
&lt;/ul&gt;


&lt;h1&gt;
  
  
  🟧 What is NACL in AWS?
&lt;/h1&gt;

&lt;p&gt;&lt;strong&gt;NACL (Network Access Control List)&lt;/strong&gt; is a &lt;strong&gt;network-level firewall&lt;/strong&gt; that controls traffic going &lt;strong&gt;in and out of a subnet&lt;/strong&gt; in a VPC.&lt;/p&gt;

&lt;p&gt;Think of it as a &lt;strong&gt;security gate for each subnet&lt;/strong&gt;.&lt;/p&gt;


&lt;h2&gt;
  
  
  🔥 Why NACL is important in DevOps?
&lt;/h2&gt;

&lt;p&gt;As a DevOps engineer, you work with:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;VPC creation
&lt;/li&gt;
&lt;li&gt;Subnets (public/private)
&lt;/li&gt;
&lt;li&gt;EC2, Load balancers, NAT
&lt;/li&gt;
&lt;li&gt;Kubernetes clusters (EKS)
&lt;/li&gt;
&lt;li&gt;Terraform or CloudFormation
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;All of these use networking, and NACL helps control what traffic is allowed.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;NACL ensures:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;✔️ Traffic is restricted
&lt;/li&gt;
&lt;li&gt;✔️ Only safe ports are open
&lt;/li&gt;
&lt;li&gt;✔️ Subnet-to-subnet traffic is filtered
&lt;/li&gt;
&lt;li&gt;✔️ Security best practices are followed&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This is important in DevOps pipelines, deployments, and infra automation.&lt;/p&gt;


&lt;h1&gt;
  
  
  🟦 Key Features of NACL (Easy to Remember)
&lt;/h1&gt;

&lt;p&gt;1️⃣ &lt;strong&gt;Subnet-Level Firewall&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
A NACL is attached to a &lt;strong&gt;subnet&lt;/strong&gt;, not an EC2 instance.&lt;/p&gt;

&lt;p&gt;2️⃣ &lt;strong&gt;Stateless&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
➡️ Allow inbound traffic? Then you must allow outbound traffic also.&lt;br&gt;&lt;br&gt;
Example: Allow port &lt;code&gt;80&lt;/code&gt; IN → must allow port &lt;code&gt;80&lt;/code&gt; OUT.&lt;/p&gt;

&lt;p&gt;3️⃣ &lt;strong&gt;Allows both:&lt;/strong&gt;  &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;code&gt;ALLOW&lt;/code&gt; rules
&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;DENY&lt;/code&gt; rules&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;4️⃣ &lt;strong&gt;Rule number order matters&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
Lowest number checked first (100 → 101 → 102…).&lt;/p&gt;

&lt;p&gt;5️⃣ &lt;strong&gt;Default NACL = Allow everything&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
6️⃣ &lt;strong&gt;Custom NACL = Deny everything unless allowed&lt;/strong&gt;&lt;/p&gt;


&lt;h1&gt;
  
  
  🟪 NACL Use Case in DevOps
&lt;/h1&gt;

&lt;p&gt;&lt;strong&gt;Example 1: Public subnet&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
You deploy:  &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;EC2 instance (web server)
&lt;/li&gt;
&lt;li&gt;ALB (load balancer)
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;NACL allows:  &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;HTTP (80)
&lt;/li&gt;
&lt;li&gt;HTTPS (443)
&lt;/li&gt;
&lt;li&gt;SSH (22)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Example 2: Private subnet&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
You deploy:  &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;App server
&lt;/li&gt;
&lt;li&gt;Database
&lt;/li&gt;
&lt;li&gt;EKS worker nodes
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;NACL allows only internal traffic:  &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;App → DB (3306)
&lt;/li&gt;
&lt;li&gt;Node-to-node communication
&lt;/li&gt;
&lt;li&gt;No public internet access&lt;/li&gt;
&lt;/ul&gt;


&lt;h1&gt;
  
  
  💡 Difference Between NACL and Security Group (Interview)
&lt;/h1&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Security Group&lt;/th&gt;
&lt;th&gt;NACL&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Instance level&lt;/td&gt;
&lt;td&gt;Subnet level&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Stateful&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;Stateless&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Return traffic auto allowed&lt;/td&gt;
&lt;td&gt;Must allow separately&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Only ALLOW rules&lt;/td&gt;
&lt;td&gt;ALLOW + DENY rules&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Easier to manage&lt;/td&gt;
&lt;td&gt;Used for high-level subnet control&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;


&lt;h1&gt;
  
  
  🟩 Simple Example to Understand
&lt;/h1&gt;
&lt;h2&gt;
  
  
  Public Subnet NACL
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Inbound Rules:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Allow HTTP (80)
&lt;/li&gt;
&lt;li&gt;Allow HTTPS (443)
&lt;/li&gt;
&lt;li&gt;Allow SSH (22)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Outbound Rules:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Allow ALL&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;
  
  
  Private Subnet NACL
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Inbound:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Allow 3306 from app subnet&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Outbound:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Allow 3306 back to app subnet
&lt;/li&gt;
&lt;li&gt;Deny internet traffic&lt;/li&gt;
&lt;/ul&gt;


&lt;h1&gt;
  
  
  ✅ Example NACL Rule Table
&lt;/h1&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Rule No&lt;/th&gt;
&lt;th&gt;Type&lt;/th&gt;
&lt;th&gt;Protocol&lt;/th&gt;
&lt;th&gt;Port Range&lt;/th&gt;
&lt;th&gt;Source / Destination&lt;/th&gt;
&lt;th&gt;Action&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;100&lt;/td&gt;
&lt;td&gt;Inbound&lt;/td&gt;
&lt;td&gt;TCP&lt;/td&gt;
&lt;td&gt;80&lt;/td&gt;
&lt;td&gt;0.0.0.0/0&lt;/td&gt;
&lt;td&gt;ALLOW&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;110&lt;/td&gt;
&lt;td&gt;Inbound&lt;/td&gt;
&lt;td&gt;TCP&lt;/td&gt;
&lt;td&gt;443&lt;/td&gt;
&lt;td&gt;0.0.0.0/0&lt;/td&gt;
&lt;td&gt;ALLOW&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;120&lt;/td&gt;
&lt;td&gt;Inbound&lt;/td&gt;
&lt;td&gt;TCP&lt;/td&gt;
&lt;td&gt;22&lt;/td&gt;
&lt;td&gt;0.0.0.0/0&lt;/td&gt;
&lt;td&gt;ALLOW&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;1000&lt;/td&gt;
&lt;td&gt;Outbound&lt;/td&gt;
&lt;td&gt;ALL&lt;/td&gt;
&lt;td&gt;ALL&lt;/td&gt;
&lt;td&gt;0.0.0.0/0&lt;/td&gt;
&lt;td&gt;ALLOW&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;*&lt;/td&gt;
&lt;td&gt;-&lt;/td&gt;
&lt;td&gt;-&lt;/td&gt;
&lt;td&gt;-&lt;/td&gt;
&lt;td&gt;-&lt;/td&gt;
&lt;td&gt;DENY (implicit)&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;


&lt;h1&gt;
  
  
  🛠️ Terraform Example (minimal)
&lt;/h1&gt;

&lt;p&gt;Use this as a starting point — update &lt;code&gt;vpc_id&lt;/code&gt;, CIDRs and rule numbers as needed.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight hcl"&gt;&lt;code&gt;&lt;span class="nx"&gt;resource&lt;/span&gt; &lt;span class="s2"&gt;"aws_network_acl"&lt;/span&gt; &lt;span class="s2"&gt;"public_nacl"&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="nx"&gt;vpc_id&lt;/span&gt; &lt;span class="p"&gt;=&lt;/span&gt; &lt;span class="nx"&gt;aws_vpc&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;main&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;id&lt;/span&gt;
  &lt;span class="nx"&gt;tags&lt;/span&gt; &lt;span class="p"&gt;=&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="nx"&gt;Name&lt;/span&gt; &lt;span class="p"&gt;=&lt;/span&gt; &lt;span class="s2"&gt;"public-nacl"&lt;/span&gt;
  &lt;span class="p"&gt;}&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;

&lt;span class="nx"&gt;resource&lt;/span&gt; &lt;span class="s2"&gt;"aws_network_acl_rule"&lt;/span&gt; &lt;span class="s2"&gt;"allow_http_in"&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="nx"&gt;network_acl_id&lt;/span&gt; &lt;span class="p"&gt;=&lt;/span&gt; &lt;span class="nx"&gt;aws_network_acl&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;public_nacl&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;id&lt;/span&gt;
  &lt;span class="nx"&gt;rule_number&lt;/span&gt;    &lt;span class="p"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;100&lt;/span&gt;
  &lt;span class="nx"&gt;egress&lt;/span&gt;         &lt;span class="p"&gt;=&lt;/span&gt; &lt;span class="kc"&gt;false&lt;/span&gt;
  &lt;span class="nx"&gt;protocol&lt;/span&gt;       &lt;span class="p"&gt;=&lt;/span&gt; &lt;span class="s2"&gt;"6"&lt;/span&gt;       &lt;span class="c1"&gt;# TCP&lt;/span&gt;
  &lt;span class="nx"&gt;rule_action&lt;/span&gt;    &lt;span class="p"&gt;=&lt;/span&gt; &lt;span class="s2"&gt;"allow"&lt;/span&gt;
  &lt;span class="nx"&gt;cidr_block&lt;/span&gt;     &lt;span class="p"&gt;=&lt;/span&gt; &lt;span class="s2"&gt;"0.0.0.0/0"&lt;/span&gt;
  &lt;span class="nx"&gt;from_port&lt;/span&gt;      &lt;span class="p"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;80&lt;/span&gt;
  &lt;span class="nx"&gt;to_port&lt;/span&gt;        &lt;span class="p"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;80&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;

&lt;span class="nx"&gt;resource&lt;/span&gt; &lt;span class="s2"&gt;"aws_network_acl_rule"&lt;/span&gt; &lt;span class="s2"&gt;"allow_https_in"&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="nx"&gt;network_acl_id&lt;/span&gt; &lt;span class="p"&gt;=&lt;/span&gt; &lt;span class="nx"&gt;aws_network_acl&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;public_nacl&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;id&lt;/span&gt;
  &lt;span class="nx"&gt;rule_number&lt;/span&gt;    &lt;span class="p"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;110&lt;/span&gt;
  &lt;span class="nx"&gt;egress&lt;/span&gt;         &lt;span class="p"&gt;=&lt;/span&gt; &lt;span class="kc"&gt;false&lt;/span&gt;
  &lt;span class="nx"&gt;protocol&lt;/span&gt;       &lt;span class="p"&gt;=&lt;/span&gt; &lt;span class="s2"&gt;"6"&lt;/span&gt;
  &lt;span class="nx"&gt;rule_action&lt;/span&gt;    &lt;span class="p"&gt;=&lt;/span&gt; &lt;span class="s2"&gt;"allow"&lt;/span&gt;
  &lt;span class="nx"&gt;cidr_block&lt;/span&gt;     &lt;span class="p"&gt;=&lt;/span&gt; &lt;span class="s2"&gt;"0.0.0.0/0"&lt;/span&gt;
  &lt;span class="nx"&gt;from_port&lt;/span&gt;      &lt;span class="p"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;443&lt;/span&gt;
  &lt;span class="nx"&gt;to_port&lt;/span&gt;        &lt;span class="p"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;443&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;

&lt;span class="nx"&gt;resource&lt;/span&gt; &lt;span class="s2"&gt;"aws_network_acl_rule"&lt;/span&gt; &lt;span class="s2"&gt;"allow_ssh_in"&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="nx"&gt;network_acl_id&lt;/span&gt; &lt;span class="p"&gt;=&lt;/span&gt; &lt;span class="nx"&gt;aws_network_acl&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;public_nacl&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;id&lt;/span&gt;
  &lt;span class="nx"&gt;rule_number&lt;/span&gt;    &lt;span class="p"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;120&lt;/span&gt;
  &lt;span class="nx"&gt;egress&lt;/span&gt;         &lt;span class="p"&gt;=&lt;/span&gt; &lt;span class="kc"&gt;false&lt;/span&gt;
  &lt;span class="nx"&gt;protocol&lt;/span&gt;       &lt;span class="p"&gt;=&lt;/span&gt; &lt;span class="s2"&gt;"6"&lt;/span&gt;
  &lt;span class="nx"&gt;rule_action&lt;/span&gt;    &lt;span class="p"&gt;=&lt;/span&gt; &lt;span class="s2"&gt;"allow"&lt;/span&gt;
  &lt;span class="nx"&gt;cidr_block&lt;/span&gt;     &lt;span class="p"&gt;=&lt;/span&gt; &lt;span class="s2"&gt;"0.0.0.0/0"&lt;/span&gt;
  &lt;span class="nx"&gt;from_port&lt;/span&gt;      &lt;span class="p"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;22&lt;/span&gt;
  &lt;span class="nx"&gt;to_port&lt;/span&gt;        &lt;span class="p"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;22&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;

&lt;span class="nx"&gt;resource&lt;/span&gt; &lt;span class="s2"&gt;"aws_network_acl_rule"&lt;/span&gt; &lt;span class="s2"&gt;"allow_all_out"&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="nx"&gt;network_acl_id&lt;/span&gt; &lt;span class="p"&gt;=&lt;/span&gt; &lt;span class="nx"&gt;aws_network_acl&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;public_nacl&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;id&lt;/span&gt;
  &lt;span class="nx"&gt;rule_number&lt;/span&gt;    &lt;span class="p"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;1000&lt;/span&gt;
  &lt;span class="nx"&gt;egress&lt;/span&gt;         &lt;span class="p"&gt;=&lt;/span&gt; &lt;span class="kc"&gt;true&lt;/span&gt;
  &lt;span class="nx"&gt;protocol&lt;/span&gt;       &lt;span class="p"&gt;=&lt;/span&gt; &lt;span class="s2"&gt;"-1"&lt;/span&gt;      &lt;span class="c1"&gt;# all protocols&lt;/span&gt;
  &lt;span class="nx"&gt;rule_action&lt;/span&gt;    &lt;span class="p"&gt;=&lt;/span&gt; &lt;span class="s2"&gt;"allow"&lt;/span&gt;
  &lt;span class="nx"&gt;cidr_block&lt;/span&gt;     &lt;span class="p"&gt;=&lt;/span&gt; &lt;span class="s2"&gt;"0.0.0.0/0"&lt;/span&gt;
  &lt;span class="nx"&gt;from_port&lt;/span&gt;      &lt;span class="p"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;0&lt;/span&gt;
  &lt;span class="nx"&gt;to_port&lt;/span&gt;        &lt;span class="p"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;0&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Thank You
&lt;/h2&gt;




&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fr3swgi42qo4aslk9zqck.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fr3swgi42qo4aslk9zqck.png" alt=" " width="768" height="393"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Thank You
&lt;/h2&gt;

&lt;h2&gt;
  
  
  🔗 Connect With Me
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;🌐 Platform&lt;/th&gt;
&lt;th&gt;🔗 Link&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;🐙 &lt;strong&gt;GitHub&lt;/strong&gt;
&lt;/td&gt;
&lt;td&gt;&lt;a href="https://lnkd.in/d2F3JPa3" rel="noopener noreferrer"&gt;https://lnkd.in/d2F3JPa3&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;✍️ &lt;strong&gt;Dev.to Blog&lt;/strong&gt;
&lt;/td&gt;
&lt;td&gt;&lt;a href="https://lnkd.in/dNtgqAME" rel="noopener noreferrer"&gt;https://lnkd.in/dNtgqAME&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;💼 &lt;strong&gt;LinkedIn&lt;/strong&gt;
&lt;/td&gt;
&lt;td&gt;&lt;a href="https://lnkd.in/d3NctxFT" rel="noopener noreferrer"&gt;https://lnkd.in/d3NctxFT&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;📄 &lt;strong&gt;Resume (Google Drive)&lt;/strong&gt;
&lt;/td&gt;
&lt;td&gt;&lt;a href="https://lnkd.in/dHDNsd_D" rel="noopener noreferrer"&gt;https://lnkd.in/dHDNsd_D&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h2&gt;
  
  
  🔖 Hashtags
&lt;/h2&gt;

&lt;h1&gt;
  
  
  AWS #DevOps #CloudComputing #AWSLearning #EBS #VolumeMounting #DataPersistence #LearningJourney #CareerGrowth #DevOpsEngineer #AWSCommunity
&lt;/h1&gt;

</description>
      <category>security</category>
      <category>devops</category>
      <category>aws</category>
      <category>networking</category>
    </item>
    <item>
      <title>📅 Day 13 | AWS VPC — The Heart of AWS Networking 🌐</title>
      <dc:creator>Sudarshan Yadav</dc:creator>
      <pubDate>Thu, 11 Dec 2025 17:18:30 +0000</pubDate>
      <link>https://forem.com/sudarshan_yadav/day-13-aws-vpc-the-heart-of-aws-networking-2bjc</link>
      <guid>https://forem.com/sudarshan_yadav/day-13-aws-vpc-the-heart-of-aws-networking-2bjc</guid>
      <description>&lt;h1&gt;
  
  
  📅 Day 13 | AWS VPC — The Heart of AWS Networking 🌐
&lt;/h1&gt;

&lt;p&gt;&lt;strong&gt;AWS VPC (Virtual Private Cloud)&lt;/strong&gt; is the foundation of all networking inside AWS.&lt;br&gt;&lt;br&gt;
Every EC2 instance, database, load balancer, or container service you deploy &lt;strong&gt;lives inside a VPC&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Understanding VPC = understanding how your entire cloud infrastructure communicates.&lt;/p&gt;




&lt;h2&gt;
  
  
  🔥 Why VPC Is Essential
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;🛡️ Designing secure architectures
&lt;/li&gt;
&lt;li&gt;🌐 Creating public &amp;amp; private networks
&lt;/li&gt;
&lt;li&gt;🚀 Enabling internet access with &lt;strong&gt;Internet Gateway (IGW)&lt;/strong&gt; &amp;amp; &lt;strong&gt;NAT Gateway&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;🔗 Connecting environments using &lt;strong&gt;VPC Peering&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;⚙️ Building scalable DevOps deployments
&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  🎯 Why You Must Master VPC
&lt;/h2&gt;

&lt;p&gt;Mastering VPC gives you full control over:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Networking
&lt;/li&gt;
&lt;li&gt;Security boundaries
&lt;/li&gt;
&lt;li&gt;Traffic flow
&lt;/li&gt;
&lt;li&gt;Service-to-service connectivity
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;VPC is one of the &lt;strong&gt;most criti&lt;/strong&gt;&lt;/p&gt;

&lt;h1&gt;
  
  
  AWS VPC, Subnets, IGW, NAT, Peering, SSH...
&lt;/h1&gt;




&lt;h2&gt;
  
  
  ✅ Quick Summary (What You’ll Get)
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Create VPCs (Mumbai &amp;amp; Delhi) + Subnets
&lt;/li&gt;
&lt;li&gt;Attach Internet Gateway (IGW) + Public Route Table
&lt;/li&gt;
&lt;li&gt;Create NAT Gateway + Private Route Table
&lt;/li&gt;
&lt;li&gt;Create VPC Peering + routing both sides
&lt;/li&gt;
&lt;li&gt;Delete resources in correct order
&lt;/li&gt;
&lt;li&gt;PuTTYgen steps to convert PEM ↔ PPK
&lt;/li&gt;
&lt;/ul&gt;




&lt;h1&gt;
  
  
  1) Create a VPC (Example)
&lt;/h1&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Step&lt;/th&gt;
&lt;th&gt;Action&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Console&lt;/td&gt;
&lt;td&gt;VPC → Create VPC → &lt;strong&gt;VPC only&lt;/strong&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Name&lt;/td&gt;
&lt;td&gt;&lt;code&gt;MyVPC01&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;IPv4 CIDR&lt;/td&gt;
&lt;td&gt;
&lt;code&gt;10.0.0.0/24&lt;/code&gt; (or &lt;code&gt;/16&lt;/code&gt; for more IPs)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Result&lt;/td&gt;
&lt;td&gt;VPC created&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;




&lt;h1&gt;
  
  
  2) Create Subnets
&lt;/h1&gt;

&lt;h2&gt;
  
  
  Public Subnet (example)
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Field&lt;/th&gt;
&lt;th&gt;Value&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;VPC&lt;/td&gt;
&lt;td&gt;MyVPC01&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Name&lt;/td&gt;
&lt;td&gt;&lt;code&gt;sub-public-1&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;AZ&lt;/td&gt;
&lt;td&gt;&lt;code&gt;ap-south-1a&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;CIDR&lt;/td&gt;
&lt;td&gt;&lt;code&gt;10.0.0.0/28&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Auto-assign public IPv4&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;Enable&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h2&gt;
  
  
  Private Subnet (example)
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Field&lt;/th&gt;
&lt;th&gt;Value&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;VPC&lt;/td&gt;
&lt;td&gt;MyVPC01&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Name&lt;/td&gt;
&lt;td&gt;&lt;code&gt;sub-private-1&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;CIDR&lt;/td&gt;
&lt;td&gt;&lt;code&gt;10.0.1.0/28&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Auto-assign public IPv4&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;Disable&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;




&lt;h1&gt;
  
  
  3) Internet Gateway (IGW) + Public Route Table
&lt;/h1&gt;

&lt;h2&gt;
  
  
  Internet Gateway
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Step&lt;/th&gt;
&lt;th&gt;Action&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Create&lt;/td&gt;
&lt;td&gt;VPC → Internet Gateways → Create&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Name&lt;/td&gt;
&lt;td&gt;&lt;code&gt;igw-mumbai&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Attach&lt;/td&gt;
&lt;td&gt;Attach to &lt;code&gt;MyVPC01&lt;/code&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h2&gt;
  
  
  Public Route Table
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Step&lt;/th&gt;
&lt;th&gt;Action&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Create/Select&lt;/td&gt;
&lt;td&gt;Route tables → &lt;code&gt;public-rt&lt;/code&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Add Route&lt;/td&gt;
&lt;td&gt;
&lt;code&gt;0.0.0.0/0&lt;/code&gt; → Internet Gateway (&lt;code&gt;igw-mumbai&lt;/code&gt;)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Associate&lt;/td&gt;
&lt;td&gt;Public Subnet (&lt;code&gt;sub-public-1&lt;/code&gt;)&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;




&lt;h1&gt;
  
  
  4) NAT Gateway (Private → Outbound Internet)
&lt;/h1&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Step&lt;/th&gt;
&lt;th&gt;Action&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Create&lt;/td&gt;
&lt;td&gt;NAT Gateway in &lt;strong&gt;public subnet&lt;/strong&gt; (&lt;code&gt;sub-public-1&lt;/code&gt;)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;EIP&lt;/td&gt;
&lt;td&gt;Allocate new Elastic IP&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Result&lt;/td&gt;
&lt;td&gt;NAT Gateway created&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h2&gt;
  
  
  Private Route Table
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Route&lt;/th&gt;
&lt;th&gt;Target&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;0.0.0.0/0&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;NAT Gateway&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;Associate this route table with the private subnet (&lt;code&gt;sub-private-1&lt;/code&gt;).&lt;/p&gt;

&lt;p&gt;Outcome:&lt;br&gt;&lt;br&gt;
Private EC2 → outbound internet OK, inbound blocked.&lt;/p&gt;




&lt;h1&gt;
  
  
  5) Security Groups (Recommended)
&lt;/h1&gt;

&lt;h2&gt;
  
  
  Public EC2 SG
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Rule&lt;/th&gt;
&lt;th&gt;Value&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Inbound&lt;/td&gt;
&lt;td&gt;SSH (22) from &lt;strong&gt;your IP&lt;/strong&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Inbound&lt;/td&gt;
&lt;td&gt;HTTP/HTTPS (80/443) from &lt;code&gt;0.0.0.0/0&lt;/code&gt; (if web)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Outbound&lt;/td&gt;
&lt;td&gt;All allowed&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h2&gt;
  
  
  Private EC2 SG
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Rule&lt;/th&gt;
&lt;th&gt;Value&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Inbound&lt;/td&gt;
&lt;td&gt;From Public EC2 SG or ALB&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Outbound&lt;/td&gt;
&lt;td&gt;All allowed&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;




&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F2m9bznmswb8pa2uhiz1l.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F2m9bznmswb8pa2uhiz1l.png" alt=" " width="800" height="800"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h1&gt;
  
  
  6) EC2 Deployment
&lt;/h1&gt;

&lt;h2&gt;
  
  
  Public EC2
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Launch into &lt;code&gt;sub-public-1&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;Use Public-SG
&lt;/li&gt;
&lt;li&gt;This can serve as a &lt;strong&gt;bastion/jump host&lt;/strong&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Private EC2
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Launch into &lt;code&gt;sub-private-1&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;Use Private-SG
&lt;/li&gt;
&lt;li&gt;SSH through bastion only&lt;/li&gt;
&lt;/ul&gt;




&lt;h1&gt;
  
  
  7) Create VPCs for Peering (Mumbai &amp;amp; Delhi)
&lt;/h1&gt;




&lt;h2&gt;
  
  
  &lt;strong&gt;Mumbai VPC&lt;/strong&gt;
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Item&lt;/th&gt;
&lt;th&gt;Value&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;VPC Name&lt;/td&gt;
&lt;td&gt;&lt;code&gt;vpc-mumbai&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;CIDR&lt;/td&gt;
&lt;td&gt;&lt;code&gt;10.0.0.0/16&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Subnet&lt;/td&gt;
&lt;td&gt;
&lt;code&gt;sub1-mumbai&lt;/code&gt; → &lt;code&gt;10.0.0.0/28&lt;/code&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;IGW&lt;/td&gt;
&lt;td&gt;&lt;code&gt;igw-mumbai&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Public RT&lt;/td&gt;
&lt;td&gt;Route → &lt;code&gt;0.0.0.0/0 → igw-mumbai&lt;/code&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;




&lt;h2&gt;
  
  
  &lt;strong&gt;Delhi VPC&lt;/strong&gt;
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Item&lt;/th&gt;
&lt;th&gt;Value&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;VPC Name&lt;/td&gt;
&lt;td&gt;&lt;code&gt;vpc-delhi&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;CIDR&lt;/td&gt;
&lt;td&gt;&lt;code&gt;172.16.0.0/16&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Subnet&lt;/td&gt;
&lt;td&gt;
&lt;code&gt;sub1-delhi&lt;/code&gt; → &lt;code&gt;172.16.0.0/28&lt;/code&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;IGW&lt;/td&gt;
&lt;td&gt;&lt;code&gt;igw-delhi&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Public RT&lt;/td&gt;
&lt;td&gt;Route → &lt;code&gt;0.0.0.0/0 → igw-delhi&lt;/code&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;




&lt;h1&gt;
  
  
  8) VPC Peering (Mumbai ↔ Delhi)
&lt;/h1&gt;

&lt;h2&gt;
  
  
  Create Peering
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Step&lt;/th&gt;
&lt;th&gt;Action&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Create&lt;/td&gt;
&lt;td&gt;VPC → Peering Connections&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Name&lt;/td&gt;
&lt;td&gt;&lt;code&gt;my-peering&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Requester&lt;/td&gt;
&lt;td&gt;&lt;code&gt;vpc-mumbai&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Accepter&lt;/td&gt;
&lt;td&gt;&lt;code&gt;vpc-delhi&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;Accept request from the Delhi side.&lt;/p&gt;

&lt;h2&gt;
  
  
  Add Routes (Both Sides)
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Mumbai Route Table
&lt;/h3&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Destination&lt;/th&gt;
&lt;th&gt;Target&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;172.16.0.0/16&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Peering Connection&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h3&gt;
  
  
  Delhi Route Table
&lt;/h3&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Destination&lt;/th&gt;
&lt;th&gt;Target&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;10.0.0.0/16&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Peering Connection&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h2&gt;
  
  
  Security Groups
&lt;/h2&gt;

&lt;p&gt;Allow from peer CIDRs if required.&lt;/p&gt;




&lt;h1&gt;
  
  
  9) Deletion / Cleanup Order
&lt;/h1&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Order&lt;/th&gt;
&lt;th&gt;Delete&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;1&lt;/td&gt;
&lt;td&gt;Peering connection&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;2&lt;/td&gt;
&lt;td&gt;EC2 Instances&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;3&lt;/td&gt;
&lt;td&gt;NAT Gateway (release EIP)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;4&lt;/td&gt;
&lt;td&gt;Detach/Delete IGW&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;5&lt;/td&gt;
&lt;td&gt;Subnets&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;6&lt;/td&gt;
&lt;td&gt;Route Tables&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;7&lt;/td&gt;
&lt;td&gt;VPC&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;This avoids “resource in use” errors.&lt;/p&gt;




&lt;h1&gt;
  
  
  10) AWS Limits &amp;amp; Quotas
&lt;/h1&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Resource&lt;/th&gt;
&lt;th&gt;Default Limit&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;VPCs per Region&lt;/td&gt;
&lt;td&gt;Usually 5&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Subnets&lt;/td&gt;
&lt;td&gt;Large (no issue normally)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;NAT Gateways&lt;/td&gt;
&lt;td&gt;Limited by region, costly&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;Request quota increase via &lt;strong&gt;AWS Service Quotas&lt;/strong&gt;.&lt;/p&gt;




&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8writ50yuarqirc0ni16.webp" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8writ50yuarqirc0ni16.webp" alt=" " width="800" height="356"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Thank You
&lt;/h2&gt;

&lt;h2&gt;
  
  
  🔗 Connect With Me
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;🌐 Platform&lt;/th&gt;
&lt;th&gt;🔗 Link&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;🐙 &lt;strong&gt;GitHub&lt;/strong&gt;
&lt;/td&gt;
&lt;td&gt;&lt;a href="https://lnkd.in/d2F3JPa3" rel="noopener noreferrer"&gt;https://lnkd.in/d2F3JPa3&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;✍️ &lt;strong&gt;Dev.to Blog&lt;/strong&gt;
&lt;/td&gt;
&lt;td&gt;&lt;a href="https://lnkd.in/dNtgqAME" rel="noopener noreferrer"&gt;https://lnkd.in/dNtgqAME&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;💼 &lt;strong&gt;LinkedIn&lt;/strong&gt;
&lt;/td&gt;
&lt;td&gt;&lt;a href="https://lnkd.in/d3NctxFT" rel="noopener noreferrer"&gt;https://lnkd.in/d3NctxFT&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;📄 &lt;strong&gt;Resume (Google Drive)&lt;/strong&gt;
&lt;/td&gt;
&lt;td&gt;&lt;a href="https://lnkd.in/dHDNsd_D" rel="noopener noreferrer"&gt;https://lnkd.in/dHDNsd_D&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h2&gt;
  
  
  🔖 Hashtags
&lt;/h2&gt;

&lt;h1&gt;
  
  
  AWS #DevOps #CloudComputing #AWSLearning #EBS #VolumeMounting #DataPersistence #LearningJourney #CareerGrowth #DevOpsEngineer #AWSCommunity
&lt;/h1&gt;

</description>
      <category>devops</category>
      <category>architecture</category>
      <category>networking</category>
      <category>aws</category>
    </item>
    <item>
      <title>📅 Day 12 | AWS IAM — The Backbone of AWS Security 🔐☁️</title>
      <dc:creator>Sudarshan Yadav</dc:creator>
      <pubDate>Thu, 11 Dec 2025 16:39:05 +0000</pubDate>
      <link>https://forem.com/sudarshan_yadav/day-12-aws-iam-the-backbone-of-aws-security-3ib6</link>
      <guid>https://forem.com/sudarshan_yadav/day-12-aws-iam-the-backbone-of-aws-security-3ib6</guid>
      <description>&lt;h1&gt;
  
  
  📅 Day 12 | AWS IAM — The Backbone of AWS Security 🔐☁️
&lt;/h1&gt;

&lt;p&gt;&lt;strong&gt;AWS IAM (Identity and Access Management)&lt;/strong&gt; helps us securely control access to AWS services.&lt;br&gt;&lt;br&gt;
It is one of the &lt;strong&gt;FIRST things every DevOps engineer must master&lt;/strong&gt; because almost all AWS services depend on &lt;strong&gt;IAM Users, Roles, Groups, and Policies&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;IAM plays a crucial role in:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Secure access management
&lt;/li&gt;
&lt;li&gt;CI/CD automation
&lt;/li&gt;
&lt;li&gt;Service-to-service communication
&lt;/li&gt;
&lt;li&gt;DevOps workflows
&lt;/li&gt;
&lt;li&gt;Cloud security best practices
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Mastering IAM means mastering &lt;strong&gt;security + automation + access control&lt;/strong&gt;, which is the foundation of working in AWS and DevOps.&lt;/p&gt;

&lt;h1&gt;
  
  
  🔐 What is IAM?
&lt;/h1&gt;

&lt;p&gt;&lt;strong&gt;IAM (Identity and Access Management)&lt;/strong&gt; is the security system of AWS.&lt;br&gt;&lt;br&gt;
It decides &lt;strong&gt;who can access what&lt;/strong&gt; in your AWS account.&lt;/p&gt;

&lt;p&gt;Think of IAM like a security guard:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Users&lt;/strong&gt; = People who need access
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Roles&lt;/strong&gt; = Permissions for AWS services (EC2, Lambda, GitHub Actions, Terraform)
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Policies&lt;/strong&gt; = Rules that say what actions are allowed
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Groups&lt;/strong&gt; = Team permissions
&lt;/li&gt;
&lt;/ul&gt;




&lt;h1&gt;
  
  
  🧑‍💻 How to Use IAM (Step-by-Step Guide)
&lt;/h1&gt;




&lt;h2&gt;
  
  
  ✅ 1. Create IAM Users (for people)
&lt;/h2&gt;

&lt;p&gt;Use users for human access, not automation.&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;Steps:&lt;/strong&gt;
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Go to &lt;strong&gt;AWS Console → IAM → Users&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;Click &lt;strong&gt;Create user&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;Give name (e.g., &lt;code&gt;devops-user&lt;/code&gt;)&lt;/li&gt;
&lt;li&gt;Attach permissions (Admin or custom)&lt;/li&gt;
&lt;li&gt;Create login credentials&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Enable MFA&lt;/strong&gt; (very important!)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Purpose:&lt;/strong&gt; Logging into AWS as a person.&lt;/p&gt;




&lt;h2&gt;
  
  
  ✅ 2. Create Groups (for teams)
&lt;/h2&gt;

&lt;p&gt;Groups help give the same permissions to multiple users.&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;Examples:&lt;/strong&gt;
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;DevOps-Team
&lt;/li&gt;
&lt;li&gt;Developers
&lt;/li&gt;
&lt;li&gt;Admin-Team
&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;Steps:&lt;/strong&gt;
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;IAM → &lt;strong&gt;User groups&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;Create group&lt;/li&gt;
&lt;li&gt;Attach common policies&lt;/li&gt;
&lt;li&gt;Add users to group&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  ✅ 3. Create IAM Roles (for AWS services)
&lt;/h2&gt;

&lt;p&gt;Roles are used by &lt;strong&gt;machines&lt;/strong&gt;, not humans.&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;Examples:&lt;/strong&gt;
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;EC2 instance role
&lt;/li&gt;
&lt;li&gt;Lambda execution role
&lt;/li&gt;
&lt;li&gt;GitHub Actions OIDC role
&lt;/li&gt;
&lt;li&gt;Jenkins role
&lt;/li&gt;
&lt;li&gt;Terraform role
&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;Steps:&lt;/strong&gt;
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;IAM → &lt;strong&gt;Roles&lt;/strong&gt; → Create role
&lt;/li&gt;
&lt;li&gt;Choose Service (EC2, Lambda, etc.)&lt;/li&gt;
&lt;li&gt;Attach policies (S3, EC2, CloudWatch)&lt;/li&gt;
&lt;li&gt;Attach role to service&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;Use Examples:&lt;/strong&gt;
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;EC2 can read S3 objects using a role
&lt;/li&gt;
&lt;li&gt;GitHub Actions deploys to AWS using a role (no access keys)&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  ✅ 4. Attach Policies (Permissions)
&lt;/h2&gt;

&lt;p&gt;A policy is a JSON document that defines allowed actions.&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;Example Policy:&lt;/strong&gt;
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight json"&gt;&lt;code&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"Version"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"2012-10-17"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"Statement"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"Effect"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"Allow"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"Action"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"s3:GetObject"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"Resource"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"arn:aws:s3:::mybucket/*"&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;






&lt;h2&gt;
  
  
  ✅ 4. Attach Policies (Permissions)
&lt;/h2&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;Steps:&lt;/strong&gt;
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;IAM → &lt;strong&gt;Policies&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;Create policy&lt;/li&gt;
&lt;li&gt;Attach to &lt;strong&gt;user / group / role&lt;/strong&gt;
&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  ✅ 5. Enable MFA (for security)
&lt;/h2&gt;

&lt;p&gt;MFA adds strong protection during login.&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;Steps:&lt;/strong&gt;
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;IAM → Users → Your user → &lt;strong&gt;Security credentials&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;Click &lt;strong&gt;Assign MFA device&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;Scan QR code using Google Authenticator / Authy&lt;/li&gt;
&lt;li&gt;Done&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  ✅ 6. Use IAM Access Analyzer
&lt;/h2&gt;

&lt;p&gt;IAM Access Analyzer identifies security risks like &lt;strong&gt;public S3 buckets&lt;/strong&gt; or &lt;strong&gt;over-permissive policies&lt;/strong&gt;.&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;Steps:&lt;/strong&gt;
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;IAM → &lt;strong&gt;Access Analyzer&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;Enable analyzer&lt;/li&gt;
&lt;li&gt;Check findings&lt;/li&gt;
&lt;li&gt;Fix over-permissive policies&lt;/li&gt;
&lt;/ul&gt;




&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F3z5fiu9arnn9q3497o9i.webp" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F3z5fiu9arnn9q3497o9i.webp" alt=" " width="800" height="400"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h1&gt;
  
  
  🧰 Where IAM is Used in DevOps?
&lt;/h1&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Task&lt;/th&gt;
&lt;th&gt;IAM Required?&lt;/th&gt;
&lt;th&gt;Example&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;CI/CD (GitHub Actions)&lt;/td&gt;
&lt;td&gt;Yes&lt;/td&gt;
&lt;td&gt;Role with OIDC&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Terraform&lt;/td&gt;
&lt;td&gt;Yes&lt;/td&gt;
&lt;td&gt;IAM Role with policies&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;EC2 Logging&lt;/td&gt;
&lt;td&gt;Yes&lt;/td&gt;
&lt;td&gt;CloudWatch role&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;S3 Artifacts&lt;/td&gt;
&lt;td&gt;Yes&lt;/td&gt;
&lt;td&gt;S3 access policy&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;EKS&lt;/td&gt;
&lt;td&gt;Yes&lt;/td&gt;
&lt;td&gt;IAM roles for Kubernetes&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Jenkins Deployment&lt;/td&gt;
&lt;td&gt;Yes&lt;/td&gt;
&lt;td&gt;IAM user / role&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Monitoring&lt;/td&gt;
&lt;td&gt;Yes&lt;/td&gt;
&lt;td&gt;CloudWatch permissions&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;




&lt;h2&gt;
  
  
  Thank You
&lt;/h2&gt;

&lt;h2&gt;
  
  
  🔗 Connect With Me
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;🌐 Platform&lt;/th&gt;
&lt;th&gt;🔗 Link&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;🐙 &lt;strong&gt;GitHub&lt;/strong&gt;
&lt;/td&gt;
&lt;td&gt;&lt;a href="https://lnkd.in/d2F3JPa3" rel="noopener noreferrer"&gt;https://lnkd.in/d2F3JPa3&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;✍️ &lt;strong&gt;Dev.to Blog&lt;/strong&gt;
&lt;/td&gt;
&lt;td&gt;&lt;a href="https://lnkd.in/dNtgqAME" rel="noopener noreferrer"&gt;https://lnkd.in/dNtgqAME&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;💼 &lt;strong&gt;LinkedIn&lt;/strong&gt;
&lt;/td&gt;
&lt;td&gt;&lt;a href="https://lnkd.in/d3NctxFT" rel="noopener noreferrer"&gt;https://lnkd.in/d3NctxFT&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;📄 &lt;strong&gt;Resume (Google Drive)&lt;/strong&gt;
&lt;/td&gt;
&lt;td&gt;&lt;a href="https://lnkd.in/dHDNsd_D" rel="noopener noreferrer"&gt;https://lnkd.in/dHDNsd_D&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h2&gt;
  
  
  🔖 Hashtags
&lt;/h2&gt;

&lt;h1&gt;
  
  
  AWS #DevOps #CloudComputing #AWSLearning #EBS #VolumeMounting #DataPersistence #LearningJourney #CareerGrowth #DevOpsEngineer #AWSCommunity
&lt;/h1&gt;

</description>
      <category>devops</category>
      <category>beginners</category>
      <category>security</category>
      <category>aws</category>
    </item>
    <item>
      <title>📅 Day 11 🚀 Amazon S3 | Simple &amp; Secure Cloud Storage</title>
      <dc:creator>Sudarshan Yadav</dc:creator>
      <pubDate>Tue, 09 Dec 2025 16:36:22 +0000</pubDate>
      <link>https://forem.com/sudarshan_yadav/day-11-amazon-s3-simple-secure-cloud-storage-2l15</link>
      <guid>https://forem.com/sudarshan_yadav/day-11-amazon-s3-simple-secure-cloud-storage-2l15</guid>
      <description>&lt;h1&gt;
  
  
  📅 Day 11 🚀 Amazon S3 | Simple &amp;amp; Secure Cloud Storage
&lt;/h1&gt;

&lt;p&gt;In AWS DevOps projects, storing data safely and accessing it anytime is very important.&lt;br&gt;
AWS provides Amazon S3 — a highly scalable object storage service used worldwide.&lt;/p&gt;

&lt;p&gt;S3 helps us:&lt;br&gt;
✔ Store any type of data (images, logs, code, backups, videos)&lt;br&gt;
✔ Access data anytime from anywhere&lt;br&gt;
✔ Host static websites like portfolios &amp;amp; landing pages&lt;br&gt;
✔ Store CI/CD build artifacts&lt;br&gt;
✔ Maintain backups &amp;amp; version control&lt;br&gt;
✔ Reduce cost using storage classes &amp;amp; lifecycle rules&lt;/p&gt;
&lt;h2&gt;
  
  
  📌 S3 = Storage + Security + Scalability + Cost Optimization
&lt;/h2&gt;

&lt;p&gt;It protects data with encryption, IAM policies &amp;amp; multi-AZ durability (11 9’s 🤯),&lt;br&gt;
making it a must-know service for DevOps engineers! 🔥&lt;/p&gt;
&lt;h2&gt;
  
  
  🚀 How to Create an S3 Bucket
&lt;/h2&gt;

&lt;p&gt;1️⃣ Login to AWS Console&lt;br&gt;&lt;br&gt;
2️⃣ Go to &lt;strong&gt;S3 service&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
3️⃣ Click &lt;strong&gt;Create bucket&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
4️⃣ Enter a &lt;strong&gt;unique bucket name&lt;/strong&gt; (globally unique)&lt;br&gt;&lt;br&gt;
5️⃣ Choose &lt;strong&gt;Region&lt;/strong&gt; (ex: ap-south-1)&lt;br&gt;&lt;br&gt;
6️⃣ Keep &lt;strong&gt;Block Public Access&lt;/strong&gt; ON by default&lt;br&gt;&lt;br&gt;
7️⃣ Click &lt;strong&gt;Create Bucket&lt;/strong&gt;  &lt;/p&gt;

&lt;p&gt;✔ Bucket created successfully 🎉&lt;/p&gt;
&lt;h2&gt;
  
  
  📤 How to Upload Files to S3
&lt;/h2&gt;

&lt;p&gt;1️⃣ Open your bucket&lt;br&gt;&lt;br&gt;
2️⃣ Click &lt;strong&gt;Upload&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
3️⃣ Add files (Images, Zip, PDFs, etc.)&lt;br&gt;&lt;br&gt;
4️⃣ Click &lt;strong&gt;Upload&lt;/strong&gt;  &lt;/p&gt;
&lt;h2&gt;
  
  
  ✔ Files stored in S3 🗂️
&lt;/h2&gt;
&lt;h2&gt;
  
  
  🔗 How to Connect &amp;amp; Access Files from S3
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Method&lt;/th&gt;
&lt;th&gt;Usage&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;URL / Public Access&lt;/td&gt;
&lt;td&gt;Share files or host static websites&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;IAM Users / Roles&lt;/td&gt;
&lt;td&gt;Secure internal access&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;AWS CLI&lt;/td&gt;
&lt;td&gt;Upload / Download using terminal&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;SDKs (Python, Java, Node.js)&lt;/td&gt;
&lt;td&gt;Application-level integration&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;CloudFront&lt;/td&gt;
&lt;td&gt;Faster access via CDN&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;h2&gt;
  
  
  📌 Access File using URL
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Go to your object → Copy &lt;strong&gt;Object URL&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;If file is &lt;strong&gt;Public&lt;/strong&gt; → URL works
&lt;/li&gt;
&lt;li&gt;If &lt;strong&gt;Private&lt;/strong&gt; → Access Denied ❌
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;👉 To make file public (only when required!)&lt;br&gt;
Objects → Permissions → Enable &lt;strong&gt;Public Read Access&lt;/strong&gt;&lt;/p&gt;
&lt;h2&gt;
  
  
  💻 How to Connect S3 Using AWS CLI
&lt;/h2&gt;

&lt;p&gt;👉 First configure CLI:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;aws configure
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;👉 Upload File:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;aws s3 &lt;span class="nb"&gt;cp &lt;/span&gt;file.txt s3://mybucket/
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;👉 Download File:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;aws s3 &lt;span class="nb"&gt;cp &lt;/span&gt;s3://mybucket/file.txt &lt;span class="nb"&gt;.&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;👉 List Buckets:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;aws s3 &lt;span class="nb"&gt;ls&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  🌐 Host a Static Website on S3
&lt;/h2&gt;

&lt;p&gt;1️⃣ Upload &lt;strong&gt;index.html&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
2️⃣ Go to &lt;strong&gt;Properties → Static website hosting → Enable&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
3️⃣ Select &lt;strong&gt;index.html&lt;/strong&gt; as the default file&lt;br&gt;&lt;br&gt;
4️⃣ Make &lt;strong&gt;index.html&lt;/strong&gt; public&lt;br&gt;&lt;br&gt;
5️⃣ Copy &lt;strong&gt;Website Endpoint URL&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
6️⃣ Open in browser → 🎉 Website is Live  &lt;/p&gt;

&lt;p&gt;(Optional) Use &lt;strong&gt;CloudFront&lt;/strong&gt; for HTTPS + global performance&lt;/p&gt;

&lt;h2&gt;
  
  
  🔁 Lifecycle Policies (Cost Optimization)
&lt;/h2&gt;

&lt;p&gt;Go to: &lt;strong&gt;Management → Lifecycle rules&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Example Rules:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;After &lt;strong&gt;30 days&lt;/strong&gt; → Move to &lt;strong&gt;Standard-IA&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;After &lt;strong&gt;90 days&lt;/strong&gt; → Move to &lt;strong&gt;Glacier&lt;/strong&gt;
&lt;/li&gt;
&lt;/ul&gt;




&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fij1005gbpjgpub6cntef.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fij1005gbpjgpub6cntef.png" alt=" " width="800" height="1200"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Thank You
&lt;/h2&gt;

&lt;h2&gt;
  
  
  🔗 Connect With Me
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;🌐 Platform&lt;/th&gt;
&lt;th&gt;🔗 Link&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;🐙 &lt;strong&gt;GitHub&lt;/strong&gt;
&lt;/td&gt;
&lt;td&gt;&lt;a href="https://lnkd.in/d2F3JPa3" rel="noopener noreferrer"&gt;https://lnkd.in/d2F3JPa3&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;✍️ &lt;strong&gt;Dev.to Blog&lt;/strong&gt;
&lt;/td&gt;
&lt;td&gt;&lt;a href="https://lnkd.in/dNtgqAME" rel="noopener noreferrer"&gt;https://lnkd.in/dNtgqAME&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;💼 &lt;strong&gt;LinkedIn&lt;/strong&gt;
&lt;/td&gt;
&lt;td&gt;&lt;a href="https://lnkd.in/d3NctxFT" rel="noopener noreferrer"&gt;https://lnkd.in/d3NctxFT&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;📄 &lt;strong&gt;Resume (Google Drive)&lt;/strong&gt;
&lt;/td&gt;
&lt;td&gt;&lt;a href="https://lnkd.in/dHDNsd_D" rel="noopener noreferrer"&gt;https://lnkd.in/dHDNsd_D&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h2&gt;
  
  
  🔖 Hashtags
&lt;/h2&gt;

&lt;h1&gt;
  
  
  AWS #DevOps #CloudComputing #AWSLearning #EBS #VolumeMounting #DataPersistence #LearningJourney #CareerGrowth #DevOpsEngineer #AWSCommunity
&lt;/h1&gt;

</description>
      <category>aws</category>
      <category>devops</category>
      <category>ai</category>
      <category>programming</category>
    </item>
  </channel>
</rss>
