In this course, we discuss how our services deployed to AWS communicate with each other. We cover what communication looks like when our services are in the same region and what communication looks like when our services are in different regions.
- Inter-regional communication patterns
- Intra-regional communication patterns
- Anyone working with AWS Networking
- Those studying for the AWS Networking Specialty certification
- Anyone studying for the AWS Solutions Architect certifications
- Anyone just looking to increase their AWS knowledge
- Before attending this course, you should already be familiar with AWS networking services such as VPCs and VPC peering
In this lecture, we will outline some of the options for inter and intraregional communication. Intraregional communication refers to traffic that stays within a region. Interregional communication refers to traffic that is sent between regions. Almost all services in AWS are regional services. This includes VPCs and resources you deploy to them. Because of this, we have some questions to consider. First, if we deploy resources for VPC, do these resources need access to the Internet, your offices, or resources of the regions?
Next, do we need to connect resources in different VPCs? If so, are those resources in the same or different regions? And do we need to access AWS services from the resources we have deployed to our VPCs? Answering these questions will help us determine the resources we need to deploy and configure to facilitate the correct communication. When you create a VPC in a region such as EU West 2 and create subnets in each of the availability zones in that region, resources deployed to them can communicate automatically. For example, two EC2 instances deployed to different subnets in different availability zones would have no trouble routing traffic to each other through the default route created when the VPC was created.
The traffic between these instances is encrypted and stays on the address backbone even when that traffic is traveling between data centers in the same region. If the resources you have deployed to your VPC need Internet access, we will need to deploy Internet gateways and perhaps NAT gateways. If the resources you've deployed to your VPC need to access your offices, we might use site-site VPNs or Direct Connects. Deploying all of our resources in a single VPC simplifies communication, but there are plenty of reasons why you might need to deploy resources to multiple VPCs. Reasons like isolation.
Resources might need to be isolated from each other. Using multiple VPCs for this, either VPC is in the same or different regions is ideal because by default communication isn't enabled between VPCs. Multi-region deployments. VPCs are regional, so if you need to deploy resources such as EC2 instances to multiple regions, then you will need multiple VPCs. If you need resources in each VPC to be able to communicate each other regardless of whether the VPC is in the same region or not, you will need to implement either VPC peering, transit gateway, or customer-managed site-to-site VPNs.
Of these, customer-managed site-to-site VPNs are the least desirable as they route traffic between the VPCs through the Internet. Whereas VPC peering and transit gateways keep all the traffic on the AWS backbone. One advantage of customer-managed site-to-site VPNs is that you can control the protocols that your connection uses for authentication, integrity checks, and encryption. When using VPC peering, you have no control of security protocols use to secure traffic. When using transit gateways, you must use IPSec.
It is desirable to keep as much traffic as possible on AWS's networks. When connecting multiple VPCs, VPC peering and transit gateway keep traffic on the AWS backbone. When traffic is traveling between your VPCs and AWS services such as S3 and DynamoDB, you can use the public endpoints of these services. But to keep your traffic on the AWS backbone and away from public networks, we can use VPC endpoints. Most organizations will use a mixture of these technologies for inter and intraregional communications, but to understand which technologies are correct for you, you will need to understand each technology in a bit more detail.
Mike has worked in IT since 1997, specializing in networking, storage, and architecture. He's been in cloud computing for the last 8 years, working across several cloud platforms but specializing in AWS. He's been involved in many cloud projects over the years covering migrations, hybrid connectivity, security optimization, networking, and storage architecture.
He gained his first training qualification in 1998 and, about 3 years ago, became an AWS Authorized Champion Instructor. He's delivered AWS cloud courses across Europe for a range of clients, with a focus on Architecture, Security, and Networking. He currently holds certifications for the four biggest cloud vendors, including the AWS Solutions Architect Professional, AWS DevOps Engineer, and AWS Advanced Networking specialty certifications.
He lives in the North of England with his wife Frances and their dog Inca.