Codementor Events

Interacting with AWS

Published Jul 09, 2023
Interacting with AWS

You need an understanding of AWS, to fully understand this article. If you don't, please schedule a 1:1 session with me and I can help you fully understand Cloud computing such as types and benefit of cloud computing, cloud computing scenerios, traditional data centers and setting up an AWS account, AWS Global Infrastructure such as regions, availability zones, local and wavelength zones, Cloud Economics such as organizing and optimizing AWS Costs, Building a business case for the cloud and how to apply cloud economics.

So please feel free to reach out to me.

Today in this post we are going to look at methods of interacting with AWS, and when to use those methods with real life examples and scenerios.

Methods of interacting with AWS and when to use it

At the time of writing this post, there are three different approaches when it comes to interacting with AWS:

1. AWS Management Console: When you set up your initial AWS account, you use this. This is leveraged on the browser to configure resources. It is a web(Figure 1) and mobile app(Figure 2) based interface that provides access to almost all the 150+ AWS services. All major browsers and operating system are supported. You can use and download the mobile version of AWS and also use it on your own.

getting-started-with-aws-console-1.eae683ec738c3ae9e636a94932e54489354f9221.png
Figure 1

iOS-1.84d038fd4a4a16f7e59ab35fa114904fb769951d.png
Figure 2

When you need or want to test out AWS services for the first time, spin up a virtual server, maybe you are looking out on testing a new AWS service just announced, AWS console is a great method.

2. AWS Command Line Interface (CLI): This allows you to access the same AWS resources, but this time from the command line on your machine as seen in Figure 3, be it Windows, Mac, and Linux. Most of the everyday task that can be done in the Console, can be done in with the CLI.

cli.png
Figure 3

You use AWS CLI for repeated task that can be automated.Logging in AWS console in the browser to perform automated task can be cumbersome.

3. AWS Software Developer Kit (SDK): If you want to leverage a program access to your AWS resources, the AWS SDK helps with that. AWS SDK gives you access to AWS resources from your program or application or code, and it is supported across a variety of languages such as Java, NodeJS, JavaScript(Browser) as seen in Figure 4, .NET, Python, Go, Ruby, C++ and PHP. A very good thing about AWS SDK is that it if you want to automate many aspects of how you interact with AWS platform, AWS SDK is the best for it.

Screenshot 2023-07-09 at 11.13.32 AM.png
Figure 4

When you wwant to enable AWS tasks automation within custom applications, then the SDK becomes a great choice for that.

Real life examples and scenerios

To better understand when to use either of the AWS interaction approaches, let us look at 3 scenerios that will prompt you to choose which AWS resources you will use, take a pause and think about the problem, what approach to use and why that approach.
But don't worry at the end I will tell you the answers to each Scenerio and why.

Scenerio 1
Thomas' company wants to transition to AWS. They want to leverage Amazon RDS(Relational Database Service). Thomas wants to test out a single database service.

What interaction approach will Thomas use for this use case?

Scenerio 2
Cooper's company is a startup. Her company helps farmers sell their produce to retail companies through a Web and mobile application. Cooper has a set of tasks she needs to run on AWS each day to generate reports.

What interaction approach will Cooper use for this use case?

Scenerio 3
MeadCourt is a company that runs several production workloads in AWS. They have a new web application that manages digital assets for marketing. They need to automatically create a user account in Amazon Incognito on sign-up. They want this step to be seamlessly integrated into the web application.

What interaction approach will MeadCourt use for this use case?

Run through it and note down the answers and why you chose them instead of the others.

Answers Real life examples and scenerios

In this article, I have discussed the ways and approached you can interact with AWS, and the use cases. And we showed examples of when you would have to make the decision on which approach to use. Finally we will look at the answers to those use cases and why we chose the answer.

Scenerio 1 answer
Thomas' company wants to transition to AWS. They want to leverage Amazon RDS(Relational Database Service). Thomas wants to test out a single database service.

What interaction approach will Thomas use for this use case?
Answer: AWS Management Console
Reason: Thomas is transitioning into AWS, probably for the first time, and he wants to test out an AWS service before he uses it. He just wants to get in and use the service, he is not deploying anything to production yet. AWS Management Console gives him an interface to quickly startup an RDS and test it out.

Scenerio 2 answer
Cooper's company is a startup. Her company helps farmers sell their produce to retail companies through a Web and mobile application. Cooper has a set of tasks she needs to run on AWS each day to generate reports.

What interaction approach will Cooper use for this use case?
Answer: AWS SDK(best option) or AWS CLI(second option)
Reason: Copper wants to generate reports on a daily basis, it will be an automated tasks. And it would be great to run that automated task from the within application. It would be cumbersome to log in to AWS console each day to generate the reports, or open up the terminal to run AWS CLI each day to generate reports. She can write the code once, and each day the code runs and send her the reports she wants, easy peasy.

Scenerio 3 answer
MeadCourt is a company that runs several production workloads in AWS. They have a new web application that manages digital assets for marketing. They need to automatically create a user account in Amazon Incognito on sign-up. They want this step to be seamlessly integrated into the web application.

What interaction approach will MeadCourt use for this use case?
Answer: AWS SDK
Reason: This is also an automated task, that will run when a user sign-up, and they want it baked into the custom web application. In this case they can choose to use the AWS SDK to leverage Amazon Incognito. AWS SDK can provide and make this process seamless.

Discover and read more posts from Anayo Samson Oleru
get started