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.

Awesome tools to level up your spring cloud architecture pivotal webinar 2016 final

2,858 views

Published on

Getting up and running with Spring Cloud is a breeze. But once the initial setup is done, it needs to be complemented with an ecosystem that can cope with the extra operational complexity and quality concerns. While running Spring Cloud in production for over a year, Pivotal has integrated some interesting tools for documentation, operations and testing. During this talk you will see a demo of an integrated platform based on Spring Cloud, including tools like Spring Cloud Contract, wiremock, saboteur, ELK, Spinnaker, Spring Boot Admin and more. One of these tools is a dashboard for visualising Pivotal’s Spring Cloud microservice architecture, which has recently been open sourced. Documenting, testing, troubleshooting, and monitoring highly distributed systems in microservice architectures are hard. Finding quality, complementary tools in the wilds of open source can be even harder. Join this webinar for a pragmatic look at taming some of the challenges of running microservices in production.

Published in: Technology
  • Be the first to comment

Awesome tools to level up your spring cloud architecture pivotal webinar 2016 final

  1. 1. © 2016 Pivotal Awesome Tools to Level Up Your Spring Cloud Architecture Andreas Evers, Principal Consultant, Ordina
  2. 2. ZUUL EUREKA CONFIG SERVERSPRING BOOT µS HYSTRIX DASHBOARD TURBINE CONFIG BUS DATA FLOW ZIPKIN (SLEUTH) ATLAS TASK STREAM
  3. 3. ZUUL EUREKA CONFIG SERVERSPRING BOOT µS HYSTRIX DASHBOARD TURBINE SPRING BOOT ADMIN MICROSERVICES DASHBOARD SPINNAKER CONFIG BUS DATA FLOWZIPKIN (SLEUTH) ATLAS TASK PROMETHEUS CONTRACT REST DOCS SONAR / OWASP / … WIREMOCK TROUBLEMAKERELK STREAM SABOTEUR
  4. 4. https://ordina-jworks.github.io/monitoring/2016/09/23/Monitoring-with-Prometheus.html
  5. 5. • Fairly simple to integrate with Pivotal Cloud Foundry • Use a Prometheus exporter • Scrape metrics for PCF deployments, but also BOSH metrics
  6. 6. Graphite InfluxDB OpenTSDB NewRelic AppDynamics https://prometheus.io/docs/introduction/comparison/
  7. 7. Modelling Microservices at Spotify by Petter Måhlén https://www.youtube.com/watch?v=7XDA044tl8k
  8. 8. What’s the compliancy & maturity of the services? How can I accommodate recruitment & knowledge sharing? What is the technical debt of the services? Which teams do I need to chase? Are budget & priorities in line with the architectural goals? How do I manage change in a DevOps organisation? “
  9. 9. What functionality can I reuse? Which resources are exposed by what services? Which events & messages are sent back and forth? Which services are impacted by a change? How does a functional flow travel through the layers of the architecture? What is coming up, & can I define the future state of the ecosystem? “
  10. 10. Which versions are deployed where? Are my deployments successful? Which versions do my dependencies have? Where can I find everything related to my services? “
  11. 11. SABOTEUR WIREMOCK
  12. 12. HTTP 500 Random Data Malformed Data Empty Response Total Network Partition Remote Service Not Listening to Port Packet Loss TCP Connection Timeout (~ firewall)
  13. 13. Six principles for building fault tolerant microservices on the JVM by Christopher Batey https://www.youtube.com/watch?v=dKWNZnuZhd0
  14. 14. Returns 10 propertiesUses property 1-2
  15. 15. Uses property 1-2 Uses property 3-4 Uses property 3-5 Uses property 4-5 Returns 10 properties
  16. 16. Returns 10 propertiesUses property 1-2 Consumer 1 uses property 1-2 PR
  17. 17. Returns 10 propertiesUses property 1-2
  18. 18. Sonarqube / OWASP / FindSecBugs / …
  19. 19. generated snippets manually written template generated HTML integration tests
  20. 20. interface CompactView {}; class Car { @JsonView(CompactView.class) private String brand; private int doors; ... } @RestController class CarController { @JsonView(CompactView.class) @GetMapping("/car") public String getCar() { return new Car("BMW", 5); } }
  21. 21. interface V1{}; interface V2{}; class Car { @JsonView(V1.class) private String brand; @JsonView(V2.class) private int doors; ... }
  22. 22. @RestController class CarController { @GetMapping(path = "/car", produces = "application/vnd.pvt.car.v1+json") @JsonView(V1.class) public String getCarV1() { return new Car("BMW", 5); } @GetMapping(path = "/car", produces = "application/vnd.pvt.car.v2+json") @JsonView(V2.class) public String getCarV2() { return new Car("BMW", 5); } }
  23. 23. AWS re:Invent 2016: Multi-Region Delivery Netflix Style (DEV311) by Andy Glover https://www.youtube.com/watch?v=1HiilTXQo4w
  24. 24. ZUUL EUREKA CONFIG SERVERSPRING BOOT µS HYSTRIX DASHBOARD TURBINE SPRING BOOT ADMIN MICROSERVICES DASHBOARD SPINNAKER CONFIG BUS DATA FLOWZIPKIN (SLEUTH) ATLAS TASK PROMETHEUS CONTRACT REST DOCS SONAR / OWASP / … WIREMOCK TROUBLEMAKERELK STREAM SABOTEUR
  25. 25. ZUUL SPRING CLOUD SERVICES SPRING CLOUD SERVICES SPRING BOOT µS SPRING CLOUD SERVICES SPRING CLOUD SERVICES PCF APPS MANAGER MICROSERVICES DASHBOARD CONCOURSE, SPINNAKER CONFIG BUS DATA FLOWZIPKIN (SLEUTH) ATLAS TASK PCF METRICS* CONTRACT REST DOCS SONAR / OWASP / … WIREMOCK TROUBLEMAKER PCF LOG SEARCH PCF METRICS* STREAM SABOTEUR
  26. 26. • Cloud Foundry Service Broker / BOSH release • NetflixOSS and more as native managed PCF services • Simple install and configure NetflixOSS • Reduce setup time and cost across many environments • Simple to operate, upgrade with zero downtime • PCF managed • dramatically lower ops requirement • Security • OAUTH2, HTTPS, PCF UAA integration, Role based access control SPRING CLOUD SERVICES FOR PCF
  27. 27. 59 Twitter: twitter.com/andreasevers Tech blog: ordina-jworks.github.io Demo environment: TVH: www.tvh.com

×