Course Overview

Do you want to learn how to implement VPC and EC2 resources with Python code on AWS? Do you want to launch EC2 Instances with Python code on AWS? Are you preparing for AWS Solutions Architect Associate Exam and want to put your theory and skills into practice with VPC and EC2? This is the course for you!

In this course, we’ll start by taking a look at the tools and the environment in which we need to work with AWS resources. We’ll be using Python 3 and as per the IDE I recommend you to use PyCharm from Jetbrains. It has a free community edition even!

After I teach you how you can set up your environment on both MacOS and Windows, we’ll create our credentials for AWS as being the AWS Access Key and AWS Secret Access Key for programmatic access to AWS resources. You’ll learn how you can set your AWS credentials globally on your computers using AWS CLI. Before jumping into the implementation, for one last tip, I’ll show you how you can have auto-complete capabilities on your PyCharm IDE with PyBoto3!

Once we’re ready with our environment setup, we’ll start implementing our solution on AWS! And remember we’ll do everything with Python code; not a single thing manually or by hand! We’ll start by creating a VPC. For our own VPC, we’ll provide CIDR IP Block to isolate our resources within that VPC.

Then we will create two subnets; Public and Private. Public Subnet will be where we will put our internet-facing resources like Public EC2 instances and we will definitely launch an EC2 instance in it! To achieve this, we will create an Internet Gateway or IGW and attach it to our VPC. But of course that is not enough. We will create a Route Table for public routes over the internet and also add our Internet Gateway to the Route Table to allow internet access to our Public EC2 Instance. We will also not forget to associate our Public Subnet with this Public Route table so it can be exclusively used by the Public Subnet and its subresources. And finally, we will modify our Public Subnet so it can automatically assign public IP addresses to the resources we will launch within this Public Subnet. That's the way we are going to achieve internet access to and from our Public EC2 Instance and again we will do all of that with our Python code!

Besides, we will create a Private Subnet for our internal resources like a Private EC2 Instance which will only be accessible through the Private or Public Subnet; not open to the world. To achieve this, we will associate our Default Route Table with our Private Subnet and then we will not add our Internet Gateway to this Route Table so it will basically not have any internet access. We will also not enable auto-assign public IP addresses on Private Subnet which is disabled by default. That's basically how we are going to disable internet traffic on our Private EC2 Instance again we will do all this with our Python code!

We will not stop there of course so before we launch our Public EC2 Instance, we will develop a startup bash script to automatically run when we launch our EC2 Instance. In this script, we will first update our packages with yum package manager so we can stay up-to-date with the latest updates and security patches. Then we will install a HTTP server on it and make sure it's working by a startup check command. After we prepare our HTTP server, we will develop a simple HTML page as as greeting and we will write this page to disk to be served when we try to access our Public EC2 Instance. And remember, we will again do all of this with our Python code!

After finishing up launching our EC2 Instances, we'll nove on to learn how to describe EC2 Instances on AWS in  detailed way; from their IP adresses to the subnet which they belong to. Then we'll learn how to learn how to manage EC2 Instances in various ways. We'll Stop, Start and Terminate EC2 Instances and again the best part is we will do all of that with our Python code!

Lots of information, hands-on practice and experience is waiting for you in this course on AWS. So, don't miss any more time and join me in this course to sharpen your skills on AWS using Python and Boto3!

What You Will Learn

  • You'll be able to implement any sort of infrastructure on AWS with Python using VPCs
  • Subnets and EC2s!
  • You'll learn how to code against AWS API using Python and Boto3!
  • You'll learn how to launch EC2 Instances on AWS using Python and Boto3!
  • You'll learn how to isolate and control your own infrastructure with Python using Route Tables
  • Internet Gateways
  • Security Groups and Rules!
  • You'll have very good understanding of VPC concepts like Subnets
  • Route Tables and Internet Gateways by putting all into real-world practice with Python code!
  • You'll be confident to work with AWS APIs using Python for any kind of AWS Resource on VPC and EC2 Instances!
  • You'll learn how to read and code against an API documentation!
  • You'll be able to launch your own infrastructure on AWS without even signing-in to AWS

Program Curriculum

  • What We Will Build in This Course?
  • What Do You Need for This Course?
  • $7 Million Cybersecurity Scholarship by EC-Council
  • Chapter 1 Quiz

  • Section Overview
  • About Tools and Environment
  • Create an AWS Account If You Don't Already Have It
  • Logging in to AWS Console and A Walkthrough
  • Let's Create Our AWS Credentials
  • Chapter 2 Quiz

  • Installing Python 3 and Pip
  • Installing AWS SDK (CLI)
  • Preparing CLI with AWS Credentials
  • Installing Boto3
  • Verifying the Setup
  • Chapter 3 Quiz

  • Installing Python 3 and Pip
  • Installing AWS SDK (CLI)
  • Preparing CLI with AWS Credentials
  • Installing Boto3
  • Verifying the Setup
  • Chapter 4 Quiz

  • Section Overview
  • Scenario: AWS Console Perspective of What We'll Build
  • Setting Up Our Project with PyCharm IDE
  • Let's Check Out Boto3 API Docs
  • [Tip] Auto-Complete Magic with Pyboto3 on PyCharm IDE
  • Creating a Virtual Private Cloud (VPC)
  • Adding Name Tag to An AWS Resource (VPC)
  • Create an Internet Gateway (IGW)
  • Attaching the Internet Gateway to VPC
  • Section Summary
  • Chapter 5 Quiz

  • Section Overview
  • Creating a Public Subnet
  • Creating a Route Table for Public Routes
  • Adding IGW Route to Route Table
  • Associating Public Subnet with Public Route Table
  • Allowing Auto-Assign Public IP Address on Subnet
  • Creating a Private Subnet
  • Section Summary
  • Chapter 6 Quiz

  • Section Overview
  • Scenario: AWS Console Perspective of What We'll Build
  • Creating a Key Pair
  • Creating a Security Group
  • Adding a Rule to Security Group
  • Creating a Startup Script for EC2 Instance
  • Launching an EC2 Instance Within Our Public Subnet
  • Launching an EC2 Instance Within Our Private Subnet
  • It's Time to Launch the Whole Infrastructure
  • Let's Check if Everything is Running on AWS Console
  • Connecting to EC2 Instance and Verifying Startup Script Works
  • Checking Public Access for Private EC2 Instance
  • Section Summary
  • Chapter 7 Quiz

  • Section Overview
  • Describing EC2 Instance
  • Modifying EC2 Instance
  • Stopping EC2 Instance
  • Starting EC2 Instance
  • Terminating EC2 Instance
  • Section Summary
  • Chapter 8 Quiz

  • What Have We Learned?
  • What Comes Next?
  • Thank You
Load more modules

Instructor

Niyazi Erdogan

Senior Software Engineer

Niyazi Erdogan is a software engineer and AWS Certified Solutions Architect with over ten years of experience in various fields. He is a both self-taught programmer and computer science graduate. His experience ranges from embedded development to server-side, client-side development technologies to cloud. Besides his day job, he really enjoys developing software with lots of different technologies. On the other hand, he does love to follow tech conferences and blogs about latest technologies and tools. He also likes to read books within or without his field of expertise and loves to watch series like Westworld and Game of Thrones. He also makes sure that he stays healthy with daily walking, running and workout.

Join over 1 Million professionals from the most renowned Companies in the world!

certificate

Empower Your Learning with Our Flexible Plans

Invest in your future with our flexible subscription plans. Whether you're just starting out or looking to enhance your expertise, there's a plan tailored to meet your needs. Gain access to in-demand skills and courses for your continuous learning needs.

Monthly Plans
Annual Plans
Save 20% with our annual plans!

Pro

Ideal for continuous learning, offering extensive resources with 600+ courses and diverse Learning Paths to enhance your skills.

$ 499.00
Billed annually or $59.00 billed monthly

What is included

  • 700+ Premium Short Courses
  • 50+ Structured Learning Paths
  • Validation of Completion with all courses and learning paths
  • New Courses added every month
Early Access Offer

Pro +

Experience immersive learning with Practice Labs, CTF Challenges, and exclusive EC-Council certifications for comprehensive skill-building.

$ 599.00
Billed annually or $69.00 billed monthly

Everything in Pro and

  • 800+ Practice Lab exercises with guided instructions
  • 150+ CTF Challenges with detailed walkthroughs
  • New Practice Labs and Challenges added every month
  • 3 Official EC-Council Essentials Certifications¹ (retails at $897!)
    Exclusive Bonus with Annual Plans

¹This plan includes Digital Forensics Essentials (DFE), Ethical Hacking Essentials (EHE), and Network Defense Essentials (NDE) certifications. No other EC-Council certifications are included.

Related Courses

1 of 8