This section of the Solution Architect Associate learning path introduces you to the core computing concepts and services relevant to the SAA-C03 exam. We start with an introduction to the AWS compute services, understand the options available and learn how to select and apply AWS compute services to meet specific requirements.
Want more? Try a lab playground or do a Lab Challenge!
Learning Objectives
- Learn the fundamentals of AWS compute services such as EC2, ECS, EKS, and AWS Batch
- Understanding how load balancing and autoscaling can be used to optimize your workloads
- Learn about the AWS serverless compute services and capabilities
So you've reached the end of the compute section and that was a big section to complete. So congratulations on getting through. So in that last section, we covered services and features such as Amazon EC2, auto scaling, elastic load balancing and serverless compute as well, which focused on AWS Lambda. So to help you with your studies for the exam I want to call out some key points that you should keep in the forefront of your mind. As my one core focus is to ensure that you are prepared and have the knowledge in need when you're sitting in that exam chair.
So let's run through when you might select certain services or make specific configuration changes to meet the requirements of different questions. So starting with EC2 two as this is most frequently mentioned compute service on the exam. We start off by looking at AMI's, Amazon Machine Images. So these are used as the baseline template of your EC2 instances. And now the first element you need to select when creating your instance for the exam, you should be aware of the different options that they offer such as the operating system that you'll be running in addition to any other additional software. So you will be expected to know what comes with the AMI and what doesn't?
When it comes to understanding a service, it always helps to get some hands on experience with it and EC2 is no exception. And you can use our labs for this and it will really help you to establish familiarity with the different steps involved in creating an instance. And this will help you answer a lot of questions. You need to be aware of the different instance types that are available. And how the compute power and performance values fluctuate with instant size. As we discussed, some instances provide better performance depending on if your workloads are memory intensive or perhaps require that accelerated computing performance to help with data pattern matching. So having an insight into these, will help you answer any questions relating to EC2 workload efficiency.
Now more than likely, you'll be asked at some point to determine the best instance purchase option to help you optimize the cost of your environment. I think I've at least one or two questions on this each and every time I've set the exam. So it's imperative that you know the difference between on-demand, spot and reserved instances. Now depending on the scenario you will have to demonstrate your understanding of these different purchase options to help you determine under which circumstance you should use each of them. If the question talks about how your workload is predictable and will be required for perhaps one or three years and you need to optimize costs, then reserved instances should come to mind and would likely be the answer. If the question highlights how the workload can be interrupted. And again you're looking to build a cost efficient solution. Then this would be a good use case of spot instances. So review the key differences of the purchase options and understand their specific use cases to help you optimize costs.
From security point of view, tenancy options of your instances can come into play. Now by default, our instances run on shared tenancy. Whereby we share the underlying host with other customers. However, you might receive questions explaining that you need to secure your infrastructure to maintain compliance and ensure that your EC2 instances do not share any underlying host with any other customer. So how could you do that? Well, the answer would fall under your tenancy options. Either dedicated instances or dedicated hosts would resolve this issue. Now with dedicated hosts, it provides additional control over the placement of your EC2 instances on those hosts. So ensure you have a good understanding of your options here.
Another common question scenario that comes up. Test your knowledge and understanding of how to automatically run commands on the first boot cycle of your instance. For example, you might need to perform operating system updates or install additional software from a repository when your instance first boots up. So how would you achieve this? Well, the answer lies in the user data section of your instance during its configuration. It allows you to enter commands to do exactly that. Also on this point, you can also use metadata of the instance to see the user data configuration for that instance. And this can be found by going to 169.254.169.254/latest/meta-data.
As you may or may not know, security will always be a part of every AWS certification. And the solutions architect is no different. So what are the types of security questions that may appear from an EC2 point of view? Well, key pairs could be one topic to come up and these are used to encrypt the credentials to your instances, allowing you to connect to them. Ensure you are familiar with how to connect to both Windows and Linux based instances. Now Windows uses RDP on port 3389 and Linux uses SSH, which is on port 22.
Let's now take a look at auto scaling and how this might present itself in the exam. When questions on auto scaling come up, you'll be expected to know the main function of the service and the benefits it brings such as the ability to automatically increase or decrease your EC2 resources to meet the demands of your applications. For example, you might be asked to implement an efficient way to enhance the performance of the application after users complained of poor response. Now this might be caused by a bottleneck in your EC2 resources not being able to handle and process the amount of traffic. Now by implementing auto scaling, you could automatically increase your ET2 fleet size. Thereby you would increase the amount of resources and remove the bottleneck.
Now you might also be assessed on your ability to optimize the cost of your EC2 fleet. Now, one way would be to remove unused resources. By implementing auto scaling, you can scale in your EC2 fleet by terminating unused capacity based on set thresholds. So auto scaling is all about optimizing performance and cost. So look out for this as an option whenever you receive a question covering this topic. Now you will likely see questions with auto scaling interlinking with elastic load balances as well. And they work very well together. Elastic load balances allow you to manage loads across your target groups. Whereas EC2 auto scaling allows you to elastically scale those target groups based upon the demand. So from an exam perspective, ensure you can differentiate between auto-scaling and ELBs. Also, ensure you are familiar with the different ELBs that exist as you'll be assessed on when to use one ELB over another in a particular situation.
For example, you might be presented with a network scenario where you need to determine when your ELB should be placed. Should it be an internal or external ELB? And we'll be using to serve encrypted traffic. In which case, what do you need to configure? Well, if using HTTPS you'll need a service certificate perhaps issued by AWS Certificate Manager. Another scenario that I've come across, assesses your ability of understanding how your ELBs react to targets in your target group that are marked as unhealthy following a health check. Now, does the ELB restart the instance? Does it launch another instance or does it just ignore it? Well for the ELB, it just ignores it and continues to send request to healthy instances. It's the job of auto-scaling to launch replacement instances not the ELB.
Okay, so the last area I want to cover is AWS Lambda. Now this service isn't covered extensively on the exam but you certainly need to be aware of it and when it would be used. Now, the key is knowing that it is a serverless compute service designed to run in event-based environments to run application code without having to manage and provision your own EC2 instances. It's really cost-effective as you only pay for compute power when Lambda functions are invoked. In addition to being charged based on the number of times your function runs, known as invocations. So you might be presented with a question where you have an application that allows you to share photos that are uploaded to S3. But every time a new object is created, you want to process code to create a thumbnail of that object. What service would you use to do this with the least administrative effort? Now, this is a perfect example of when Lambda would be used. As its code-triggered by an event. And in this case, when a new object is uploaded is that event. And there were no resources to provision, to administer as it's serverless.
Okay, so that now brings me to the end of this summary. We've highlighted some of the key points that we've learned from the previous course and we've looked at how to approach a number of different questions that might come up that relate to compute. So hopefully you should feel ready and prepared to tackle any questions in this area. So let's now move on to the next section.
Stuart has been working within the IT industry for two decades covering a huge range of topic areas and technologies, from data center and network infrastructure design, to cloud architecture and implementation.
To date, Stuart has created 150+ courses relating to Cloud reaching over 180,000 students, mostly within the AWS category and with a heavy focus on security and compliance.
Stuart is a member of the AWS Community Builders Program for his contributions towards AWS.
He is AWS certified and accredited in addition to being a published author covering topics across the AWS landscape.
In January 2016 Stuart was awarded ‘Expert of the Year Award 2015’ from Experts Exchange for his knowledge share within cloud services to the community.
Stuart enjoys writing about cloud technologies and you will find many of his articles within our blog pages.