Description
Book SynopsisWrite efficient, smart, and optimized code for containerized applications on public and private clouds at a generic level. This book shows you how to set up microservices that are robust, scalable, and capable of running on GKE (Google Kubernetes Service), AKS (Azure Kubernetes Service), ECS (Elastic Container Service), or even on a vanilla K8S cluster.The book covers the nuts and bolts of container orchestration engines (COEs) and explains how to install and configure them. It also covers creation and deployment of a sample application on COEs. You will learn how to integrate different applications such as OAuth and how to test them and secure them using Istio Citadel. You also will be taught how to create HPA rules for microservices and scale only those microservices that require it, making your stack intelligent. In the concluding chapter, the book explains how to build a SaaS solution from scratch, running on the cloud with automated deployments accessed publicly via a secured ingr
Table of Contents•Chapter 1, Cloud Computing and KubernetesChapter Goal:o What is cloud computingo What is Kuberneteso Different distributions of Kuberneteso Setting up a K8S cluster- for workshop purposeso Common commands of K8So Place of Kubernetes from an architecture point of view.
•Chapter 2, Creating Applications on KubernetesChapter Goal:o Create an Apache http servero Create a Java Tomcat war-based servero Create a gRPC API server o Create a Rest API servero Differences when creating applications on Kubernetes.o How will the application be actually called in a production based cluster.
•Chapter 3, Testing of Applications on KubernetesChapter Goal:o Creating a CI system for testing.o Using of Pytest, go test, behave and other best testing tools based on programming language.o Adding a simple CD system stage.o Coverage of code and mock of applications to replicate real time scenarios.
•Chapter 4, Security of ApplicationsChapter Goal:o Creating a book inventory application composed of UI, API and DBo Using cloud services instead of reinventing the wheelo Using and understand Istio for TLS Encryption and monitoring.o Understanding authentication/authorization and RBAC systems.o Leverage all the services available rather than developing things to secure all microservices.
•Chapter 5, Networking of ApplicationsChapter Goal:o Understanding the basics of networking in Kubernetes.o How containers/pod reach each other via overlay networking.o Different ways networking is configured in Kubernetes cluster.o Using name-based DNS routing in applications rather than IP’so Understanding load balancers and the features provided by it.o Using Istio to create a service mesh of microservices and see the flow of traffic between them.o Configuring Kubernetes objects such as Ingress, Service, Endpoints.
•Chapter 6, Scaling of Software SolutionChapter Goal:o Identify which microservice of the solution is becoming a bottlenecko Creating HPA rules in Kubernetes to scale specific microservice.o Use case and real-world problems and solutions to them via scaling.
•Chapter 7, Building a SaaS SolutionChapter Goal:o Start with nothing but a simple k8s cluster.o Create microservice with your own hands one by one.o Identify what all services are required for building a sample SaaS e commerce solution.o Creating/Configuring a UI, API, DB, business logic, monitoring software stack.o Architecting the entire solution.o Bring the stack up and testing it against load and autoscaling the solution to support any number of requests.