AWS networking shares a lot in common with the way you run things locally; we’ll discuss some differences.
In this article, I’m going to break AWS networking down to its basic building blocks to offer some big-picture insight. By the way, you might enjoy Cloud Academy’s course on VPCs and AWS networking.
The following are what I believe the main network-oriented services on AWS:
- Amazon Virtual Private Clouds (VPCs) let you launch AWS resources into virtual, isolated networks defined to perfectly fit your needs.
- AWS Direct Connect links your local network to your AWS resources through an AWS Direct Connect location over a standard 1 gigabit or 10 gigabit Ethernet fiber-optic cable.
- Amazon Route 53 provides a highly available and scalable Domain Name System (DNS) web service.
AWS Networking: Virtual Private Cloud (VPC)
Here’s their definition:
Amazon Virtual Private Cloud (Amazon VPC) enables you to launch Amazon Web Services (AWS) resources into a virtual network that you’ve defined. This virtual network closely resembles a traditional network that you’d operate in your own data center, with the benefits of using the scalable infrastructure of AWS.
So if you’re already familiar with networking, you are in luck: AWS networking’s use of virtual networks closely resembles a traditional network that you’d operate in your own data center. but even if you’re still a bit new to the scene, you can hopefully still pick up some important basics.
How is AWS VPC Networking different?
1. AWS Networking Configurations
Assuming you have an AWS account you should already have a configured VPC waiting for you. If you’d like to roll your own, open your VPC dashboard an select “Start VPC Wizard” you will see these four choices:
- VPC with a Single Public Subnet.
- VPC with Public and Private Subnets.
- VPC with Public and Private Subnets and Hardware VPN Access.
- VPC with a Private Subnet Only and Hardware VPN Access.
For the time being forget about the last two – which involve connecting to an external VPN – and concentrate on numbers one and two.
In a VPC with a Single Public Subnet, your instances run in a private, isolated section of the AWS cloud with direct access to the Internet. Network Access Control Lists and Security Groups can be used to provide close control over inbound and outbound network traffic to your instances.
In a VPC with Public and Private Subnets, besides a public subnet, this configuration adds a private subnet whose instances are not addressable from the Internet. Instances in the private subnet can establish outbound connections to the Internet via the public subnet using Network Address Translation (NAT).
So subnets come in two flavors, public and private. Here’s how they work:
- If a subnet’s traffic is routed to an Internet gateway, the subnet is known as a public subnet.
- If a subnet doesn’t have a route to the Internet gateway, the subnet is known as a private subnet.
Some other things to know about subnets:
- A Subnet lives within a VPC and within a single Availability Zone
- You can have multiple Subnets within a VPC that live in different Availability Zones
3. Regions and Availability Zones
AWS regions are completely isolated from each other. To reduce network traffic latency, it is usually best to choose a region that’s geographically close to you or your resources. While each AWS region is isolated, there are multiple Availability Zones within a region that are connected to each other via low-latency links.
4. Security Groups and NACLs
While Network Access Control Lists and Security groups both exist to control network traffic, their main difference is that ACLs act as a firewall for controlling traffic into and out of subnets, while security groups provide security at the instance level.
5. Internet Gateways
When you launch a VPC, by default, an Internet Gateway (IGW) will be created and attached. As you can probably guess, this serves to connect resources within a VPC to the Internet. Now, since the Internet is where all the bad guys live, make sure you’ve locked all the doors that need locking.
Hint: If you are setting up an instance, configure your security group to allow only the minimum possible amount of incoming traffic – which is probably SSH (port 22) set to allow access only from your own IP. You can open other ports as needed later on.
6. Route Tables
Route tables direct network traffic between instances inside a subnet. If you need resources within different subnets to be able to talk to each other, then you will definitely need to understand route tables.
AWS Direct Connect
You are probably not going to need AWS Direct Connect unless you are planning on building significant infrastructure on AWS. Nevertheless, it is an important AWS networking concept. In a nutshell, AWS Direct Connect links a local network to your AWS resources through a dedicated connection to an AWS Direct Connect physical location (generally, a third party provider) over a standard 1 gigabit or 10 gigabit Ethernet fiber-optic cable.
Amazon Route 53
If you want your users to find you, you’ll need DNS routing. The AWS networking solution to that problem is Route 53, which offers highly available and scalable Domain Name System, domain name registration, and health-checking web services. It provides services, unlike other DNS providers, but with some nice extras like:
- Health checks and DNS failover. There’s nothing like users successfully finding their way to your web app…only to discover that the server is down. Route53 can make your applications highly available and resilient to failure by keeping a careful watch on their status. If your applications are deployed in multiple availability zones within multiple AWS regions, Route 53 can perform health checks against each endpoint, allowing your clients to invisibly switch between servers without even noticing that there was a problem.
- Routing Decisions are based on…
– Health check status
– WRR (weighted round robin),
– LBR (latency-based routing)
– Geolocation routing.
- Aliasing is another special feature Route 53 that is unique to AWS.
AWS Networking is not quite the same as “old world” networking, but where it’s different, it’s usually a good thing. Here’s a summary of what we discussed:
VPC (Virtual Private Cloud)
– Different Configurations for your Network
– Regions and Availability Zones
– Security Groups and NACLs
– Internet Gateways
– Route Tables
AWS Direct Connect
Amazon Route 53
– Health checks and DNS failover
– Routing Decision Making
Advantages and Disadvantages of Microservices Architecture
What are microservices? Let's start our discussion by setting a foundation of what microservices are. Microservices are a way of breaking large software projects into loosely coupled modules, which communicate with each other through simple Application Programming Interfaces (APIs). ...
Kubernetes Services: AWS vs. Azure vs. Google Cloud
Kubernetes is a popular open-source container orchestration platform that allows us to deploy and manage multi-container applications at scale. Businesses are rapidly adopting this revolutionary technology to modernize their applications. Cloud service providers — such as Amazon Web Ser...
AWS Internet of Things (IoT): The 3 Services You Need to Know
The Internet of Things (IoT) embeds technology into any physical thing to enable never-before-seen levels of connectivity. IoT is revolutionizing industries and creating many new market opportunities. Cloud services play an important role in enabling deployment of IoT solutions that min...
Which Certifications Should I Get?
As we mentioned in an earlier post, the old AWS slogan, “Cloud is the new normal” is indeed a reality today. Really, cloud has been the new normal for a while now and getting credentials has become an increasingly effective way to quickly showcase your abilities to recruiters and compan...
How to Go Serverless Like a Pro
So, no servers? Yeah, I checked and there are definitely no servers. Well...the cloud service providers do need servers to host and run the code, but we don’t have to worry about it. Which operating system to use, how and when to run the instances, the scalability, and all the arch...
AWS Security: Bastion Hosts, NAT instances and VPC Peering
Effective security requires close control over your data and resources. Bastion hosts, NAT instances, and VPC peering can help you secure your AWS infrastructure. Welcome to part four of my AWS Security overview. In part three, we looked at network security at the subnet level. This ti...
Top 13 Amazon Virtual Private Cloud (VPC) Best Practices
Amazon Virtual Private Cloud (VPC) brings a host of advantages to the table, including static private IP addresses, Elastic Network Interfaces, secure bastion host setup, DHCP options, Advanced Network Access Control, predictable internal IP ranges, VPN connectivity, movement of interna...
Big Changes to the AWS Certification Exams
With AWS re:Invent 2019 just around the corner, we can expect some early announcements to trickle through with upcoming features and services. However, AWS has just announced some big changes to their certification exams. So what’s changing and what’s new? There is a brand NEW ...
New on Cloud Academy: ITIL® 4, Microsoft 365 Tenant, Jenkins, TOGAF® 9.1, and more
At Cloud Academy, we're always striving to make improvements to our training platform. Based on your feedback, we released some new features to help make it easier for you to continue studying. These new features allow you to: Remove content from “Continue Studying” section Disc...
AWS Security Groups: Instance Level Security
Instance security requires that you fully understand AWS security groups, along with patching responsibility, key pairs, and various tenancy options. As a precursor to this post, you should have a thorough understanding of the AWS Shared Responsibility Model before moving onto discussi...
Cloud Migration Risks & Benefits
If you’re like most businesses, you already have at least one workload running in the cloud. However, that doesn’t mean that cloud migration is right for everyone. While cloud environments are generally scalable, reliable, and highly available, those won’t be the only considerations dri...
Real-Time Application Monitoring with Amazon Kinesis
Amazon Kinesis is a real-time data streaming service that makes it easy to collect, process, and analyze data so you can get quick insights and react as fast as possible to new information. With Amazon Kinesis you can ingest real-time data such as application logs, website clickstre...