Book Image

Migrating Applications to the Cloud with Azure

By : Sjoukje Zaal, Amit Malik, Sander Rossel, Jason Marston, Mohamed Waly, Stefano Demiliani
Book Image

Migrating Applications to the Cloud with Azure

By: Sjoukje Zaal, Amit Malik, Sander Rossel, Jason Marston, Mohamed Waly, Stefano Demiliani

Overview of this book

Whether you are trying to re-architect a legacy app or build a cloud-ready app from scratch, using the Azure ecosystem with .NET and Java technologies helps you to strategize and plan your app modernization process effectively. With this book, you’ll learn how to modernize your applications by using Azure for containerization, DevOps, microservices, and serverless solutions to reduce development time and costs, while also making your applications robust, secure, and scalable. You will delve into improving application efficiency by using container services such as Azure Container Service, Azure Kubernetes Service (AKS), and more. Next, you will learn to modernize your application by implementing DevOps throughout your application development life cycle. You will then focus on increasing the scalability and performance of your overall application with microservices, before learning how to add extra functionality to your application with Azure serverless solutions. Finally, you’ll get up to speed with monitoring and troubleshooting techniques. By the end of this book, you will have learned how to use the Azure ecosystem to refactor, re-architect, and rebuild your web, mobile, and desktop applications.
Table of Contents (22 chapters)
Free Chapter
1
Planning Application Modernization
4
Implementing Containerization and DevOps in a Development Cycle
8
Building a Web and Microservices Architecture on Azure
12
Going Serverless and Deploying to the Cloud
17
Planning for Security, Availability, and Monitoring

Scaling applications on AKS

Scaling in terms of AKS simply means increasing or decreasing the number of pods (replicas) for each application instance. You can choose to manually scale the number of replicas up or down, or you can configure autoscaling based on utilization. 

Before you scale your deployments, you should also ensure that you have sufficient capacity on the AKS nodes so that they can take that much load. If not, you should add new nodes first and then scale the application. 

Manually scaling a deployment is very easy; you just need to modify the number of replicas in the YAML deployment file and submit the updated configuration using kubectl apply -f filename.yamlThis doesn't have an impact on any existing deployment and provisions the new pods based on the numbers defined.

Kubernetes services watch new pods that meet their label requirements...