US $19.97

Managing EC2 and VPC: AWS with Python and Boto3 Series

——   Created by Niyazi Erdoğan

Learn how to implement EC2 and VPC resources on AWS using Python API - Boto3! Implement your infrastructure with code!

Share this course:

4h 31m
Lesson time
Skill level

More about this course

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 that 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 Iteach 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!

Who this course is for:
  • Beginners on AWS who wants to put their theory in practice
  • AWS Cloud Architect Associate Exam Preppers who wants to practice their theories with real projects
  • Who wants to learn how to implement Infrastructure-as-a-Code or IaaS on AWS
  • Who wants to learn how to develop infrastructures on AWS using Python
  • Who wants to learn how to launch Virtual Private Clouds, Public-Private Subnets and more with Python code on AWS
  • Who wants to learn how to launch EC2 Instances publicly and privately using Python on AWS
  • Who wants to learn AWS Python API or namely Boto3

60 Lessons

2 mins
free preview
3 mins
About This Course
free preview
6 mins
What We Will Build In This Course
free preview
5 mins
What Do You Need For This Course?
free preview
Preparing The Environment for Development
4 mins
Section Overview
free preview
5 mins
About Tools and Environment
10 mins
Create an AWS Account If You Don't Already Have It!
10 mins
Logging in to AWS Console and A Walkthrough
12 mins
Let's Create Our AWS Credentials!
Windows Environment Setup
3 mins
Installing Python 3 and Pip
5 mins
Installing AWS SDK (CLI)
3 mins
Preparing CLI with AWS Credentials
View more lessons +

About the instructor

It you!

Hi, I'm Niyazi Erdoğan. I'm a software engineer and AWS Certified Solutions Architect with over ten years of experience in various fields. I'm living in one of the …

Read more
This course is included in Arbington Premium
$15/month gets you access to every course. Start your 14 day trial today. ☝️

Class benefits

  • Certificate of Completion
  • 30 day satisfaction guarantee
  • 24/7 streaming access
  • Direct teacher access
  • 4h 31m of on-demand video
  • 2 downloadable files
  • Have a coupon?
  • Checkout