Upgrade to Pro — share decks privately, control downloads, hide ads and more …

KubeCon EU: Unlocking new Platform Experiences with Open Interfaces

Salaboy
March 23, 2024

KubeCon EU: Unlocking new Platform Experiences with Open Interfaces

for more information visit: https://salaboy.com

Salaboy

March 23, 2024
Tweet

More Decks by Salaboy

Other Decks in Technology

Transcript

  1. Mauricio Salatino & Thomas Vitale KubeCon+CloudNativeCon Europe Mar 21st, 2024

    Unlocking New Platform Experiences with Open Interfaces @vitalethomas @salaboy
  2. Challenges That teams face when trying to go faster Onboarding

    Process Application Runtime and Operations Distributed Systems @salaboy @vitalethomas
  3. Let’s Start with a Demo Polyglot Distributed System Based on

    https://github.com/dockersamples/example-voting-app @salaboy @vitalethomas
  4. diagrid.io • Software Engineer and CNCF Ambassador. • Author of

    “Platform Engineering on Kubernetes” (Manning). • @DaprDev @KnativeProject @KeptnProject Mauricio Salatino salaboy.com @Salaboy
  5. Systematic • Software Engineer and CNCF Ambassador. • Author of

    “Cloud Native Spring in Action” (Manning). • OSS contributor (Java, Spring, Cloud Native Technologies) Thomas Vitale thomasvitale.com @vitalethomas
  6. Onboarding Process Risk of complexity and high cognitive load for

    developers How to bootstrap a new project? Containerization? Is the developer’s responsibility? Local development work fl ow requiring Kubernetes? Di ff erent con fi guration between local and production? What’s the overall cognitive load for developers using the platform? @salaboy @vitalethomas
  7. Dealing with State Challenges * Do you run infrastructure like

    Redis and PostgreSQL locally for development? Do you run them using Docker Compose? * We introduced coupling between the apps and the environment (the infrastructure that they need to run) * Is Redis and PostgreSQL for local development the same versions as the one running in Production? * How are clients/drivers con fi gured? Di ff erent con fi gurations lead to applications behaving unexpectedly di ff erent @salaboy @vitalethomas
  8. Event-Driven Scenarios Challenges * Event-Driven interactions can enable multiple integrations,

    platforms should promote and support complex event interactions * But, event-driven applications involve several consumers and producers. Coupling is introduced between the services and the infrastructure * Message Brokers like Kafka, RabbitMQ or cloud provider speci fi c services are complex to set up and miscon fi gurations can cause the entire application to stop working @salaboy @vitalethomas
  9. Complex Service Orchestrations * Sometimes we need more than just

    calling X services in a sequence * We want to make sure that: * If things fail we have a backup plan like: custom retries, circuit breakers and domain-speci fi c logic hooks * Support for long running and stateful interactions, for example waiting for a human input that might be on holidays * That we have compensation logic to undo operations @salaboy @vitalethomas
  10. Application Runtime and Operations The Complexity of Going to Production

    How to rollout new deployments safely? Does the app have to be platform- aware? Autoscaling? Can we scale from zero? Can you infer the state of the app from its output signals? How to manage and operate a platform? @salaboy @vitalethomas
  11. Empowering Application Teams Development Work fl ows @salaboy @vitalethomas Dagger

    Implement pipelines using your favourite programming language. Knative Functions Bootstrap, build, and deploy Kubernetes- native functions. Testcontainers Dev and test services integrated in the application lifecycle.
  12. Application Runtime Going to Production @salaboy @vitalethomas OpenFunction Kubernetes-native function

    runtime and lifecycle management. Knative Serving Serverless deployments, autoscaling, scaling from zero. KEDA Event-driven autoscaling, extensible, function- aware.
  13. Platform Operations Building and maintaining a platform @salaboy @vitalethomas Carvel

    Kubernetes-native package management for portable platforms. Flux Continuous deployment via GitOps and RegistryOps. OpenTelemetry Uni fi ed APIs and protocols for observability signals (logs, metrics, traces…).
  14. Takeaways * APIs, standards and open source projects: help you

    to protect your platform investments * Speedy Onboarding process: simplify and reduce cognitive load from new team members * Out of the Box Cloud-Native patterns: abstract away complexity to reduce cross-environment differences * Smooth Operations: optimise for your use cases, there is no silver bullet @salaboy @vitalethomas