In this course, you will learn what the cloud is and why AWS is so big in the industry, learn to use the AWS dashboard with confidence, and become familiar with the key services EC2, RDS, S3, and Lambda.
To learn more about creating billing alarms check out, Review billing dashboard and set up a billing alarm to avoid paying too much for AWS - Tomasz Łakomy
Check out this documentation to set up the AWS CLI
Sam Julien: [0:00] Hey, everybody. Welcome to Cloud Infrastructure Fundamentals for Developers. I'm Sam Julien. Maybe you are interested in learning AWS because something's come up at work, and you need to figure out how to do it. Maybe you're trying to go get a certification for AWS. AWS is a great set of skills to learn.
[0:21] The Cloud market is at least $100 billion. This chart is a couple years old at the time I'm recording this, but it's at least $100 billion industry, and AWS is at the top. You can't go wrong learning AWS, whether you're doing it for work, or you're trying to get a certification, or you just want to grow as a developer or an engineer.
[0:43] The problem with AWS is that it's incredibly complicated. There's somewhere around 200 different services. When I was first getting started, anytime I would open up this Services menu, my eyes would glaze over, and I would have no clue where to get started.
[1:02] I wanted to make a course that I wish I had when I was first getting started learning AWS. This course is a little bit different than most AWS courses. Most courses either give you a conceptual overview, or they go really deep into building things.
[1:17] I wanted to do something a little bit different. What I'm going to do is like a river guided tour of the most common services that you're going to need in AWS as a developer and the core concepts that you need to understand the Cloud.
[1:32] I'm going to gently take you down the river and let you dip your toes into a few different things and just get a high-level understanding of AWS. We're going to cover some of the most common services that you'll run into as a developer like EC2, which is how you make servers.
[1:48] We'll talk about Lambda, which are serverless functions. We'll talk about relational databases with RDS. Then we'll also talk about S3 with static files and static websites. There are a couple of prerequisites that you're going to need for this course.
[2:07] The first one is just an AWS account and this is preferably a new account. The reason being that when you create a new account, you're automatically enrolled in the free tier. There's some parts of AWS that are always free.
[2:21] There's a certain number of Lambda calls and things like that you get forever always free. Then there are a number of things that are just free for the first 12 months, or they'll give you a certain number of hours a month that are free in your first year.
[2:36] EC2 is an example of this where you get a certain number of hours per month in your first year. When you're doing these tutorials, it makes a lot of sense to go ahead and create a brand new account. The other thing you're going to need is the AWS CLI. We're going to use that in a couple videos later on in the course. There are different instructions for your operating system.
[2:54] We're going to link to those in the notes under the video, but go ahead and install AWS CLI for your machine. Before we jump in, I just want to go over a couple of best practices to keep in mind when you're using AWS.
[3:07] AWS is like somebody handing you an incredibly powerful legendary sword and giving you no instructions on what to do with it. It's really easy to cause a lot of damage inadvertently. Let me give you a couple of pointers when you're getting started here.
[3:22] The first area that really trips people up is billing. AWS is not free. Even though there's a free tier, it's really easy to rack up a large bill really quickly. There's a few things you can do to keep yourself safe in that situation. The first thing you want to do is set up some billing alarms.
[3:41] Tamaj has a really great video on Egghead for how to do this. I'm not going to go through it in detail, but I'll tell you that what you're going to do is you're going to go to this service called Cloudwatch.
[3:52] In Cloudwatch, you can create an alarm that basically sends you an email when a certain amount has been forecasted for spending. In this screenshot, I'm basically having AWS send me an email if my projected costs are going to be five dollars or more in that month.
[4:09] That's super handy. Usually what happens is you set up some sort of resource as you're going through a tutorial and then you intend to come back to it later. Then of course, life gets in the way and you forget about it. These budget alarms can really help you with that.
[4:23] Speaking of leaving something and forgetting about it. Go ahead and get into the habit of cleaning up resources when you're done with them. You're going to be tempted to say, "I'm going to come back to this later and I promise I'll shut it down later."
[4:37] Chances are that's not really going to happen. You don't need to clean it up every single thing you do, but there are some things that bill by the hour such as EC2 and RDS and things like that.
[4:47] You're going to want to just get in the habit of going ahead and shutting those down and terminating them after you're done with whatever tutorial you're going through. I already mentioned using a Sandbox account for yourself.
[4:58] Don't do these tutorials in your work account or an account that's running some sort of other production site or something like that. It's really easy to get yourself into trouble in AWS if you're not careful. Just create a brand new fresh account in the free plan and have at it.
[5:16] The other area that really trips people up is identity and access management in AWS. First and foremost, set up multi-factor authentication. Luckily, when you log into AWS and you go to the IAM section, you're going to get something that looks like this that's going to remind you to enable multi-factor authentication.
[5:36] The UI sometimes looks a little different as time goes on, so it may not look exactly like this. Generally, they're going to be really good at reminding you to enable multi-factor authentication. Before we wrap up here, I want to give you an idea of what to expect from this course and the top takeaways that I'm hoping for you in this course.
[5:54] The first thing is the big AWS concepts for developers. I want you to understand why you use AWS, what it's for, what is the Cloud, and why it's such a big industry. I also want to give you a high-level overview of some of the key AWS services you're going to encounter as a developer.
[6:11] For example, if somebody at work were to say to you, "Hey, I need you to spin up a new server on AWS," I want you to think, "Oh, server? OK, that means EC2. I'm going to go look at how to set up an EC2 server instance."
[6:25] Then, lastly, I want to get you a little bit of practice with the dashboard. I found the dashboard to be extremely overwhelming. Like I said, there's like 200 different services. I want to give you a guided path for just getting to know the AWS dashboard and understand how it works and where you're going to find things.
[6:44] With that in mind, let's go ahead and jump in and get started. I'm looking forward to helping you dip your toes into the AWS river.
Member comments are a way for members to communicate, interact, and ask questions about a lesson.
The instructor or someone from the community might respond to your question Here are a few basic guidelines to commenting on egghead.io
Be on-Topic
Comments are for discussing a lesson. If you're having a general issue with the website functionality, please contact us at support@egghead.io.
Avoid meta-discussion
Code Problems?
Should be accompanied by code! Codesandbox or Stackblitz provide a way to share code and discuss it in context
Details and Context
Vague question? Vague answer. Any details and context you can provide will lure more interesting answers!