This course was recorded and produced by Total Seminars. We're pleased to host this training in our library.
Skill Level Intermediate
one of the key logical constructional components in AWS, and that's called the Virtual Private Cloud, or VPC. Now, the Virtual Private Cloud is something that is very important to understand because it can be confusing to people when they first begin to look at it. So the first thing we're going to do is kind of clear up some of those misconceptions First of all, this is not your mamma's Microsoft VPC. So you may have heard of Microsoft VPC. It stood for Microsoft Virtual PC, way back in the late '90s it first came out and it was available throughout the first part of the last decade of this millennium, and the reality is that it's not what we're talking about at all. So this is that problem you get into when you've learned one acronym and you have to find out later on it means something different. So we're not talking about a Virtual PC, we're talking about a Virtual Private Cloud. Now, I like to define that word virtual or virtually. To me, the word virtually, and followed by private or anything else, means not really private or anything else. Let's think about it. You're on your way to grandma's house, you're five years old, the trip seems to be taking forever, and you say to your parents, "Are we there yet?" and they say, "Well, we're virtually there," and what that means is we're not really there. Or if someone says this is virtually the only place in the country where you can buy this product. It means it's not the only place in the country where you can buy the product otherwise they would have said this is the only place. So virtually, replace it with not really, and you kind of get right to the core of the way things really are. So a virtual machine is not really a machine, it's a simulated or emulated machine within software. Virtual reality is not really reality, it's reality simulated in some way. And a Virtual Private Cloud is not really a private cloud, it's the public cloud in AWS but with security around it. To give you virtual privacy. So that's the way to think about it. It is like a personal data center in the cloud. So it's like taking your data center with all your different servers, all your different storage units, everything that you would have in your data center, put that all up in the cloud as virtual things, and you have a Virtual Private Cloud. You can have VPN connections to the VPC so that you can access this VPC from within your own local data center or from your local computers. So, the VPC is a virtually private cloud, stands for Virtual Private Cloud, but just remember not really private, it's on the Internet, but it's protected with security. Now, what does it really provide to us? Well, applications run in the VPC or on-premises. So we can have applications that we run on our local servers or that we run on our local work stations or laptops that talk to the Virtual Private Cloud, they talk to our application logic that's in the cloud and utilize the application logic from there. We can create subnets within the VPC as well. So just like on your local network you can have different subnets so you can have 192.168.1.x be one subnet, and 192.168.2.x be another subnet. You can do that same kind of thing within the VPC. You have both public subnets and private subnets. Public subnets are subnets that you might think of like your DMZ in the old days on your local network, where that demilitarized zone, or DMZ, had servers like web servers and email servers and things that needed to be public-facing. And then you have your private subnet where it's just your internal stuff. The only things that are there are things that only people on the inside need access to, or, that you control access to from the public side. So that is to say maybe the web server on the public side needs access to a database server on the private side, but it's got to go through some secure channel in order to make that happen. So you have public subnets and you have private subnets. Now what you can do is you can use Direct Connect to provide connections between VPCs so that resources from one VPC can be used in the other VPC and vice versa. Now in order to set that up you have to have owners involved at both ends of this connection and we'll talk more about that a little later on when we get into VPC peering in more detail. Now the other thing to keep in mind is that you can create endpoints within the VPC. I want to reiterate VPC is a logical construct because this gets really confusing, we're not talking about a single machine or instance or anything like that now. We're talking about a logical construct that is the entire Virtual Private Cloud network, and you can have endpoints in the VPC that are used to connect to Amazon resources. Those endpoints can be controlled by policies. So for example, one endpoint can connect to one resource, like AWS Glacier, and another endpoint can connect to a another resource like Amazon S3. So you have the option of interconnecting your VPCs with outside Amazon-managed services, that aren't technically in the VPC, because the VPC is about instances, and it's about EBS volumes and things that are inside of the VPC. Whereas your S3 buckets, they're really not technically in the VPC. And your Glacier store is not technically in the VPC, but an endpoint can get you connection to those services. So here's yet another term in AWS that can be confusing. We're used to the term endpoint meaning some device on the network. I could say my laptop is an endpoint. We could also call it a node, those were two common terms we used for that device. We could say that a server was an endpoint. Why, because it was the end point of a connection chain through the network from a client to a server. So the old way of thinking of an endpoint is some device at the end of a link. But now, an endpoint is instead an endpoint for the service. It's kind of like a jumping off point or a termination point depending on the direction you're thinking of it by which we connect to a service. So don't let the old use of the term endpoint confuse you about how AWS is using it now. Now it's very important to know there is a default Virtual Private Cloud. Every time you create an AWS account, as soon as you've created it, even a free tier account you have a default VPC. And each instance that you create, remember an instance is a virtual server, each instance that you create is created by default in the default VPC. So there's one in each region that's built for you. That way as you deploy things in a region you have a Virtual Private Cloud in that region, and Amazon recommends never deleting it. Even if you decide not to use it, they recommend not deleting the default VPC because there's some configuration elements that hook into it and so forth. So you might immediately start creating your own Virtual Private Clouds that you're going to really use for everything you're building in AWS but you still shouldn't delete the default VPC. Now there are features within the VPC that you need to know about, like dynamic private IPs and public IPs. So you have the ability to have dynamic IPs generated for all the instances within that VPC. You can have AWS-provisioned DNS names so all of these instances will have a provided DNS name for those devices so you don't have to remember their IP address. You also have private or public DNS names that can be used instead of AWS provision because the AWS-provisioned DNS names, honestly, aren't very human-friendly, and they can be challenging to use, so sometimes you want to create your own DNS names that are more human-friendly and easier to use. 'Cause it's a lot easier to get to myserver27-totalseminars.awsamazon.com than it is to get to a long string of numbers and some other character and then some more numbers and the same domain name. It's very cryptic and confusing. So using your own private and public DNS can really help to resolve a lot of that and give you an easier system to manage. As you can see, there's a lot to VPC, and we've really just begun our exploration of it. We're going to look at some of the details of these different components that we've talked about and see how you actually work with the Virtual Private Cloud in later episodes. (bright acoustic guitar music)