Hands-on Kubernetes on Azure: Use Azure Kubernetes Service to automate management, scaling, and deployment of containerized applications, 3rd Edition
Understand the fundamentals of Kubernetes deployment on Azure with a learn-by-doing approach
- Get to grips with the fundamentals of containers and Kubernetes
- Deploy containerized applications using the Kubernetes platform
- Learn how you can scale your workloads and secure your application running in Azure Kubernetes Service
Containers and Kubernetes containers facilitate cloud deployments and application development by enabling efficient versioning with improved security and portability.
With updated chapters on role-based access control, pod identity, storing secrets, and network security in AKS, this third edition begins by introducing you to containers, Kubernetes, and Azure Kubernetes Service (AKS), and guides you through deploying an AKS cluster in different ways.
You will then delve into the specifics of Kubernetes by deploying a sample guestbook application on AKS and installing complex Kubernetes apps using Helm.
With the help of real-world examples, you’ll also get to grips with scaling your applications and clusters.
As you advance, you’ll learn how to overcome common challenges in AKS and secure your applications with HTTPS.
You will also learn how to secure your clusters and applications in a dedicated section on security.
In the final section, you’ll learn about advanced integrations, which give you the ability to create Azure databases and run serverless functions on AKS as well as the ability to integrate AKS with a continuous integration and continuous delivery (CI/CD) pipeline using GitHub Actions.
By the end of this Kubernetes book, you will be proficient in deploying containerized workloads on Microsoft Azure with minimal management overhead.
What you will learn
- Plan, configure, and run containerized applications in production.
- Use Docker to build applications in containers and deploy them on Kubernetes.
- Monitor the AKS cluster and the application.
- Monitor your infrastructure and applications in Kubernetes using Azure Monitor.
- Secure your cluster and applications using Azure-native security tools.
- Connect an app to the Azure database.
- Store your container images securely with Azure Container Registry.
- Install complex Kubernetes applications using Helm.
- Integrate Kubernetes with multiple Azure PaaS services, such as databases, Azure Security Center, and Functions.
- Use GitHub Actions to perform continuous integration and continuous delivery to your cluster.
Who this book is for
If you are an aspiring DevOps professional, system administrator, developer, or site reliability engineer interested in learning how to get the most out of containers and Kubernetes, then this book is for you.
Table of Contents
- Introduction to containers and Kubernetes
- Getting started with Azure Kubernetes Service
- Application deployment on AKS
- Building scalable applications
- Handling common failures in AKS
- Securing your application with HTTPS
- Monitoring the AKS cluster and the application
- Role-based access control in AKS
- Azure Active Directory pod-managed identities in AKS
- Storing secrets in AKS
- Network security in AKS
- Connecting an application to an Azure database
- Azure Security Center for Kubernetes
- Serverless functions
- Continuous integration and continuous deployment for AKS
About the Author
Nills Franssens is a technology enthusiast and a specialist in multiple open-source technologies. He has been working with public cloud technologies since 2013. In his current position as a Principal Cloud Solutions Architect at Microsoft, he works with Microsoft’s strategic customers on their cloud adoption. He has worked with multiple customers in migrating applications to run on Kubernetes on Azure. Nills’ areas of expertise are Kubernetes, networking, and storage in Azure. When he’s not working, you can find Nills playing board games with his wife Kelly and friends, or running one of the many trails in San Jose, California.
Shivakumar Gopalakrishnan is DevOps architect at Varian Medical Systems. He has introduced Docker, Kubernetes, and other cloud-native tools to Varian product development to enable “Everything as Code”. He has years of software development experience in a wide variety of fields, including networking, storage, medical imaging, and currently, DevOps. He has worked to develop scalable storage appliances specifically tuned for medical imaging needs and has helped architect cloud-native solutions for delivering modular AngularJS applications backed by microservices. He has spoken at multiple events on incorporating AI and machine learning in DevOps to enable a culture of learning in large enterprises. He has helped teams in highly regulated large medical enterprises adopt modern agile/DevOps methodologies, including the “You build it, you run it” model. He has defined and leads the implementation of a DevOps roadmap that transforms traditional teams to teams that seamlessly adopt security- and quality-first approaches using CI/CD tools. He holds a bachelor of engineering degree from College of Engineering, Guindy, and a Master of Science degree from University of Maryland, College Park.
Gunther Lenz is senior director of the technology office at Varian. He is an innovative software R&D leader, architect, MBA, published author, public speaker, and strategic technology visionary with more than 20 years of experience. He has a proven track record of successfully leading large, innovative, and transformational software development and DevOps teams of more than 50 people, with a focus on continuous improvement. He has defined and lead distributed teams throughout the entire software product lifecycle by leveraging groundbreaking processes, tools, and technologies such as the cloud, DevOps, lean/agile, microservices architecture, digital transformation, software platforms, AI, and distributed machine learning. He was awarded Microsoft Most Valuable Professional for Software Architecture (2005-2008). Gunther has published two books, .NET – A Complete Development Cycle and Practical Software Factories in .NET.