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.

Spring Cloud Kubernetes: An Easier Path from Idea to Production


Published on

Kubernetes might be a dream for operations teams willing to learn its intricacies, but it can be a nightmare for developers whose primary goal is getting working applications into production.

Spring Cloud Kubernetes addresses developers’ needs by making it simple to deploy Spring Cloud and Spring Boot applications into Kubernetes environments.

This webinar will explore some key Spring Cloud Kubernetes concepts and demonstrate the process of porting an existing application onto a Kubernetes cluster.

Published in: Technology
  • Be the first to comment

  • Be the first to like this

Spring Cloud Kubernetes: An Easier Path from Idea to Production

  1. 1. 1 © 2019 Pivotal Spring Cloud on Kubernetes Alexandre Roman, Platform Architect, Pivotal Inc. @Alexandre_Roman Ryan Baxter, Software Engineer, Pivotal Inc. @ryanjbaxter
  2. 2. 2 Who are we? ➔ Alexandre Roman Platform Architect, Pivotal (Paris) @Alexandre_Roman ➔ Ryan Baxter Spring Cloud Software Engineer, Pivotal (Boston) @ryanjbaxter
  3. 3. 3 Agenda ▪ Who are we? ▪ What is Spring Cloud Kubernetes? ▪ Demo time! ▪ “Native Kubernetes Implementations”
  4. 4. 4 You have choices
  5. 5. 5 Deployment choices Doesn’t Matter
  6. 6. 6 Spring Boot and Containers But the management…...
  7. 7. 7 What About Kubernetes?
  8. 8. 8 Spring Boot + Cloud & Docker + Kubernetes
  9. 9. 9 What is Spring Cloud Kubernetes?
  10. 10. 10 Why Spring Cloud Kubernetes? Write portable apps using Spring Cloud ➔ Same source code for different environments ➔ No matter which environment you use, Spring Cloud provides the right platform abstraction ➔ Seamless integration between Kubernetes and Spring ➔ Spring Cloud Kubernetes is GA since February 2019
  11. 11. 11 Spring Cloud nicely fits with Kubernetes ConfigMap/Secret support ➔ Hot reload your app when you update your configuration ➔ Inject external configuration properties using ConfigMap ➔ Map Spring config support with ConfigMap: @Values, @ConfigurationProperties ➔ Load Secret values into your beans Native service discovery ➔ Leverage Spring Cloud Netflix, without using an Eureka instance ➔ DiscoveryClient uses Kubernetes DNS resolver and cluster events ➔ Use @LoadBalanced and LoadBalancerClient for client-side load balancing across running pods ➔ Spring Cloud Circuitbreaker support (Hystrix and Resilience4j) Pod health indicator ➔ Pod health indicator contributes to Health actuator: /actuator/health Kubernetes awareness ➔ When your app is running in Kubernetes, profile kubernetes is automatically enabled for custom configuration
  12. 12. 12 Demo Time!
  13. 13. 13 What you’re about to see Deploy a Cloud-native app to Kubernetes ➔ Deployment Generation ➔ Service Discovery ➔ Load Balancing ➔ Configuration
  14. 14. 14 Do I need Spring Cloud Kubernetes?
  15. 15. 15 Under The Covers App Spring Cloud K8S K8S API Server K8S API Client This requires the App to have permissions to use the K8S API
  16. 16. 16 Use what is right for the situation Use Spring Cloud Kubernetes ➔ Existing Spring Cloud apps ◆ Uses client side load balancing ◆ Uses Discovery Client ➔ Is OK to use the Kubernetes API server directly Use Kubernetes ➔ Just planning on running on Kubernetes ➔ Familiar with Kubernetes
  17. 17. 17 Stay Connected. @ryanjbaxter @Alexandre_Roman Source code: