Tags
Language
Tags

Master Microservices With Java, Spring, Docker, Kubernetes

Posted By: ELK1nG
Master Microservices With Java, Spring, Docker, Kubernetes

Master Microservices With Java, Spring, Docker, Kubernetes
Last updated 6/2022
MP4 | Video: h264, 1280x720 | Audio: AAC, 44.1 KHz
Language: English | Size: 5.84 GB | Duration: 23h 36m

Learn & Develop Microservices with Java, Spring Boot, Spring Cloud, Docker, Kubernetes, Helm, Microservices Security

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
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

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

Lecture 34 Introduction to Cloud-native applications

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

Lecture 36 Twelve factor App Deepdive 1

Lecture 37 Twelve factor App Deepdive 2

Lecture 38 Twelve factor App Deepdive 3

Section 7: Configurations Management in Microservices (Challenge 3)

Lecture 39 Introduction to Configurations Management challenges inside microservices

Lecture 40 Configuration Management architecture inside microservices

Lecture 41 Deep dive of Spring Cloud Config for Configuration management

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

Lecture 43 Reading configurations from a file system location

Lecture 44 Reading configurations from a GitHub repository

Lecture 45 Updating Accounts Microservice to read properties from Config Server

Lecture 46 Updating Loans Microservice to read properties from Config Server

Lecture 47 Updating Cards Microservice to read properties from Config Server

Lecture 48 Generating Docker images after Config Server changes

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

Lecture 50 Updating Docker Compose file to adapt Config Server changes

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

Lecture 52 Refreshing properties with @RefreshScope

Lecture 53 Encryption & Decryption of your properties inside Config server

Section 8: Service Discovery & Registration(Challenge 4)

Lecture 54 Introduction to the Service Discovery & Registration inside microservices

Lecture 55 Why not traditional load balancers for Microservices

Lecture 56 Architecture of Service Discovery inside microservices

Lecture 57 Client Side load balancing between microservices

Lecture 58 Spring Cloud support for Service Discovery & Registration

Lecture 59 Setup Service Discovery agent using Eureka server

Lecture 60 Make changes for Accounts microservice to connect Eureka Server

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

Lecture 62 Degistration from Eureka server when microservices shutdown

Lecture 63 Demo of heartbeats mechanism to Eureka server from clients

Lecture 64 Feign Client to invoke other microservices

Lecture 65 Generating Docker images after Service Discovery changes

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

Lecture 67 Updating Docker Compose file to adapt Service Discovery changes

Lecture 68 Starting all the microservices using docker compose file

Lecture 69 Running docker compose with 2 instances of Accounts microservice

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

Section 9: Making Microservices Resilient (Challenge 5)

Lecture 71 Introduction to the need of Resiliency inside microservices

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

Lecture 73 Deep dive on Circuit Breaker pattern in microservices

Lecture 74 Implementing Circuit Breaker pattern - Part 1

Lecture 75 Implementing Circuit Breaker pattern - Part 2

Lecture 76 Implementing Circuit Breaker pattern - Part 3

Lecture 77 Deep dive on Retry pattern in microservices

Lecture 78 Implementing Retry Pattern in microservices

Lecture 79 Deep dive on Rate Limiter pattern in microservices

Lecture 80 Implementing Rate Limiter Pattern in microservices

Lecture 81 Deep dive on Bulk head pattern in microservices

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

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

Lecture 83 Introduction to Spring Cloud Gateway

Lecture 84 Deep dive on Spring Cloud Gateway internal architecture

Lecture 85 Building Spring Cloud Gateway service

Lecture 86 Implementing Custom Routing using Spring Cloud Gateway

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

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

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

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

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

Lecture 91 Introduction to Spring Cloud Sleuth & Zipkin

Lecture 92 Deep dive on Spring Cloud Sleuth & it's tracing format

Lecture 93 Deep dive on Zipkin internal architecture

Lecture 94 Implementing Distributed tracing with Spring Cloud Sleuth

Lecture 95 Implementing Log aggregation with Zipkin Server

Lecture 96 Pushing Sleuth message into RabbitMQ

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

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

Lecture 98 Introduction to the challenges related to monitoring microservices

Lecture 99 Different approaches to monitor microservices

Lecture 100 Setup of micrometer inside microservices

Lecture 101 Setup of Prometheus to monitor microservices

Lecture 102 Setup of Grafana to monitor microservices with inbuilt dashboards

Lecture 103 Building custom dashboards inside Grafana

Lecture 104 Sending alerts using Grafana when service is down

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

Lecture 105 Introduction to the challenges related to container orchestration

Lecture 106 Introduction to Kubernetes

Lecture 107 Dee dive of Kubernetes internal architecture

Lecture 108 Cloud providers support for Kubernetes

Lecture 109 GCP Account Setup and creating a K8s cluster

Lecture 110 Exploring K8S cluster and establish connection with it

Lecture 111 Deep dive on Kubernetes YAML configurations

Lecture 112 Kubernetes YAML configurations for applicable microservices

Lecture 113 Create environment variables inside K8S cluster using ConfigMap

Lecture 114 Deploying our microservices to Kubernetes cluster

Lecture 115 Validating our microservices deployed into K8s cluster

Lecture 116 Automatic Self healing inside Kubernetes cluster

Lecture 117 Automatic Rollout & Rollback inside Kubernetes cluster

Lecture 118 Logging & Monitoring inside Kubernetes cluster

Lecture 119 Autoscaling inside Kubernetes cluster using HPA

Lecture 120 Deleting Kubernetes cluster inside GCP

Section 14: Deploying all microservices into K8s cluster

Lecture 121 Deploying all the microservices into K8s cluster - Theory

Lecture 122 Creating the K8s yaml config files for all microservices

Lecture 123 How Deployment and Service are tied together inside K8s

Lecture 124 Deploying all the microservices into K8s cluster

Lecture 125 Validating microservices deployed into K8s cluster

Lecture 126 Problems with manually created Kubernetes manifest files

Section 15: Deep Dive on Helm

Lecture 127 Introduction to Helm

Lecture 128 Problems that Helm solves

Lecture 129 Installing Helm

Lecture 130 Creating our first Helm Chart

Lecture 131 Installing the Default Helm chart into K8s cluster

Lecture 132 Exploring the default Helm chart content

Lecture 133 Creating our own Helm template files

Lecture 134 Creating Helm chart for Accounts microservice

Lecture 135 Creating Helm chart for other microservice

Lecture 136 Creating Helm chart for Dev and Prod environment

Lecture 137 Demo of helm template command

Lecture 138 Installing Helm charts into K8s cluster

Lecture 139 Demo of helm upgrade command

Lecture 140 Demo of helm history and rollback commands

Lecture 141 Demo of helm uninstall command

Lecture 142 Revision of important helm commands

Section 16: Securing Microservices using K8s Service

Lecture 143 Problem with Kubernetes LoadBalancer Service

Lecture 144 Problem with Kubernetes LoadBalancer Service-Demo

Lecture 145 Introduction to types of K8s Services

Lecture 146 Deep dive on ClusterIP Service - Theory

Lecture 147 Deep dive on ClusterIP Service - Demo

Lecture 148 Deep dive on NodePort Service - Theory

Lecture 149 Deep dive on NodePort Service - Demo

Lecture 150 Deep dive on LoadBalancer Service - Theory

Lecture 151 Deep dive on LoadBalancer Service - Demo

Section 17: Securing Microservices using OAuth2 client credentials grant flow

Lecture 152 Introduction to securing Spring Cloud Gateway with OAuth2

Lecture 153 Quick intro to OAuth2 framework

Lecture 154 Deep dive on OAuth2 Client Credentials grant flow

Lecture 155 KeyCloak Auth Server installation and setup using Docker command

Lecture 156 Register Client details inside KeyCloak Auth server

Lecture 157 Getting Access token from Auth Server using Client details

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

Lecture 159 Demo of Spring Cloud Gateway security inside local system

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

Lecture 161 Installation of KeyCloak into K8s cluster using Helm chart

Lecture 162 Updating Helm charts of microservices

Lecture 163 Deploying all microservices into K8s and validating security changes

Lecture 164 Introduction to Authorization

Lecture 165 Demo of Authorization changes using Spring Security - Part 1

Lecture 166 Demo of Authorization changes using Spring Security - Part 2

Section 18: Securing Microservices using OAuth2 Authorization code grant flow

Lecture 167 Introduction to OAuth2 Authorization code grant flow

Lecture 168 Deep dive of OAuth2 Authorization code grant flow

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

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

Lecture 171 Making code changes inside Spring Cloud Gateway

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

Lecture 173 Updating Helm charts of microservices

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

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

Lecture 175 Introduction to Kubernetes Ingress

Lecture 176 Introduction to Service mesh

Lecture 177 Deep dive on Service mesh and Istio

Section 20: Thank You & Congratulations

Lecture 178 Thank You & Congratulations

Lecture 179 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