Other Essentials: Storage, Networking & Organization

Lesson 7

You’ve mastered the basics of creating and managing EC2 servers! Now let’s explore the essential add-ons that make your servers more powerful, reliable, and organized. Think of these as the upgrades and accessories that turn a basic computer into a professional workstation.

What you’ll learn: By the end of this lesson, you’ll know how to add extra storage, ensure your server keeps the same address, create backups, and organize your resources—all the tools professionals use every day.

Real-world scenario: Imagine you’re building a website for a growing business. You’ll need extra storage for user uploads (EBS), a consistent address customers can rely on (Elastic IP), regular backups for safety (Snapshots), and organized labeling for your team (Tags).

In this lesson, we will cover:

  • EBS Volumes - Add extra storage to your servers
  • Elastic IPs - Give your server a permanent address
  • Snapshots - Create backups of your servers
  • Tags - Organize and label your resources

Table of contents

  1. Other Essentials: Storage, Networking & Organization
  2. EBS Volumes: Extra Storage for Your Server
    1. Types of EBS Volumes
  3. Elastic IPs: A Permanent Address for Your Server
    1. Reasons to use an Elastic IP
    2. How Elastic IPs Work
  4. Snapshots: Backups for Your Server Storage
    1. Why Use Snapshots?
    2. How Snapshots Work
  5. Creating Custom Server Images (AMIs)
  6. Tags: Organizing Your Cloud Resources
    1. Why Use Tags?
    2. Common Tag Strategies
    3. Tag Naming Best Practices
    4. Troubleshooting Common Issues
      1. EBS Volume Not Visible in OS
      2. Elastic IP Not Working After Assignment
      3. Tags Not Showing in Cost Reports
  7. What You’ve Accomplished
    1. Interactive Practice
      1. Practice 1: Storage Type Selection
      2. Practice 2: Elastic IP Use Case
      3. Practice 3: Tagging Strategy
      4. Practice 4: Snapshot Strategy
    2. Next Steps

EBS Volumes: Extra Storage for Your Server

Think of EBS (Elastic Block Store) volumes like adding a garage to your house. Your house comes with some built-in closets and storage (root volume), but when you accumulate more stuff—holiday decorations, sports equipment, tools—you need extra space. An EBS volume is like building that garage: it’s additional storage that belongs to your property, you can lock it for security, and you can even detach it and move it to a new house if you relocate.

Just like you might start with a one-car garage and later expand to a two-car garage when you buy another vehicle, EBS volumes can be resized when your storage needs grow.

When you create an EC2 instance, it automatically comes with a root volume (like the built-in hard drive in a laptop). But just like adding an external drive to your computer, you can attach additional EBS volumes when you need more space.

The process is simple:

  1. Create a volume - Specify size and type (like buying the right external drive)
  2. Attach to server - Connect it to your EC2 instance
  3. Mount and use - Format and mount it in your operating system

Many AWS services you will one day use automatically manage EBS volumes for you. They’ll create, attach, and optimize storage based on your needs.

When you might need extra storage:

  • Growing Collections - Like needing a shed when your garage gets full of tools and lawn equipment
  • Seasonal Items - Similar to attic space for holiday decorations you only use once a year
  • Important Documents - Like a filing cabinet specifically for tax records and warranties
  • Project Materials - Like a craft room where you keep all supplies separate from living spaces

Types of EBS Volumes

Think of these like different types of storage options for your home.

gp3 (General Purpose SSD) - The Standard Garage

  • Like: A regular two-car garage—handles everyday storage needs perfectly
  • Good for: Most normal uses, reliable and reasonably priced
  • Speed: Quick access to your stuff without being fancy
  • Choose when: You just need good, solid storage (this is usually the right choice)

gp2 (General Purpose SSD) - The Basic Shed

  • Like: A basic garden shed from the hardware store
  • Good for: When you need simple storage on a budget
  • Choose when: You’re just starting out or practicing

io2 (High Performance SSD) - The Climate-Controlled Warehouse

  • Like: A professional storage facility with temperature control, security, and instant access
  • Good for: When every second counts and you need the absolute best
  • Speed: Like having a personal assistant who fetches things instantly
  • Choose when: You have special requirements and budget isn’t a concern

Elastic IPs: A Permanent Address for Your Server

Think of an Elastic IP like getting a permanent phone number instead of using a prepaid phone that changes numbers every time you buy a new one. Without an Elastic IP, your server is like having a temporary phone—every time you turn it off and on, you get a new number and have to tell all your friends the new digits. An Elastic IP is like getting a proper phone plan with a number that’s yours to keep—people can always reach you at the same number, even if you switch to a new phone.

Another example is like the difference between having a PO Box at the post office versus receiving mail at whatever Airbnb you’re staying at this week. The PO Box (Elastic IP) stays the same no matter where you’re actually living.

Let’s say you have an EC2. Without an Elastic IP, here’s what happens:

Server restart → New random IP → Broken connections
Old IP: 34.567.890.123
New IP: 52.234.567.890  ← Everything breaks!

Here’s what it looks like with an Elastic IP.

Server restart → Same Elastic IP → Everything still works
Permanent IP: 54.123.456.789  ← Always works!

Reasons to use an Elastic IP

You don’t always need an Elastic IP – but sometimes you do. Here’s when.

Consistent contact point

Imagine you’re running a pizza shop, but your phone number changes every week. The same concept applies to an EC2 server. Without an Elastic IP your single EC2 cannot be accessed consistently over the internet. If you were running a pizza shop, you’d get a business phone line so customers could always reach you. With an EC2, you would assign it an Elastic IP and then you (and others) can always access it at the same address.

Trusted Sender

An EC2 doesn’t just contain information others want, it also sends information back. Let’s say you’re sending out wedding invitations, but each one has a different return address. Your invitees might start to compare and find the different return addresses suspicious. The same is true for an EC2 – maintaining a consistent address builds trust in your server and what it contains over time. A concrete example of this is how email servers maintain reputation scores—a fixed IP builds trust over time

Regular Meeting Place

Imagine a book club that meets at a different coffee shop every week. Members would constantly need to check where the next meeting is, and some might show up at the wrong location. The same confusion happens when applications try to connect to a database server that keeps changing its address. With an Elastic IP, it’s like choosing one permanent coffee shop—everyone always knows where to go. In technical terms, your database connection strings can use the same IP address consistently, preventing connection failures and configuration headaches.

VIP Access List

Think of a gated community that only allows specific license plates through the gate. If your license plate number changed every day, you’d have to constantly update your registration with security. The same principle applies to corporate security—many companies use firewalls that only allow connections from pre-approved IP addresses. Without an Elastic IP, you’d need to constantly update these whitelist rules every time your server restarts. With an Elastic IP, you register once and maintain permanent access, just like having a permanent license plate that security always recognizes.

How Elastic IPs Work

The magic behind the scenes:

  1. Request an Elastic IP - AWS reserves a public IP address just for you
  2. Attach to your server - Associate the IP with your EC2 instance
  3. Server gets new address - Your instance now uses this permanent IP
  4. Move between servers - Detach and reattach to different instances instantly

Important: You can only attach an Elastic IP to one server at a time, but you can quickly move it between servers if needed.

Elastic IPs are free ONLY when attached to a running server.

You pay when:

  • Elastic IP is not attached to any server
  • Elastic IP is attached to a stopped server
  • You have multiple Elastic IPs on the same server Best practice: Always release Elastic IPs you’re not using to avoid charges.

Snapshots: Backups for Your Server Storage

Think of snapshots like saving your progress in a video game. You know that feeling when you’re about to face a difficult boss or make a risky decision? You save your game first, right? That way, if things go wrong, you can reload from that save point and try again. AWS snapshots work the same way—they’re save points for your server that you can return to if something goes wrong.

It’s also like taking a photo of how you arranged your living room before moving all the furniture around. If the new arrangement doesn’t work out, you can look at the photo and put everything back exactly as it was.

Why Use Snapshots?

Backup and Recovery

Imagine accidentally deleting all your family photos from your phone—years of memories gone in a moment. The same devastating loss can happen to your server when hardware fails or data gets corrupted. Just like backing up your photos to the cloud, snapshots create recovery points for your server. If your database crashes or critical files get corrupted, you can restore from yesterday’s snapshot and get everything back exactly as it was, preventing potential business disasters and data loss.

Before Major Changes

Think about remodeling your kitchen—you’re excited about the new design, but what if you hate it once it’s done? Smart homeowners take photos of the current layout before tearing anything down. The same principle applies when updating your server software or making configuration changes. Before deploying that new application version or updating your database, take a snapshot. If the update breaks something or causes performance issues, you can quickly roll back to the working state instead of spending hours troubleshooting.

Creating Templates

Picture needing to set up 10 identical kids’ birthday gift bags—you could do each one from scratch, or you could make one perfect bag and then copy exactly what’s inside for the others. The same efficiency applies to servers. When you need multiple identical servers, you can configure one perfectly, take a snapshot, and then create new servers from that snapshot. This is especially powerful for creating custom AMIs (server templates) that include all your applications pre-installed, eliminating the need for lengthy setup scripts on each new server.

Safe Experimentation

Consider wanting to try a dramatic new haircut but being worried you’ll hate it—you might try it with a photo app first to see how it looks before committing. Similarly, when you want to test new configurations or experimental features on your production server, snapshots provide a safety net. You can take a snapshot, make your risky changes, and if something goes wrong, restore back to the working state. This allows you to experiment confidently without fear of breaking your production environment.

How Snapshots Work

The process behind the scenes:

  1. Point-in-time capture - AWS copies the current state of your storage
  2. Incremental backups - Only changes since last snapshot are stored (saves space and money)
  3. Durable storage - Snapshots are stored separately from your server for safety
  4. Instant availability - Create new volumes or servers from snapshots anytime

Creating Custom Server Images (AMIs)

One powerful use of snapshots is creating your own custom AMI (Amazon Machine Image) - essentially a pre-configured server template.

The process:

  1. Configure your server - Install all software, configure settings perfectly
  2. Take a snapshot - Capture the entire configured server
  3. Create AMI - Turn the snapshot into a reusable server template
  4. Launch copies - Create new servers instantly with all your configurations

Real-world example:

Start with basic server 
↓
Install web server + database + your application
↓ 
Configure everything perfectly
↓
Take snapshot and create AMI
↓
Launch 10 identical servers in minutes (no more setup needed!)

This eliminates the need for user data scripts since everything is pre-installed.

Tags: Organizing Your Cloud Resources

Think of tags like the labels you’d use to organize storage boxes in your attic. You might have boxes labeled “Christmas Decorations,” “Kids’ Old Toys,” “Tax Documents 2020,” and “Grandma’s China.” Without these labels, you’d have to open every single box to find what you need. AWS tags work the same way—they’re the labels on your digital storage boxes that help you instantly know what’s inside, when it was created, and who it belongs to.

It’s like organizing your photo collection. Instead of having thousands of unnamed photos, you create albums: “Summer Vacation 2023,” “Emma’s Birthday,” “Family Reunion.” Tags in AWS let you organize your cloud resources the same way you’d organize photos—by project, purpose, date, or any other category that makes sense to you.

Why Use Tags?

Organization and Management

Imagine having 50 storage units but forgetting what’s in each one—you’d waste hours opening every unit to find your Christmas lights. The same frustration happens when you have dozens of cloud resources without proper labels. When your AWS bill shows 30 different servers and you need to figure out which one is causing performance issues, tags become essential. By labeling each resource clearly with tags like “Environment: Production” or “Application: WebStore,” you can instantly filter and find exactly what you need instead of checking each resource individually.

Cost Tracking

Think about getting a $2,000 credit card bill with no item details—just one big number with no breakdown of where the money went. Without tags, your AWS bill looks exactly the same: a large total with no insight into which projects or departments are driving costs. When you tag resources by category like “Project: MobileApp” or “Department: Marketing,” AWS Cost Explorer can show you that the mobile app project cost $300 this month while the marketing website only cost $150, enabling informed budgeting decisions.

Security and Access Control

Picture an office building where everyone has the same master key to every room—complete chaos from a security perspective. Tags enable you to create granular access controls, like giving the cleaning crew keys only to rooms tagged “Common Areas” while restricting access to “Executive Offices.” In AWS, you can create policies that automatically grant developers access only to resources tagged “Environment: Development” while keeping them away from production systems, maintaining security without micromanaging permissions.

Automation

Consider a large garden where you need to water only the vegetable garden daily, but the flowers only weekly. Without markers, you’d have to remember every plant’s watering schedule. Tags work like colored markers—you can set up automated systems that operate only on tagged resources. For example, your backup system can automatically snapshot all volumes tagged “BackupSchedule: Daily” while leaving temporary development volumes alone, ensuring critical data is protected without wasting resources on unnecessary backups.

Common Tag Strategies

Essential Tags for Every Resource

There are some tags that are pretty common across organizations, in one form or another.

Environment Tag

  • Key: Environment, Values: Production, Development, Staging, Testing
  • Purpose: Separate resources by deployment stage

Owner/Team Tags

  • Key: Owner, Value: john.smith@company.com
  • Key: Team, Value: Backend-Engineering
  • Purpose: Know who to contact about each resource

Application Tags

  • Key: Application, Value: E-commerce-Website
  • Key: Component, Value: Web-Server
  • Purpose: Group related resources together

Cost Tracking Tags

  • Key: Project, Value: Customer-Portal-Redesign
  • Key: Department, Value: Marketing
  • Key: CostCenter, Value: MKTG-2024-001
  • Purpose: Track spending by project and department

Tag Naming Best Practices

There are also some best practices to follow when tagging resources.

Use Consistent Naming

Maintain consistent tags across all AWS resources. If you tag an EC2 with Environment = Production, do not then tag another EC2 with env = prod.

Use Descriptive Values

Ensure others understand your tags. Avoid too much shorthand, such as owner = plt-tm. Instead, you would tag owner = platform-team

Plan for Automation

Eventually, you will use tags to automate all sorts of things! To this end, avoid complex tags, ie: Notes = "backup this server every day". Instead, you could tag like this: BackupSchedule = daily.

Troubleshooting Common Issues

EBS Volume Not Visible in OS

Problem: Attached EBS volume doesn’t show up in your server Solution:

  1. Check volume is “in-use” in AWS console
  2. Use lsblk to see if device is detected
  3. May need to format and mount the volume first

Elastic IP Not Working After Assignment

Problem: Server unreachable after assigning Elastic IP Solution:

  1. Check security groups allow inbound traffic
  2. Verify server is running (not stopped)
  3. Confirm Elastic IP is associated with correct instance

Tags Not Showing in Cost Reports

Problem: Resource costs not categorized by tags Solution:

  1. Activate cost allocation tags in AWS Billing console
  2. Wait 24 hours for tags to appear in reports
  3. Ensure tags are applied before resources incur costs

What You’ve Accomplished

Mastered EC2 storage options - Know how to add extra storage with EBS volumes
Understood networking essentials - Elastic IPs for permanent addresses
Learned backup strategies - Snapshots for disaster recovery and templates
Gained organization skills - Tags for cost tracking and resource management

You now have all the essential tools to build robust, well-organized cloud infrastructure!

Interactive Practice

Test your understanding with these quick exercises!

Practice 1: Storage Type Selection

Scenario: You’re running a database server that stores 500GB of customer data. You need reliable storage with regular backups.

Which storage approach would you choose?

  • A) Use instance store for speed
  • B) Use a large EBS volume with daily snapshots
  • C) Store everything in the root volume



Practice 2: Elastic IP Use Case

Scenario: You have a simple personal blog running on one server. You restart the server occasionally for updates.

Do you need an Elastic IP?

  • A) Yes, absolutely necessary
  • B) No, not needed for this use case
  • C) Only if the blog gets popular



Practice 3: Tagging Strategy

Scenario: You work for a company with Development, Staging, and Production environments across 3 projects.

Name 3 essential tags you’d use:



Practice 4: Snapshot Strategy

Scenario: You’re running a database server that gets updated every day with critical customer data.

How often should you take snapshots?

  • A) Once a month
  • B) Once a week
  • C) Daily before any updates
  • D) Only when problems occur



Next Steps

Ready to dive deeper into AWS?

Pro Tip: The concepts you’ve learned here—storage, networking, organization, and backups—are fundamental to all cloud computing. These skills apply whether you’re working with AWS, Azure, Google Cloud, or any other platform!