Master Microservices with Java Spring Docker Kubernetes

Learn & Develop Microservices with Java, Spring Boot, Spring Cloud, Docker, Kubernetes, Helm, Microservices Security
Master Microservices with Java Spring Docker Kubernetes
File Size :
9.39 GB
Total length :
23h 55m

Category

Instructor

Eazy Bytes

Language

Last update

5/2023

Ratings

4.5/5

Master Microservices with Java Spring Docker Kubernetes

What you’ll learn

What is microservices architecture and how it is different from monolithic and SOA architectures
How to build microservices using Spring, SpringBoot
What are cloud native apps & 12 factor principles behind them
Configuration management in microservices using Spring Cloud Config Server
Service Discovery and Registration pattern inside microservices and how to implement using Spring Eureka server
Building resilient microservices using RESILIENCE4J framework
Handling Cross cutting concerns and routing inside microservices using Spring Cloud Gateway
Implementing Distributed tracing & Log aggregation in microservices using Spring Sleuth and Zipkin
Monitoring microservices using Prometheus and Grafana
Role of Docker in microservices and how to build docker images, containers
Role of Kubernetes in microservices as a container orchestration framework
Microservices Security
Helm

Master Microservices with Java Spring Docker Kubernetes

Requirements

Java
Basics of Spring framework

Description

‘Master Microservices with Spring, Docker, Kubernetes’ course will help in understanding about microservices architecture and how to build it using SpringBoot, Spring Cloud components, Docker and Kubernetes. By the end of this course, students will understand all the below topics,What is microservices architecture and how it is different from monolithic and SOA architecturesHow to build production ready microservices using  Spring, SpringBoot and Spring CloudWhat are cloud native apps & 12 factor principles behind themConfiguration management in microservices using Spring Cloud Config ServerService Discovery and Registration pattern inside microservices and how to implement using Spring Eureka serverBuilding resilient microservices using RESILIENCE4J frameworkHandling Cross cutting concerns and routing inside microservices using Spring Cloud GatewayImplementing Distributed tracing & Log aggregation in microservices using Spring Sleuth and ZipkinMonitoring microservices using Prometheus and GrafanaRole of Docker in microservices and how to build docker images, containersRole of Docker compose and how to use it to run all the microservices inside a applicationMost commonly used Docker commandsRole of Kubernetes in microservices as a container orchestration framework.How to setup a Kubernetes cluster inside GCP using GKE (Google Kubernetes Engine) and deploy microservices inside itMost commonly used Kubernetes commandsMicroservices Security using OAuth2What is Helm & it’s role in microservices worldThe pre-requisite for the course is basic knowledge of Java, Spring and interest to learn.

Overview

Section 1: Introduction to Microservices Architecture

Lecture 1 Introduction to the course & Agenda

Lecture 2 Details of Source Code, PDF Content & other instructions for the course

Lecture 3 Evolution of Microservices architecture

Lecture 4 Deepdive of Monolithic architecture

Lecture 5 Deepdive of SOA architecture

Lecture 6 Deepdive of Microservices architecture

Lecture 7 Comparisons between Monolithic, SOA & Microservices architecture

Lecture 8 Definition of Microservices

Section 2: [Optional] Microservices & Spring (Match Made in Heaven)

Lecture 9 Why Spring is the best framework for building microservices

Lecture 10 Using Spring Boot for microservices development

Lecture 11 Creating a Hello World service using Spring Boot

Lecture 12 Using Spring Cloud for microservices development

Section 3: [Optional] Right sizing Microservices & Identifying boundaries(Challenge 1)

Lecture 13 Approaches to identify boundaries & right sizing for building microservices

Lecture 14 Sizing & identifying boundaries with a Bank App use case

Lecture 15 Sizing & identifying boundaries with a Ecommerce migration use case

Section 4: Getting started with creation of accounts, loans & cards microservices

Lecture 16 Introduction to the microservices that we are going to build

Lecture 17 Creating Bank Accounts Microservices using SpringBoot

Lecture 18 Creating Bank Loans Microservices using SpringBoot

Lecture 19 Creating Bank Cards Microservices using SpringBoot

Section 5: How do we build, deploy, scale our microservices using Docker (Challenge 2)

Lecture 20 Introduction to challenges while building, deploying microservices

Lecture 21 What is Containerization technology?

Lecture 22 Definition of containers

Lecture 23 Introduction to Docker & its architecture

Lecture 24 Understanding Docker Hub & Installing Docker

Lecture 25 Creating Docker image definition using a Dockerfile

Lecture 26 Create Accounts microservice Docker image from the Dockerfile

Lecture 27 Start and deploy Accounts microservice using Docker image & containers

Lecture 28 Deep dive of important Docker commands

Lecture 29 Introduction to Buildpacks

Lecture 30 Creating docker image of Loans microservice using Buildpacks

Lecture 31 Creating docker image of Cards microservice using Buildpacks

Lecture 32 Pushing Docker images from your local to remote Docker hub repository

Lecture 33 Deep dive on docker-compose

Lecture 34 Tips & Tricks around Docker Desktop Dashboard & Logs explorer

Section 6: [Optional] Deep Dive on Cloud Native Apps & 12factors

Lecture 35 Introduction to Cloud-native applications

Lecture 36 Differences between cloud-native Apps & Traditional enterprise Apps

Lecture 37 Twelve factor App Deepdive 1

Lecture 38 Twelve factor App Deepdive 2

Lecture 39 Twelve factor App Deepdive 3

Section 7: Configurations Management in Microservices (Challenge 3)

Lecture 40 Introduction to Configurations Management challenges inside microservices

Lecture 41 Configuration Management architecture inside microservices

Lecture 42 Deep dive of Spring Cloud Config for Configuration management

Lecture 43 Building Config Server service and load all the configurations from classpath

Lecture 44 Reading configurations from a file system location

Lecture 45 Reading configurations from a GitHub repository

Lecture 46 Updating Accounts Microservice to read properties from Config Server

Lecture 47 Updating Loans Microservice to read properties from Config Server

Lecture 48 Updating Cards Microservice to read properties from Config Server

Lecture 49 Generating Docker images after Config Server changes

Lecture 50 Pushing all the latest Docker images with Config server changes to DockerHub

Lecture 51 Updating Docker Compose file to adapt Config Server changes

Lecture 52 Starting all the microservices using docker compose files based on the env

Lecture 53 Refreshing properties with @RefreshScope

Lecture 54 Encryption & Decryption of your properties inside Config server

Section 8: Service Discovery & Registration(Challenge 4)

Lecture 55 Introduction to the Service Discovery & Registration inside microservices

Lecture 56 Why not traditional load balancers for Microservices

Lecture 57 Architecture of Service Discovery inside microservices

Lecture 58 Client Side load balancing between microservices

Lecture 59 Spring Cloud support for Service Discovery & Registration

Lecture 60 Setup Service Discovery agent using Eureka server

Lecture 61 Make changes for Accounts microservice to connect Eureka Server

Lecture 62 Make changes for Loans & Cards microservice to connect Eureka Server

Lecture 63 Degistration from Eureka server when microservices shutdown

Lecture 64 Demo of heartbeats mechanism to Eureka server from clients

Lecture 65 Feign Client to invoke other microservices

Lecture 66 Generating Docker images after Service Discovery changes

Lecture 67 Pushing all the latest Docker images with Eureka changes to Docker Hub

Lecture 68 Updating Docker Compose file to adapt Service Discovery changes

Lecture 69 Starting all the microservices using docker compose file

Lecture 70 Running docker compose with 2 instances of Accounts microservice

Lecture 71 Eureka Self-Preservation mode to avoid network trap issues

Section 9: Making Microservices Resilient (Challenge 5)

Lecture 72 Introduction to the need of Resiliency inside microservices

Lecture 73 Typical use case or scenario for the need of Resiliency

Lecture 74 Deep dive on Circuit Breaker pattern in microservices

Lecture 75 Implementing Circuit Breaker pattern – Part 1

Lecture 76 Implementing Circuit Breaker pattern – Part 2

Lecture 77 Implementing Circuit Breaker pattern – Part 3

Lecture 78 Deep dive on Retry pattern in microservices

Lecture 79 Implementing Retry Pattern in microservices

Lecture 80 Deep dive on Rate Limiter pattern in microservices

Lecture 81 Implementing Rate Limiter Pattern in microservices

Lecture 82 Deep dive on Bulk head pattern in microservices

Section 10: Handling Routing & Cross cutting concerns in Microservices (Challenge 6)

Lecture 83 Introduction to the challenges with Routing & Cross cutting concerns

Lecture 84 Introduction to Spring Cloud Gateway

Lecture 85 Deep dive on Spring Cloud Gateway internal architecture

Lecture 86 Building Spring Cloud Gateway service

Lecture 87 Implementing Custom Routing using Spring Cloud Gateway

Lecture 88 Implementing Cross cutting concern Tracing & Logging using Gateway Server

Lecture 89 Generating and pushing Docker images with Spring Cloud Gateway changes

Lecture 90 Updating Docker Compose file to adapt Spring Cloud Gateway changes

Section 11: Distributed tracing & Log aggregation in Microservices (Challenge 7)

Lecture 91 Introduction to the challenges related to Distributed tracing & Log aggregation

Lecture 92 Introduction to Spring Cloud Sleuth & Zipkin

Lecture 93 Deep dive on Spring Cloud Sleuth & it’s tracing format

Lecture 94 Deep dive on Zipkin internal architecture

Lecture 95 Implementing Distributed tracing with Spring Cloud Sleuth

Lecture 96 Implementing Log aggregation with Zipkin Server

Lecture 97 Pushing Sleuth message into RabbitMQ

Lecture 98 Generate, Push Docker images with Sleuth & Zipkin changes

Section 12: Monitoring Microservices Metrics & Health (Challenge 8)

Lecture 99 Introduction to the challenges related to monitoring microservices

Lecture 100 Different approaches to monitor microservices

Lecture 101 Setup of micrometer inside microservices

Lecture 102 Setup of Prometheus to monitor microservices

Lecture 103 Setup of Grafana to monitor microservices with inbuilt dashboards

Lecture 104 Building custom dashboards inside Grafana

Lecture 105 Sending alerts using Grafana when service is down

Section 13: Automatic self-healing, scaling, deployments using Kubernetes

Lecture 106 Introduction to the challenges related to container orchestration

Lecture 107 Introduction to Kubernetes

Lecture 108 Dee dive of Kubernetes internal architecture

Lecture 109 Cloud providers support for Kubernetes

Lecture 110 GCP Account Setup and creating a K8s cluster

Lecture 111 Exploring K8S cluster and establish connection with it

Lecture 112 Deep dive on Kubernetes YAML configurations

Lecture 113 Kubernetes YAML configurations for applicable microservices

Lecture 114 Create environment variables inside K8S cluster using ConfigMap

Lecture 115 Deploying our microservices to Kubernetes cluster

Lecture 116 Validating our microservices deployed into K8s cluster

Lecture 117 Automatic Self healing inside Kubernetes cluster

Lecture 118 Automatic Rollout & Rollback inside Kubernetes cluster

Lecture 119 Logging & Monitoring inside Kubernetes cluster

Lecture 120 Autoscaling inside Kubernetes cluster using HPA

Lecture 121 Deleting Kubernetes cluster inside GCP

Section 14: Deploying all microservices into K8s cluster

Lecture 122 Deploying all the microservices into K8s cluster – Theory

Lecture 123 Creating the K8s yaml config files for all microservices

Lecture 124 How Deployment and Service are tied together inside K8s

Lecture 125 Deploying all the microservices into K8s cluster

Lecture 126 Validating microservices deployed into K8s cluster

Lecture 127 Problems with manually created Kubernetes manifest files

Section 15: Deep Dive on Helm

Lecture 128 Introduction to Helm

Lecture 129 Problems that Helm solves

Lecture 130 Installing Helm

Lecture 131 Creating our first Helm Chart

Lecture 132 Installing the Default Helm chart into K8s cluster

Lecture 133 Exploring the default Helm chart content

Lecture 134 Creating our own Helm template files

Lecture 135 Creating Helm chart for Accounts microservice

Lecture 136 Creating Helm chart for other microservice

Lecture 137 Creating Helm chart for Dev and Prod environment

Lecture 138 Demo of helm template command

Lecture 139 Installing Helm charts into K8s cluster

Lecture 140 Demo of helm upgrade command

Lecture 141 Demo of helm history and rollback commands

Lecture 142 Demo of helm uninstall command

Lecture 143 Revision of important helm commands

Section 16: Securing Microservices using K8s Service

Lecture 144 Problem with Kubernetes LoadBalancer Service

Lecture 145 Problem with Kubernetes LoadBalancer Service-Demo

Lecture 146 Introduction to types of K8s Services

Lecture 147 Deep dive on ClusterIP Service – Theory

Lecture 148 Deep dive on ClusterIP Service – Demo

Lecture 149 Deep dive on NodePort Service – Theory

Lecture 150 Deep dive on NodePort Service – Demo

Lecture 151 Deep dive on LoadBalancer Service – Theory

Lecture 152 Deep dive on LoadBalancer Service – Demo

Section 17: Securing Microservices using OAuth2 client credentials grant flow

Lecture 153 Introduction to securing Spring Cloud Gateway with OAuth2

Lecture 154 Quick intro to OAuth2 framework

Lecture 155 Deep dive on OAuth2 Client Credentials grant flow

Lecture 156 KeyCloak Auth Server installation and setup using Docker command

Lecture 157 Register Client details inside KeyCloak Auth server

Lecture 158 Getting Access token from Auth Server using Client details

Lecture 159 Making code changes inside Spring Cloud Gateway to secure the APIs

Lecture 160 Demo of Spring Cloud Gateway security inside local system

Lecture 161 Generating and Pushing latest docker image of Gateway into Docker Hub

Lecture 162 Installation of KeyCloak into K8s cluster using Helm chart

Lecture 163 Updating Helm charts of microservices

Lecture 164 Deploying all microservices into K8s and validating security changes

Lecture 165 Introduction to Authorization

Lecture 166 Demo of Authorization changes using Spring Security – Part 1

Lecture 167 Demo of Authorization changes using Spring Security – Part 2

Section 18: Securing Microservices using OAuth2 Authorization code grant flow

Lecture 168 Introduction to OAuth2 Authorization code grant flow

Lecture 169 Deep dive of OAuth2 Authorization code grant flow

Lecture 170 Making code changes inside Accounts microservice to secure the APIs

Lecture 171 Register Client details inside KeyCloak Auth server for Spring Cloud Gateway

Lecture 172 Making code changes inside Spring Cloud Gateway

Lecture 173 Demo of OAuth2 Authorization code grant flow inside local system

Lecture 174 Updating Helm charts of microservices

Lecture 175 Deploy all microservices into K8s cluster and demo of Authorization code flow

Section 19: Introduction to K8s Ingress & Service Mesh (Istio)

Lecture 176 Introduction to Kubernetes Ingress

Lecture 177 Introduction to Service mesh

Lecture 178 Deep dive on Service mesh and Istio

Section 20: Thank You & Congratulations

Lecture 179 Thank You & Congratulations

Lecture 180 Bonus lectures

Beginner students who are learning Spring framework and interested in Microservices as well,Developers who already know developing web applications using Spring framework,Java Architects

Course Information:

Udemy | English | 23h 55m | 9.39 GB
Created by: Eazy Bytes

You Can See More Courses in the IT & Software >> Greetings from CourseDown.com

New Courses

Scroll to Top