Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Real World Microservices with Spring Cloud, Netflix OSS and Kubernetes


Published on

SpringOne Platform 2016
Speaker: Christian Posta; Principal Architect, Red Hat

Building distributed systems - whether we call them SOA or microservices - is not easy. Open source communities like Spring, NetflixOSS and Kubernetes bring decades of experience building these systems, but the question always begs to be asked "do we implement these patterns in the application layer or in the infrastructure layer"?

This is a Java developer-oriented presentation showing developers how to approach building microservices in the real world (influenced by experiences at large enterprise customers) using application-level components like Spring, Spring Cloud, and Netflix OSS and running them on infrastructure components like Docker and Kubernetes. We'll cover some gotchas, patterns, and overall best practices for developing with this ecosystem.

Specifically we'll cover:

-Service discovery in a container, clustered environment
-Client side? Server side discovery? When to use which?
-Distributed configuration techniques in a container environment with Kubernetes and Archaius
-Bulkhead microservice interactions with Netflix OSS
-Event-driven microservices
-Application lifecycle management

Published in: Technology

Real World Microservices with Spring Cloud, Netflix OSS and Kubernetes

  1. 1. Real-World Microservices with Spring Cloud, Netflix OSS and Kubernetes Spring One Platform 8/3/16 Christian Posta @christianposta
  2. 2. Christian Posta Principal Middleware Specialist/Architect Twitter: @christianposta Blog: Email: •  Author “Microservices for Java developers” •  Committer on Apache Camel, Apache ActiveMQ, Fabric8, many others •  Worked with large Microservices, web-scale, unicorn company •  Blogger, speaker about DevOps, integration, and microservices
  3. 3. People try to copy Net,lix, but they can only copy what they see. They copy the results, not the process. Adrian Cockcroft, former Chief Cloud Architect, Netflix
  4. 4. •  Distributed configuration •  Service Discovery •  Loadbalancing •  Circuit Breakers •  Bulkheading •  Versioning/Routing •  Based on AWS
  5. 5. What about non-java?
  6. 6. Container cluster management •  Distributed configuration •  Service Discovery •  Loadbalancing •  Versioning/Routing •  Deployments •  Scaling/Autoscaling •  Liveness/Health checking •  Self healing
  7. 7. What about client-side load balancing? Eg, Ribbon, Zuul, etc
  8. 8. Meet: spring-cloud-kubernetes •  DiscoveryClient •  Ribbon integration •  Actuator/Health integrations •  Hystrix/Turbine Dashboard integrations (kubeflix) •  Zipkin Tracking •  Configuration via ConfigMaps •  Archaius Bridge for dynamic configs
  9. 9. •  Built on top of Kubernetes •  spring-cloud-kubernetes •  Kubeflix •  Funktion (serverless computing on k8s) •  1-click CI/CD (based on Jenkins workflow) •  Logging, Metrics •  ChatOps •  iPaaS/Integration •  Chaos Monkey
  10. 10. Twitter: @christianposta Blog: Email: Demo time! BTW: Hand drawn diagrams made with Paper by J