[Last updated 6/2024] [NEW] Master Microservices with SpringBoot,Docker,Kubernetes (Udemy – Engsub)
About Course
Views
What you’ll learn:
What is microservices architecture and how it is different from monolithic and SOA architectures
How to build production ready microservices using Java, Spring, Spring Boot and Spring Cloud
What are cloud native apps & 15 factor methodology 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 observability and monitoring using Prometheus, Loki, Promtail, Tempo and Grafana
Securing microservices using OAuth2, OpenID connect and Spring Security
Role of Docker in microservices and how to build docker images, containers
Role of Kubernetes in microservices as a container orchestration framework
How to build event driven microservices using RabbitMQ, Kafka, Spring Cloud Functions and Spring Cloud Stream
Link gốc:
https://www.udemy.com/course/master-microservices-with-spring-docker-kubernetes/
Time Course:
39 hours (272 Lectures + Documents)
Instructor
: Madan Reddy
Total Weight:
18 GB
** Note
:
Chú ý:
Course Content
11 – Observability and monitoring of microservices
-
014 Demo of Prometheus & Grafana integration.mp4
03:42 -
025 Conclusion of Observability and Monitoring.mp4
02:53 -
024 Navigating to Tempo from Loki logs.mp4
05:04 -
023 Implementing Tracing using Grafana, Tempo & OpenTelemetry – Part 3.mp4
05:31 -
022 Implementing Tracing using Grafana, Tempo & OpenTelemetry – Part 2.mp4
04:54 -
021 Implementing Tracing using Grafana, Tempo & OpenTelemetry – Part 1.mp4
07:28 -
020 Implement OpenTelemetry changes inside microservices.mp4
09:19 -
019 Introduction to OpenTelemetry.mp4
06:08 -
018 Introduction to Distributed Tracing in microservices.mp4
09:47 -
017 Create Alerts & Send notifications using Grafana – Approach 2.mp4
07:38 -
016 Create Alerts & Send notifications using Grafana – Approach 1.mp4
11:19 -
015 Demo of Grafana inbuilt & custom Dashboards.mp4
09:31 -
001 Introduction to Observability And Monitoring Of Microservices.mp4
05:48 -
013 Demo of Prometheus.mp4
09:59 -
012 Setup of prometheus inside microservices.mp4
07:51 -
011 Setup of micrometer inside microservices.mp4
07:11 -
010 Managing metrics & monitoring with Actuator, Micrometer, Prometheus & Grafana.mp4
08:32 -
009 Implementing logging using Grafana, Loki & promtail – Part 3.mp4
13:21 -
008 Implementing logging using Grafana, Loki & promtail – Part 2.mp4
06:49 -
007 Implementing logging using Grafana, Loki & promtail – Part 1.mp4
16:15 -
006 Sample demo of logging using Grafana, Loki & promtail – Theory.mp4
05:39 -
004 Introduction to managing logs with Grafana, Loki & Promtail.mp4
06:50 -
003 Introduction to centralized logging or Log Aggregation in microservices.mp4
04:56 -
002 Observability vs. Monitoring.mp4
09:28
20 – Thank You & Congratulations
-
001 Congratulations & Thank You.mp4
02:25
19 – Introduction to Kubernetes Ingress, Service Mesh (Istio) & mTLS
-
001 Quick introduction to Kubernetes Ingress.mp4
03:43 -
002 Deep dive on Kubernetes Ingress & Ingress Controller.mp4
11:00 -
003 Benefits of Kubernetes Ingress & the kind of traffic it handles.mp4
07:33 -
004 Introduction to Service Mesh & it’s capabilities.mp4
11:39 -
005 Introduction to Service mesh components.mp4
06:54 -
006 Introduction to mTLS & deep dive on how TLS works.mp4
14:48 -
007 How does mTLS works.mp4
11:35
18 – Deploying microservices into cloud Kubernetes cluster
-
001 Kubernetes support by Cloud providers.mp4
02:55 -
002 Set up Google Cloud account & install Google Cloud SDK.mp4
08:01 -
003 Create a Kubernetes cluster in Google Cloud.mp4
03:18 -
004 Installing all our microservices and supporting components in Google Cloud K8s.mp4
09:56 -
005 Demo of eazybank microservices using Google Cloud Kubernetes Cluster.mp4
09:23 -
006 Validate Grafana components in Google Cloud Kubernetes Cluster.mp4
04:14 -
007 Deleting the Google Cloud Kubernetes Cluster.mp4
04:47
17 – Server-side service discovery and load balancing using Kubernetes
-
001 Introduction to Server-side service discovery and load balancing.mp4
07:52 -
002 How to setup discovery server in K8s cluster using spring cloud kubernetes.mp4
10:58 -
003 Install spring cloud kubernetes discovery server in K8s cluster.mp4
04:10 -
004 Making Kubernetes Discovery Client changes in microservices – Part 1.mp4
09:30 -
005 Making Kubernetes Discovery Client changes in microservices – Part 2.mp4
05:45 -
006 Updating Helm charts for Kubernetes Discovery Server changes.mp4
11:39 -
007 Demo of Server-side service discovery and load balancing.mp4
05:22
16 – Deep dive on Helm
-
010 Install KeyCloak in Kubernetes Cluster using Helm Chart.mp4
12:10 -
019 Quick revision of important helm commands.mp4
03:34 -
018 Demo of helm uninstall command.mp4
04:30 -
017 Demo of helm history and rollback commands.mp4
03:38 -
016 Demo of helm upgrade command.mp4
05:24 -
015 Install eazybank microservices in Kubernetes Cluster using Helm Chart.mp4
10:12 -
014 Install Grafana in Kubernetes Cluster using Helm Chart.mp4
07:01 -
013 Install Grafana Loki & Tempo in Kubernetes Cluster using Helm Chart.mp4
05:44 -
012 Install Prometheus in Kubernetes Cluster using Helm Chart.mp4
06:06 -
011 Install Kafka in Kubernetes Cluster using Helm Chart.mp4
07:22 -
001 Introduction to Helm & the problems that it solves.mp4
10:05 -
009 Demo of helm template command.mp4
05:34 -
008 Creating Helm charts for Dev, QA and Prod environment.mp4
08:41 -
007 Creating Helm charts for other microservices.mp4
07:00 -
006 Creating Helm chart for Accounts microservice.mp4
11:09 -
005 Creating our own Helm chart & template files.mp4
17:00 -
004 Understanding Helm Chart structure.mp4
08:23 -
003 Installing a sample Helm Chart.mp4
11:34 -
002 Installing Helm.mp4
05:35
15 – Container Orchestration using Kubernetes
-
001 Introduction to the challenges related to container orchestration.mp4
08:39 -
002 Introduction to Kubernetes.mp4
05:30 -
003 Deep dive on Kubernetes internal architecture.mp4
14:35 -
004 Setup a local Kubernetes cluster using Docker Desktop.mp4
10:03 -
005 Deploying the Kubernetes Dashboard UI.mp4
22:06 -
006 Deep dive on Kubernetes YAML configurations to deploy a microservice.mp4
16:56 -
007 Deploying ConfigServer into Kubernetes Cluster.mp4
06:41 -
008 Create environment variables inside Kubernetes Cluster using ConfigMap.mp4
07:20 -
009 Preparing Kubernetes manifest files for remaining microservices.mp4
09:29 -
010 Deploying remaining microservices into Kubernetes Cluster.mp4
11:50 -
011 Automatic Self healing inside Kubernetes cluster.mp4
06:01 -
012 Automatic Rollout & Rollback inside Kubernetes cluster.mp4
13:26 -
013 Introduction to Kubernetes Service types.mp4
11:10 -
014 Demo of Kubernetes Service types.mp4
06:50 -
015 Problems with manually created Kubernetes manifest files.mp4
05:48
14 – Event Driven microservices using Kafka, Spring Cloud Functions & Stream
-
001 Apache Kafka Vs RabbitMQ.mp4
04:18 -
002 Introduction to Apache Kafka.mp4
15:27 -
003 Producer and Consumer side stories.mp4
09:43 -
004 Installation of Apache Kafka.mp4
04:38 -
005 Implement & Demo of Async communication or event streaming using Kafka.mp4
11:06 -
006 Demo of Async comm or event streaming using Docker containers & Docker Compose.mp4
09:35
13 – Event Driven microservices using RabbitMQ,Spring Cloud Functions & Stream
-
001 Introduction to Event-driven microservices.mp4
07:38 -
002 Introduction to Event-driven models.mp4
03:26 -
003 What we are going to build using a pub sub model.mp4
06:01 -
004 Introduction to RabbitMQ.mp4
07:31 -
005 Why to use Spring Cloud Function.mp4
09:44 -
006 Develop message microservice using Spring Cloud Functions – Part 1.mp4
06:05 -
007 Develop message microservice using Spring Cloud Functions – Part 2.mp4
09:34 -
008 Develop message microservice using Spring Cloud Functions – Part 3.mp4
09:58 -
009 Why to use Spring Cloud Stream.mp4
08:10 -
010 Update message & accounts microservices to stream & process the events – Part 1.mp4
14:29 -
011 Demo of Async communication or event streaming using Rabbit MQ – Part 1.mp4
11:47 -
012 Update message & accounts microservices to stream & process the events – Part 2.mp4
14:09 -
013 Demo of Async communication or event streaming using Rabbit MQ – Part 2.mp4
04:04 -
014 Demo of Async comm or event streaming using Docker containers & Docker compose.mp4
08:33
12 – Microservices Security
-
011 Getting Access token from Auth Server in Client credentials grant flow.mp4
08:02 -
021 Demo of Microservices Security using Docker containers & Docker compose – Part 2.mp4
12:17 -
020 Demo of Microservices Security using Docker containers & Docker compose – Part 1.mp4
06:01 -
019 Demo of Authorization code grant type flow.mp4
09:07 -
018 Register client & end user inside KeyCloak for Authorization code grant flow.mp4
07:04 -
017 Securing Gateway server using Authorization Code grant type flow – Theory.mp4
06:38 -
016 Deep dive of Authorization Code grant type flow.mp4
12:11 -
015 Implement Authorization inside Gateway server using Roles – Part 2.mp4
04:18 -
014 Implement Authorization inside Gateway server using Roles – Part 1.mp4
11:26 -
013 Securing Gateway server as a Resource server – Part 2.mp4
07:30 -
012 Securing Gateway server as a Resource server – Part 1.mp4
13:47 -
001 Introduction to Microservices Security.mp4
05:29 -
010 Register client details inside KeyCloak for Client credentials grant flow.mp4
05:18 -
009 Setup Auth server using KeyCloak.mp4
05:14 -
008 Securing Gateway server using Client Credentials grant type flow – Theory.mp4
10:31 -
007 Deep dive of Client Credentials grant type flow.mp4
07:42 -
006 Introduction to IAM products & why KeyCloak.mp4
03:34 -
005 What is OpenID Connect & why it is important.mp4
09:01 -
004 OAuth2 jargons or terminologies or roles.mp4
08:43 -
003 Introduction to OAuth2.mp4
05:24 -
002 Problems that OAuth2 solves.mp4
09:28
01 – Introduction to Microservices Architecture
-
06:24
-
17:27
-
004 Comparisons between Monolithic, SOA & Microservices architecture.mp4
07:22 -
005 Definition of Microservices.mp4
01:51
10 – Making Microservices Resilient
-
011 Implementing Retry pattern in Gateway.mp4
10:48 -
020 Demo of Resiliency patterns using Docker containers & Docker compose.mp4
07:25 -
019 Aspect order of Resiliency patterns.mp4
02:30 -
018 Introduction to Bulkhead pattern.mp4
06:54 -
017 Implementing RateLimiter pattern in accounts.mp4
08:20 -
016 Implementing Redis RateLimiter in Gateway Server.mp4
09:50 -
015 Introduction to Redis RateLimiter in Gateway Server.mp4
09:32 -
014 Introduction to Rate Limitter pattern.mp4
04:51 -
013 Implementing Retry pattern in accounts – Part 2.mp4
08:48 -
012 Implementing Retry pattern in accounts – Part 1.mp4
13:06 -
001 Introduction to the need of Resiliency inside microservices.mp4
09:02 -
010 Introduction to Retry pattern.mp4
04:12 -
009 Http timeout configurations.mp4
10:28 -
008 Implementing Circuit Breaker pattern with Feign Client – Part 2.mp4
07:21 -
007 Implementing Circuit Breaker pattern with Feign Client – Part 1.mp4
09:42 -
006 Implementing Circuit Breaker pattern in Gateway – Part 2.mp4
05:30 -
005 Implementing Circuit Breaker pattern in Gateway – Part 1.mp4
17:06 -
004 Three states of Circuit Breaker pattern.mp4
04:50 -
003 Deepdive on Circuit Breaker pattern.mp4
07:19 -
002 Typical use case or scenario for the need of Resiliency.mp4
04:29
09 – Gateway, Routing & Cross cutting concerns in Microservices
-
001 Challenges while dealing external communication in microservices.mp4
04:59 -
002 Why we need a Edge Server or API Gateway inside microservices.mp4
09:45 -
003 Introduction to Spring Cloud Gateway.mp4
05:53 -
004 Deep dive on Spring Cloud Gateway internal architecture.mp4
07:37 -
005 Building Edge Server using Spring Cloud Gateway.mp4
11:36 -
006 Demo of Edge Server with default routing configs.mp4
09:40 -
007 Make changes inside Gateway server to accept service names with lower case.mp4
02:27 -
008 Implementing Custom Routing using Spring Cloud Gateway.mp4
12:02 -
009 Demo of addResponseHeader filter.mp4
07:02 -
010 Implementing Cross cutting concerns Tracing & Logging using Gateway – Part 1.mp4
13:12 -
011 Implementing Cross cutting concerns Tracing & Logging using Gateway – Part 2.mp4
14:12 -
012 Generating and pushing Docker images with Spring Cloud Gateway changes.mp4
06:42 -
013 Updating Docker Compose file to adapt Spring Cloud Gateway changes.mp4
09:00
08 – Service Discovery & Service Registration in microservices
-
010 De-registration from Eureka server when microservices shutdown.mp4
05:31 -
018 Demo of Client Side Service Discovery & Load balancing.mp4
06:00 -
017 Starting all the microservices using docker compose file.mp4
07:58 -
016 Updating Docker Compose file to adapt Service Discovery changes.mp4
06:29 -
015 Generating Docker images with Service Discovery changes & push them into Dock.mp4
05:55 -
014 Eureka Self-Preservation mode to avoid network trap issues.mp4
12:55 -
013 Feign Client code changes to invoke other microservices – Part 2.mp4
18:58 -
012 Feign Client code changes to invoke other microservices – Part 1.mp4
10:55 -
011 Demo of heartbeats mechanism to Eureka server from clients.mp4
03:23 -
001 Brief introduction about microservices traffic.mp4
04:55 -
009 Make code changes in Loans & Cards microservice to connect Eureka Server.mp4
06:53 -
008 Make code changes in Accounts microservice to connect Eureka Server.mp4
11:02 -
007 Setup Service Discovery agent using Eureka server.mp4
14:31 -
006 Spring Cloud support for Service Discovery & Registration.mp4
08:27 -
005 How Client side Service Discovery & Load-balancing works.mp4
13:19 -
004 Service Discovery & Registration inside microservices.mp4
05:58 -
003 Why not traditional load balancers for Microservices.mp4
11:29 -
002 Introduction to the Service Discovery & Registration inside microservices.mp4
05:07
07 – Using MySQL Database inside microservices
-
001 Create MySQL DB containers for microservices.mp4
18:30 -
002 Update microservices code to replace H2 DB with MySQL DB.mp4
14:58 -
003 Update docker compose file to create & use MySQL DB.mp4
14:53 -
004 Running microservices & MySQL DB containers using docker compose file.mp4
07:50 -
005 Demo of Docker network concept.mp4
07:05
06 – Configurations Management in Microservices
-
016 Updating Accounts Microservice to read properties from Config Server.mp4
09:30 -
030 Preparing Docker Compose files for QA & prod profiles.mp4
06:05 -
029 Testing Config Server changes end to end using Docker compose & default profile.mp4
12:17 -
028 Generating Docker images and pushing them into Docker Hub.mp4
06:47 -
027 Optimizing Docker Compose file.mp4
08:37 -
026 Updating Docker Compose file to adapt Config Server changes – Part 2.mp4
11:32 -
025 Introduction to Liveness and Readiness probes.mp4
10:13 -
024 Updating Docker Compose file to adapt Config Server changes – Part 1.mp4
12:15 -
023 Refresh config at runtime using Spring Cloud Bus & Spring Cloud Config monitor.mp4
15:29 -
022 Refresh configurations at runtime using Spring Cloud Bus.mp4
15:45 -
021 Refresh configurations at runtime using refresh actuator path.mp4
17:41 -
020 Encryption & Decryption of properties inside Config server.mp4
08:52 -
019 Reading configurations from a GitHub repository.mp4
11:41 -
018 Reading configurations from a file system location.mp4
05:08 -
017 Updating Loans & Cards Microservice to read properties from Config Server.mp4
05:24 -
001 Introduction to Configurations Management challenges inside microservices.mp4
06:54 -
015 Reading configurations from the class path location of Config Server.mp4
11:27 -
014 Building Config Server using Spring Cloud Config.mp4
10:02 -
013 Introduction to Spring Cloud Config.mp4
06:32 -
012 Drawbacks of externalized configurations using SpringBoot alone.mp4
06:30 -
011 Demo of Spring Boot profile changes inside loans & cards microservices.mp4
08:32 -
010 Assignment to make SpringBoot profile changes inside loans & cards microservices.mp4
02:06 -
009 Activating the profile using command-line, JVM & environment options.mp4
09:39 -
008 Externalizing configurations using command-line, JVM & environment options.mp4
06:01 -
007 Demo of Spring Boot profiles inside accounts microservice.mp4
10:05 -
006 Introduction to Spring Boot profiles.mp4
05:26 -
005 Reading configurations using @ConfigurationProperties.mp4
12:49 -
004 Reading configurations using Environment interface.mp4
07:12 -
003 Reading configurations using @Value annotation.mp4
13:25 -
002 How Configurations work in Spring Boot.mp4
10:06
05 – Deep Dive on Cloud Native Apps & 15-Factor methodology
-
001 Introduction to Cloud-native applications.mp4
04:35 -
002 Important characteristics of cloud-native applications.mp4
05:29 -
003 Differences between cloud-native Apps & Traditional enterprise Apps.mp4
03:25 -
004 Introduction to 12-factor & 15-factor methodologies.mp4
04:43 -
005 Deepdive on 15-factor methodology – Part 1.mp4
15:04 -
006 Deepdive on 15-factor methodology – Part 2.mp4
12:33 -
007 Deepdive on 15-factor methodology – Part 3.mp4
14:55
04 – Handle deployment, portability & scalability of microservices using Docker
-
011 Challenges with Dockerfile approach to generate a Docker image.mp4
04:41 -
021 Funny memes of Docker.mp4
06:35 -
020 Introduction to Docker extensions and LogsExplorer.mp4
03:11 -
019 Deep dive on Docker commands.mp4
10:45 -
018 Demo of docker compose commands.mp4
02:58 -
017 Running all microservice containers using Docker Compose command.mp4
04:57 -
016 Introduction to Docker Compose.mp4
12:34 -
015 Reading configurations from the class path location of Config Server.mp4
11:27 -
014 Compare Dockerfile, Buildpacks, Jib approaches.mp4
06:36 -
013 Generate Docker Image of Cards microservice with Google Jib.mp4
11:58 -
012 Generate Docker Image of Loans microservice with Buildpacks.mp4
12:10 -
001 Introduction to challenges while building, deploying microservices.mp4
09:12 -
010 Running accounts microservice as a Docker container.mp4
15:37 -
009 Activating the profile using command-line, JVM & environment options.mp4
09:39 -
008 Externalizing configurations using command-line, JVM & environment options.mp4
06:01 -
007 Demo of Spring Boot profiles inside accounts microservice.mp4
10:05 -
006 Introduction to the three approaches for Docker image generation.mp4
03:23 -
005 Docker installation & docker hub introduction.mp4
07:18 -
004 Introduction to Docker components & its architecture.mp4
07:05 -
003 Definition of Containers, Containerization, Docker.mp4
10:59 -
002 What are Containers & how they are different from VMs.mp4
11:23
03 – How do we right size our microservices & identify boundaries
-
001 Approaches to identify boundaries & right size microservices.mp4
13:04 -
002 Sizing & identifying boundaries with a Bank App use case.mp4
06:05 -
003 Sizing & identifying boundaries with a ecommerce migration use case.mp4
08:02
02 – Building microservices using Spring Boot
-
014 UPDATE API inside accounts microservice.mp4
09:37 -
027 Deep dive and demo of Cards microservice.mp4
10:12 -
026 Deep dive and demo of Loans microservice.mp4
16:31 -
025 Assignment to build Loans & Cards microservices.mp4
03:37 -
024 Important Annotations & Classes that supports building REST services.mp4
06:48 -
023 Enhancing documentation of REST APIs using @Schema & example data – Part 2.mp4
04:23 -
022 Enhancing documentation of REST APIs using @Schema & example data – Part 1.mp4
09:15 -
021 Enhancing documentation of REST APIs using @Tag, @Operation, @ApiResponse.mp4
07:45 -
020 Enhancing documentation of REST APIs using @OpenAPIDefinition.mp4
08:09 -
019 Introduction to documentation of REST APIs using springdoc openapi.mp4
11:03 -
018 Update audit columns using Spring Data.mp4
07:31 -
017 Perform input data validations inside accounts microservice.mp4
14:49 -
016 Handle all types of runtime exceptions using global logic inside accounts.mp4
04:52 -
015 DELETE API inside accounts microservice.mp4
07:59 -
001 How to build microservices.mp4
03:59 -
013 READ API inside accounts microservice.mp4
14:54 -
012 CREATE API inside accounts microservice – Part 2.mp4
22:07 -
011 CREATE API inside accounts microservice – Part 1.mp4
16:39 -
010 Creating DTOs inside accounts microservice.mp4
09:19 -
009 Introduction to DTO (Data Transfer Object) pattern.mp4
06:35 -
008 Writing Spring Data JPA entities & repositories to interact with DB tables.mp4
17:50 -
007 Configuring H2 DB & YAML properties.mp4
14:45 -
006 Creating Hello World REST API using @RestController.mp4
08:08 -
005 Creating a Spring Boot project.mp4
12:36 -
004 Introduction to REST APIs & best practices.mp4
07:16 -
003 Funny memes of SpringBoot framework.mp4
04:25 -
002 Introduction to SpringBoot framework.mp4
07:51