(calm electronic music) Welcome to Constructing a Cloud Architecture. In these lessons, you will review use cases and determine server requirements. You will explore the benefits of cloud-native services and focus on mapping on-premises components to the public cloud. You will also learn about several security controls available on the public cloud. Let's get started. Most organizations are in the process of moving their applications to the public cloud. What is the best way to determine the server requirements? Here are some steps for an effective solution. Identify the current server type that the instance is using on-premises. Review the public cloud and identify the instance type that matches your on-premise production environment. Move the application onto the public cloud. Run a performance test and determine the performance numbers. Compare the performance numbers with the defined Service Level Objectives. If the performance numbers are below the expected response time, then add a new server. This is a manual way of adding or removing the needed servers. The public cloud also comes with auto-scaling. Let's say you have a web application deployed on the Amazon Web Service's Elastic Compute Cloud. You can easily attach the auto-scaling group with the application and configure CPU and memory metrics with the auto-scaling group. The auto-scaling group will add or remove the instance based on the metrics. The cloud provides all the resources needed on an on-demand basis, which simplifies the process for your application. Let's consider another example, using the open source container system Kubernetes. If you're planning to deploy your docker containers on a managed Kubernetes engine, you can configure minimum pod, the smallest deployable unit of computing you can create and manage in Kubernetes, and maximum pod count with each container. You can then configure the conditions on which the application should provision additional pod count. The public cloud works on a pay-per-use model, and you can configure the minimum pod count based on your performance test results and then have the auto-scaling enabled. This will ensure that you have the infrastructure available in the event of the application load. You can also do a capacity planning exercise and ask all your teams to fill out required capacity for the application and the number of CPUs and memory requirements. Once you have all the numbers, you can work with public cloud companies regarding a discount. Most cloud companies provide instances based on a specific group or type family. Here is the Google public cloud instance options chart, as an example. A few notes about these groups may be helpful. If your application requires more computing power, then you should consider selecting the C2 family instances. If your application performs memory-intense operations, you should consider using memory-optimized instances. The general purpose instance is a good choice for any general purpose application. You can also still choose the instance based on the required RAM and CPU capacity. If you're planning to change the entire architecture for the cloud, then you should run the performance test and a server planning exercise based on those test results.