DEV Community

Cover image for I took the AWS Cloud Practitioner Essentials course, and here's what I learned.
Bhuvi D
Bhuvi D

Posted on

I took the AWS Cloud Practitioner Essentials course, and here's what I learned.

I just completed the course titled 'AWS Cloud Practitioner Essentials' today.
Just wanted to share a few things I learned :)

(Note: This is a certificate of completion from AWS’s beginner-level course, not the Cloud Practitioner certification exam.)

Firstly, to give an overview of the course itself - it's a great course, it has this coffee shop metaphor, to explain the concept of setting up a business on AWS. Certainly made it easy for me, as I had zero prior knowledge of Cloud.

The first part of the course deals with what a client-server model is, followed by why one must migrate to cloud-based deployment. There are multiple benefits. Relying on physical data centers as a company is not a good idea, considering the cost needed to set up and keep them running. Additionally, companies lose the ability to scale conveniently.

After migrating to the cloud, the use of infrastructure becomes flexible, you can pay based on resources used, and don't have to make predictions beforehand.

You can read about some advantages of cloud computing here - [Link]
The next section of the course deals with Amazon EC2 (Elastic Compute Cloud) which basically offers a platform to run instances.
So the first step in the whole process is to launch an instance. One must choose various configurations including OS, application server, etc. along with hardware configuration and security settings.

The interesting part is that this allows businesses or individuals to manage virtual servers without having to invest in physical infrastructure. (Note: EC2 is not serverless. For serverless computing, AWS offers Lambda.)

Next, one can connect and use the instance.
Depending on the need of the applications one can choose from 5 different types of instances. The idea is to choose the instance based on your specific CPU or memory requirements. The section also deals with pricing plans, to optimize and make it fair for the users.

Here is a visual I created to get an overview of the types of instances -

Image 1

There is also another important concept of the Elastic Load Balancer discussed. It can be thought of as a mediator cum distributor, which directs the incoming requests from customers to various instances.
This is particularly useful if you receive more than expected traffic to your hosted service, and need to evenly distribute it for optimal delivery.

Amazon SNS and Amazon SQS (Simple Notification Service / Simple Queue Service) are services that can be integrated into applications to facilitate the design following a microservices approach instead of a monolithic approach.
This means that when you have 2 or more components in an application, instead of tightly coupling them (monolithic), where the failure of a single component causes the entire application to fail, the microservices approach ensures that components continue to communicate with each other in case of failure via services.


Personally, the most interesting part of this course for me was the global infrastructure setup of AWS. That is how they ensure that systems continue to run even in the case of disasters.
Setting up or we can say choosing a data center region in this case, will be dependent on factors like - proximity to customers, compliances, etc.
Now AWS recommends running EC2 instances on multiple Availability Zones. Availability zones consist of a single data center or a group of data centers within a single region. So let's say somehow a natural disaster causes the destruction of a data center, there is still another availability zone situated in the same region to ensure the running of applications. The key point here is the low latency yet safe distance between availability zones.

The subsequent part of the course discusses ways to interact with AWS resources - this can be done using AWS Command Line, Management Console, or Software Development Kits.

Now there are some cool network configurations available to enable a more secure and direct connection from private networks to AWS resources/instances. You can explore more on VPC here - [Link]
The Virtual Private Cloud (VPC) enables one to create an isolated portion of the cloud with Subnets. An internet gateway must be used to access the VPC.
AWS Direct Connect allows you to establish a one-to-one connection between a corporate data center and the VPC.

To enable security, there are network ACLs (Access Control Lists) present at the subnet level and Security Groups present at the instance level.

The following model is fundamental to AWS in ensuring security agreements: the Shared Responsibility Model.

Screenshot -

Image 2

I feel the other parts of the course are more specific to what AWS can offer and are definitely worth exploring if you plan to host applications on the cloud.
Overall, I feel the course has given me a holistic and high-level understanding of the fundamentals of AWS.

Note: As it may have been evident, I am a beginner, I certainly will appreciate inputs from those with a deeper understanding.

Thanks,
Have a great day!!

  • Bhuvi ( ̄︶ ̄)↗ 

Top comments (0)