This course has been updated! We now recommend you take the Full Stack for Front-End Engineers, v3 course.
Transcript from the "VPS & Cloud Computing" Lesson
[00:00:00]
>> Jem Young: So, we made a public key authentication. Let's talk about the blank slate, the tabula rasa of engineering. And that's servers. A server is, well it's anything you want it to be. A server's just a dumb box and it has no purpose or intent when you first start.
[00:00:21] A server can be a web server, they serve out HTML files. It could be a database server that you only connect to to serve MySQL or Postgres or Mongo. It could just be a dumb storage server that you use to upload all your cat pictures to. A server doesn't do anything until you give it some sort of purpose, and that's the great thing about a server, it can be anything.
[00:00:42] Sorry, that's my passionate, passionate speech on servers. I know we talked about SSH, and I just jumped to servers. We're gonna use the SSH key later to get into a server. But, we're gonna build a server and then we're gonna use the SSH key to get into the server.
[00:01:00] So there's two main types of servers. There's a dedicated server, and that's something where I own the box, the box sitting in the backroom, or something. I can plug into that, I can take parts out, that's a dedicated server, it's only your machine. Or there's a VPS, a virtual private server.
[00:01:19] So a dedicated server if you wanted to look at a decent analogy. That's what a dedicated server look, you own the entire machine. You own all 8, 16 cores, you own everything from top to bottom. But most of the time we don't do that because a server is extremely expensive, thousands of dollars.
[00:01:34] So we use something called a VPS. A VPS takes a dedicated server and just breaks it up into chunks that we can all use. So we're all going to use a VPS today. So that means there's a server somewhere, we're all just taking a little bit of chunk.
[00:01:45] We're taking a core and two gigs of memory a piece. And the invention of the VPS was so fantastic, because before, if I wanted a server, I needed to buy a dedicated server. So like, a Xeon processor and spend thousands of dollars. Plug it in somewhere, hook up the DNS, do all of this other sort of terrible, terrible mess.
[00:02:06] But with a VPS I can just hook it to the cloud and I just get a little chunk of the server. And if I need a little bit more, I can buy a little bit more server time. I can buy a little bit more, a little bit more, it's very, very scalable.
[00:02:18] So we understand what a VPS is and a dedicated server. This essentially what most internet services look like and this is colloquially known as the Cloud. So when someone says cloud computing, this is what they mean. It just means you're buying a chunk of a server somewhere, and you buy a bunch of them than you tie that up as a service, and that's cloud computing.
[00:02:42] That's it, nothing fancy. I mention it because I think there's a survey, maybe 30, no it's like 2 years ago, it wasn't that long ago. And they asked adults like 18 to 35 if it rains does the cloud performance get bad? And I think like 60% of people said yes, because they don't understand cloud computing.
[00:03:05] It's such a buzz word. This is all cloud computing is. Just a bunch of servers somewhere. They could be in Singapore, it could be in Russia. It could be in China, could be in United States in Virginia where AWS is, the main one. That's all cloud computing is.
[00:03:22] So, I don't like buzz words so I won't use cloud anymore. The advantages of the cloud are, well I said I wouldn't use it. The advantage of VPSs are they're flexible. I can make one server, I can make ten servers just as easy. They're scalable, so if I say, man I need more memory.
[00:03:41] I can just increase the memory, I can just increase the allocation. Of course there's a maximum limit on VPS, so the maximum limit is of course the size of that server. I can't make my VPS bigger than the server that it's on. But, and it's on demand as well.
[00:03:59] That's the advantage of a VPS is that, when I'm done today, I'm probably gonna turn off my server so I don't have to pay for it anymore. And that's what's great versus owning your own server that you have to maintain and do all these other things. I can use it on demand.
[00:04:13] Yeah, cloud computing is such a boon. We wouldn't be where we are today without things like this. The main providers that you've probably heard of for VPSs are AWS, that's Amazon's big offering. Rackspace, another big one, and Digital Ocean. Digital Ocean is the one we're gonna be using today.
[00:04:33] I use AWS on jemyoung.com. But AWS is very advanced, it's extremely powerful. It's what Netflix runs on. We're the biggest users of AWS. And, thousands and thousands and thousands and thousands of servers. But it's, I wouldn't say AWS is friendly to beginners whatsoever. [LAUGH] Yeah, anybody who's used AWS knows what I'm talking about.
[00:04:57] Digital Ocean I find fantastic, it is such a clean user interface, and it's really, really easy to get started. And It's just fantastic to use. Sponsored by Digital Ocean.
>> Speaker 2: Yeah, exactly.
>> Jem Young: No.
>> Speaker 2: [LAUGH] Now we're gonna fleece them down for some cash after this workshop.
>> Jem Young: You should.
[00:05:16]
>> Speaker 2: Maybe they could give members some DO credit or something.
>> Jem Young: Yeah, I should've emailed them.
>> Speaker 3: I'm pretty sure Digital Ocean gives out free credit for students cuz there's a Github pack I think they're a part of.
>> Speaker 3: So I think they would probably be down for that honestly.
[00:05:31]
>> Jem Young: We should, maybe closer to lunch we'll see if we can hook ourselves up. But regardless, Digital Ocean, for a VPS, the smallest one is only $5 a month. And since we're only gonna use it for maybe a few hours it's gonna be a couple cents and that's that's what's fantastic about building a scalable, on-demand system.