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.

Kubo (Cloud Foundry Container Platform): Your Gateway Drug to Cloud-native

838 views

Published on

You’re at the Cloud Foundry Summit, which means you are by definition a cloud-native enthusiast. There’s no question that building apps in this architectural style will produce resilient, scalable software in an agile manner, and allow you to operate it far more efficiently than you’ve been able to in the past. But you’ve also got a whole lot of software in your company’s portfolio that isn’t there yet. Do you have to resign yourself to the pains of managing those applications the old way until you can finally refactor them to be cloud-native? Kubo to the rescue.

You can run legacy applications on Kubo without significant refactoring – pure and simple. As an added bonus, it allows you to satisfy the CIO mandate of running containers (check). But it’s far more than that – running those workloads on Kubo offers advantages over running them on traditional virtualized infrastructure. This session covers those advantages –resource consolidation, health management, multi-cloud and more. It will also present the abstractions in Kubernetes, things like pods and stateful sets, that support running legacy workloads in the cloud environments that are far more distributed and changing than they have been in the past. It’s a first step to cloud-native.

Published in: Software
  • Be the first to comment

Kubo (Cloud Foundry Container Platform): Your Gateway Drug to Cloud-native

  1. 1. Kubo Your Gateway Drug to Cloud-native Cornelia Davis Sr. Director of Technology Pivotal @cdavisafcCF Summit Basel, October 2017
  2. 2. @cdavisafc Me? Developer (wasn’t Ops) Web architectures for >10 years Cloud-native for 5 years Cloud Foundry for 5 years More recently Discount code 40% off!: 40cloudnat
  3. 3. CONTAINERS EVENT-DRIVEN FUNCTIONS DATA SERVICES MICROSERVICES Batches MONOLITHIC APPLICATIONS Companies have many ways to package and run their workloads in the cloud
  4. 4. CONTAINERS EVENT-DRIVEN FUNCTIONS DATA SERVICESMICROSERVICES Batches MONOLITHIC APPLICATIONS IaaS Application
 Platform (PaaS) This is what most enterprises have today
  5. 5. CONTAINERS EVENT-DRIVEN FUNCTIONS DATA SERVICESMICROSERVICES Batches MONOLITHIC APPLICATIONS IaaS Container Orchestrator (CaaS) Application
 Platform (PaaS) Serverless
 Functions (FaaS) Their goal: pick the right runtime for each workload Kubo allows us to up-level from pure IaaS
  6. 6. So, let’s talk about workloads… What workloads are you currently running on IaaS? Code that You develop Code that Someone Else Develops
  7. 7. Code that You develop Cloud Native Traditional ArchitecturalStyle Software LifecycleInfrequent Changes Frequent Changes Developer Productivity Operational Efficiency Operational Efficiency Operational Efficiency Operational Efficiency Developer Productivity (much of it you bring yourself)
  8. 8. Code that You develop Traditional ArchitecturalStyle Software LifecycleInfrequent Changes Frequent Changes Operational Efficiency Operational Efficiency Developer Productivity (much of it you bring yourself)
  9. 9. Code thatYou developTraditional Infrequent ChangesOperational Efficiency with What are you doing for Infra deployments today?
  10. 10. Code thatYou developTraditional Infrequent ChangesOperational Efficiency with What are you doing for Infra deployments today? APP DEV QA OPERATIONS CHANGE MGMT SECURITY COMPLIANCE APPROVER APPROVER APPROVER APPROVER infrastructure
  11. 11. Code thatYou developTraditional Infrequent ChangesOperational Efficiency with Make target of existing processes the image rather than the infrastructure. APP DEV QA OPERATIONS CHANGE MGMT SECURITY COMPLIANCE APPROVER APPROVER APPROVER APPROVER docker image
  12. 12. Code thatYou developTraditional Infrequent ChangesOperational Efficiency with What are you doing for Infra deployments today? Value Minimal Disruption to Current Processes Creates “low-hanging” fruit 
 Done Infrequently Approval heavy processes okay Health Management, Logging, Scaling From Kubernetes 
 Multi-cloud Via Goodness!! 
 Kernel and Kubernetes Upgrades How do you roll out new versions of the platform with the lights on? Consolidation More fully utilize your VMs and Servers More goodness!!
  13. 13. BUT... Can I really roll the kernel or K8s version without involving the app team? While the app may be changing infrequently, the kernel or Kubernetes version is likely to cycle more frequently. Maybe…
  14. 14. cmtcmtcmt v201cmt cmt cmt cmt v202 cmt … … Prod Acceptance CI Application Team - “Developer Productivity”
  15. 15. cmt v201cmt cmt cmt cmt v202 cmt … … App Platform CVE Prod Acceptance Platform Team - “Operational Efficiency”
  16. 16. You don’t have to refactor your app, or retool your whole process, but a test suite is a significant enabler! What enables this is the existence of a rich test suite!
  17. 17. Code that You develop Traditional ArchitecturalStyle Software LifecycleInfrequent Changes Frequent Changes Operational Efficiency Operational Efficiency Developer Productivity (much of it you bring yourself)
  18. 18. Code thatYou developTraditional Frequent ChangesOperational Efficiency with How do you ensure your images meet corporate requirements? Developer Productivity ∴ frequently changing the image Well… … it’s up to you
  19. 19. Code thatYou developTraditional Frequent ChangesOperational Efficiency withDeveloper Productivity Approved Base Image Built into approved stemcell Select/build and approve base images Runtime and other filesystem dependencies Approved buildpack Build and approve Dockerfiles Allow only approved images CF Identity and Access Management Control build and/or scan image repository And more…
  20. 20. Code thatYou developTraditional Frequent ChangesOperational Efficiency withDeveloper Productivity Value Health Management, Logging, Scaling From Kubernetes 
 Multi-cloud Via Goodness!! 
 Kernel and Kubernetes Upgrades How do you roll out new versions of the platform with the lights on? Consolidation More fully utilize your VMs and Servers Developer Productivity More goodness!! But you’re changing a lot in your process and tooling Standardized Images Controlled Dockerfiles Compliance Approvals Across a Myriad of Tools … and much more.
  21. 21. Code that You develop Traditional ArchitecturalStyle Software LifecycleInfrequent Changes Frequent Changes Operational Efficiency Operational Efficiency Developer Productivity (much of it you bring yourself)
  22. 22. So, let’s talk about workloads… What workloads are you currently running on IaaS? Code that You develop Code that Someone Else Develops
  23. 23. Someone ElseCode that Cloud Native Traditional ArchitecturalStyle Software LifecycleInfrequent Changes Frequent Changes Develops
  24. 24. Someone ElseCode that Cloud NativeTraditional Architectural Style Develops
  25. 25. Code that Others developCloud Native Cloud-native Clusters & Data-centric workloads
  26. 26. Code that Others developCloud Native Anticipate Change! • Support nodes having new IP addresses on recreate • Availability zone aware • Flexible cluster topologies (i.e. dynamically scale) • Need persistence • No shared storage Cloud-native Clusters & Data-centric workloads
  27. 27. Code that Others developCloud Native Anticipate Change! • Support nodes having new IP addresses on recreate • Availability zone aware • Flexible cluster topologies (i.e. dynamically scale) • Need persistence • No shared storage Cloud-native Clusters & Data-centric workloads
  28. 28. Code that Others developCloud Native Health Management, Logging, Scaling From Kubernetes 
 Multi-cloud Via Goodness!! 
 Kernel and Kubernetes Upgrades How do you roll out new versions of the platform with the lights on? Consolidation More fully utilize your VMs and Servers Value More goodness!! Why are we running these workloads on Kubo? Already Containerized ISVs are increasingly distributing their software in containers And, all of this
  29. 29. Someone ElseCode that Cloud NativeTraditional Architectural Style Develops
  30. 30. Code that Others developTraditional BOSH VMware GCP Azure Openstack AWS K8s Cluster K8s Cluster K8s Cluster Your Application
  31. 31. Code that Others developTraditional Why?? Arguably, WLS itself gives you some of these values - but only some. Health Management, Logging, Scaling From Kubernetes 
 Multi-cloud Via Goodness!! 
 Kernel and Kubernetes Upgrades How do you roll out new versions of the platform with the lights on? Consolidation More fully utilize your VMs and Servers Value More goodness!! And possibly even licensing compression!
  32. 32. Code that Others developTraditional Leverages Stateful Sets StatefulSets are valuable for applications that require one or more of the following. • Stable, unique network identifiers. • Stable, persistent storage. • Ordered, graceful deployment and scaling. • Ordered, graceful deletion and termination. • Ordered, automated rolling updates. https://kubernetes.io/docs/concepts/workloads/controllers/statefulset/ Replace ‘Pet Sets’ Beta in 1.8
  33. 33. Code that You develop Code that Others develop ArchitecturalStyle Software Lifecycle ArchitecturalStyle Software Lifecycle
  34. 34. 34 Call to Action Run workloads on Cloud Foundry Container Runtime! And Share!
  35. 35. Thank you! Cornelia Davis Sr. Director of Technology Pivotal @cdavisafc
  36. 36. @cdavisafc Me? Developer (wasn’t Ops) Web architectures for >10 years Cloud-native for 5 years Cloud Foundry for 5 years More recently Discount code 40% off!: 40cloudnat

×