Service Mesh for Java Developers

A presentation at Amsterdam JUG in April 2023 in Amsterdam, Netherlands by Viktor Gamov

Slide 1

Slide 1

🕸 Service Mesh for ☕ Java Developers AMSTERDAM JUG, NETHERLANDS, 2023 @gamussa | @AmsterdamJUG | @thekonginc

Slide 2

Slide 2

It used to be so simple…

Slide 3

Slide 3

THE CLOUD CONNECTIVITY COMPANY @gamussa | @AmsterdamJUG | @thekonginc

Slide 4

Slide 4

THE CLOUD CONNECTIVITY COMPANY @gamussa | @AmsterdamJUG | @thekonginc

Slide 5

Slide 5

Slide 6

Slide 6

Refactoring to microservices

Slide 7

Slide 7

Viktor GAMOV Principal Developer Advocate f THE CLOUD CONNECTIVITY COMPANY @gamussa | @kumamesh | @thekonginc Kong Con idential

Slide 8

Slide 8

Network is a Computer THE CLOUD CONNECTIVITY COMPANY @gamussa | @AmsterdamJUG | @thekonginc

Slide 9

Slide 9

Network is a Computer THE CLOUD CONNECTIVITY COMPANY @gamussa | @AmsterdamJUG | @thekonginc

Slide 10

Slide 10

FROM CPU TO NETWORK RK O W ET N THE CLOUD CONNECTIVITY COMPANY @gamussa | @AmsterdamJUG | @thekonginc R T! S UE EQ

Slide 11

Slide 11

THE CLOUD CONNECTIVITY COMPANY @gamussa | @AmsterdamJUG | @thekonginc

Slide 12

Slide 12

{TCP} MONOLITH THE CLOUD CONNECTIVITY COMPANY DATABASE @gamussa | @AmsterdamJUG | @thekonginc

Slide 13

Slide 13

KNOWN NETWORK PROBLEMS ENCRYPTION IDENTITY TRAFFIC ACL ROUTING VERSIONING DEPLOYMENTS OBSERVABILITY LOGGING TRACING RESILIENCY ZERO-TRUST CHAOS THE CLOUD CONNECTIVITY COMPANY @gamussa | @AmsterdamJUG | @thekonginc

Slide 14

Slide 14

KNOWN NETWORK PROBLEMS MICROSERVICE 1 THE CLOUD CONNECTIVITY COMPANY @gamussa | @AmsterdamJUG | @thekonginc

Slide 15

Slide 15

KNOWN NETWORK PROBLEMS MICROSERVICE 1 Ribbon THE CLOUD CONNECTIVITY COMPANY @gamussa | @AmsterdamJUG | @thekonginc

Slide 16

Slide 16

KNOWN NETWORK PROBLEMS MICROSERVICE 1 Ribbon EUREKA Service Discovery THE CLOUD CONNECTIVITY COMPANY @gamussa | @AmsterdamJUG | @thekonginc

Slide 17

Slide 17

KNOWN NETWORK PROBLEMS MICROSERVICE 1 Ribbon EUREKA Service Discovery THE CLOUD CONNECTIVITY COMPANY @gamussa | @AmsterdamJUG | @thekonginc

Slide 18

Slide 18

KNOWN NETWORK PROBLEMS MICROSERVICE 1 Ribbon EUREKA Service Discovery THE CLOUD CONNECTIVITY COMPANY RESILIENCE4J @gamussa | @AmsterdamJUG | @thekonginc

Slide 19

Slide 19

KNOWN NETWORK PROBLEMS MICROSERVICE 1 Ribbon EUREKA Service Discovery RESILIENCE4J Centralized Con ig f THE CLOUD CONNECTIVITY COMPANY @gamussa | @AmsterdamJUG | @thekonginc

Slide 20

Slide 20

KNOWN NETWORK PROBLEMS MICROSERVICE 1 Ribbon EUREKA Service Discovery RESILIENCE4J Centralized Con ig f THE CLOUD CONNECTIVITY COMPANY @gamussa | @AmsterdamJUG | @thekonginc

Slide 21

Slide 21

KNOWN NETWORK PROBLEMS MICROSERVICE 1 Ribbon EUREKA Service Discovery RESILIENCE4J Centralized Con ig METRICS Grafana Prometheus f THE CLOUD CONNECTIVITY COMPANY @gamussa | @AmsterdamJUG | @thekonginc

Slide 22

Slide 22

KNOWN NETWORK PROBLEMS MICROSERVICE 1 Ribbon EUREKA Service Discovery RESILIENCE4J Centralized Con ig METRICS Grafana Prometheus f THE CLOUD CONNECTIVITY COMPANY @gamussa | @AmsterdamJUG | @thekonginc

Slide 23

Slide 23

KNOWN NETWORK PROBLEMS MICROSERVICE 1 Ribbon EUREKA Service Discovery RESILIENCE4J Centralized Con ig METRICS Grafana Prometheus f THE CLOUD CONNECTIVITY COMPANY @gamussa | @AmsterdamJUG | @thekonginc

Slide 24

Slide 24

KNOWN NETWORK PROBLEMS MICROSERVICE 1 Ribbon EUREKA Service Discovery RESILIENCE4J Centralized Con ig METRICS Jaeger/Otel f THE CLOUD CONNECTIVITY COMPANY TRACING @gamussa | @AmsterdamJUG | @thekonginc Grafana Prometheus

Slide 25

Slide 25

KNOWN NETWORK PROBLEMS MICROSERVICE 1 Ribbon EUREKA Service Discovery RESILIENCE4J Centralized Con ig METRICS Jaeger/Otel f THE CLOUD CONNECTIVITY COMPANY TRACING @gamussa | @AmsterdamJUG | @thekonginc Grafana Prometheus

Slide 26

Slide 26

KNOWN NETWORK PROBLEMS API Gateway MICROSERVICE 1 Ribbon EUREKA Service Discovery RESILIENCE4J Centralized Con ig METRICS Jaeger/Otel f THE CLOUD CONNECTIVITY COMPANY TRACING @gamussa | @AmsterdamJUG | @thekonginc Grafana Prometheus

Slide 27

Slide 27

KNOWN NETWORK PROBLEMS API Gateway MICROSERVICE 1 Ribbon EUREKA Service Discovery RESILIENCE4J Centralized Con ig METRICS Jaeger/Otel f THE CLOUD CONNECTIVITY COMPANY TRACING @gamussa | @AmsterdamJUG | @thekonginc Grafana Prometheus

Slide 28

Slide 28

KNOWN NETWORK PROBLEMS API Gateway MICROSERVICE 1 Ribbon EUREKA Service Discovery RESILIENCE4J Centralized Con ig METRICS Jaeger/Otel f THE CLOUD CONNECTIVITY COMPANY TRACING @gamussa | @AmsterdamJUG | @thekonginc Grafana Prometheus

Slide 29

Slide 29

BUILD ONCE, USE EVERYWHERE MICROSERVICE 1 Ribbon RESILIENCE4J METRICS TRACING THE CLOUD CONNECTIVITY COMPANY @gamussa | @AmsterdamJUG | @thekonginc

Slide 30

Slide 30

BUILD ONCE, USE EVERYWHERE MICROSERVICE 1 Ribbon RESILIENCE4J METRICS TRACING THE CLOUD CONNECTIVITY COMPANY @gamussa | @AmsterdamJUG | @thekonginc

Slide 31

Slide 31

BUILD ONCE, USE EVERYWHERE MICROSERVICE 1 MICROSERVICE 1 Ribbon RESILIENCE4J METRICS TRACING THE CLOUD CONNECTIVITY COMPANY @gamussa | @AmsterdamJUG | @thekonginc

Slide 32

Slide 32

BUILD ONCE, USE EVERYWHERE MICROSERVICE 1 MICROSERVICE 1 Ribbon RESILIENCE4J METRICS TRACING THE CLOUD CONNECTIVITY COMPANY @gamussa | @AmsterdamJUG | @thekonginc

Slide 33

Slide 33

HOST / VM / POD HOST / VM / POD {TCP} SERVICE SERVICE localhost THE CLOUD CONNECTIVITY COMPANY localhost @gamussa | @AmsterdamJUG | @thekonginc

Slide 34

Slide 34

ONE INSTANCE OF PROXY ON EVERY REPLICA OF EVERY SERVICE HOST / VM / POD HOST / VM / POD HOST / VM / POD HOST / VM / POD HOST / VM / POD HOST / VM / POD SERVICE SERVICE SERVICE THE CLOUD CONNECTIVITY COMPANY SERVICE SERVICE SERVICE @gamussa | @AmsterdamJUG | @thekonginc

Slide 35

Slide 35

HOST / VM / POD HOST / VM / POD {TCP} SERVICE SERVICE Proxy configuration statically defined THE CLOUD CONNECTIVITY COMPANY Proxy configuration statically defined @gamussa | @AmsterdamJUG | @thekonginc

Slide 36

Slide 36

HOST / VM / POD HOST / VM / POD {TCP} SERVICE SERVICE Proxy configuration is being dynamically propagated and applied CONF SERVICE THE CLOUD CONNECTIVITY COMPANY @gamussa | @AmsterdamJUG | @thekonginc

Slide 37

Slide 37

HOST / VM / POD HOST / VM / POD DATA PLANE DATA PLANE {TCP} SERVICE SERVICE Proxy configuration is being dynamically propagated and applied CONTROL PLANE THE CLOUD CONNECTIVITY COMPANY @gamussa | @AmsterdamJUG | @thekonginc

Slide 38

Slide 38

SERVICE MESH HOST / VM / POD HOST / VM / POD DATA PLANE DATA PLANE {TCP} SERVICE SERVICE Proxy configuration is being dynamically propagated and applied CONTROL PLANE THE CLOUD CONNECTIVITY COMPANY @gamussa | @AmsterdamJUG | @thekonginc

Slide 39

Slide 39

DATA PLANE: CONTROL PLANE: envoyproxy.io kuma.io THE CLOUD CONNECTIVITY COMPANY @gamussa | @AmsterdamJUG | @thekonginc

Slide 40

Slide 40

STOP! Demo time! @gamussa | @AmsterdamJUG | @thekonginc

Slide 41

Slide 41

Please, subscribe to my YouTube channel ™ @gamussa | @AmsterdamJUG | @thekonginc

Slide 42

Slide 42

Please, subscribe to my YouTube channel ™ https://youtube.com/konginc @gamussa | @AmsterdamJUG | @thekonginc