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

Building a Technology Stack for Your Kubernetes...

Building a Technology Stack for Your Kubernetes-Based Platform

In previous articles and in a previous webinar , We’ve spoken widely about the four capabilities that are necessary for enabling full-cycle development when building a cloud native platform: container management, progressive delivery, edge management, and observability.

In this webinar, we’ll look at the technology that enables these four capabilities. To build a Kubernetes-based platform, you need four technologies:

Kubernetes is a container management system that enables development teams to work in a self-service manner in relation to the operational aspects of running containers.
Continuous Delivery Pipelines enable teams to deliver any and all application changes including experiments, new features, configuration, and bug fixes, into production as rapidly and safely as the organization requires.
An Edge Stack sits at the Kubernetes cluster edge and enables the controlled release of applications, supports the configuration of cross-functional edge requirements, and simplifies developer onboarding and the use of associated APIs.
The Observability Stack monitors the health of a system and enables teams to gradually optimize a systems health while also giving them the tools needed to recognize and react immediately to changes in health.

Learn More:
Kubernetes cloud native platform Get Started https://www.getambassador.io/kubernetes-learning-center/

Getambassador.io

March 07, 2022
Tweet

More Decks by Getambassador.io

Other Decks in Technology

Transcript

  1. tl;dr • Adopting a “cloud native” approach is the new

    norm • This requires new technologies and new workflows • Creating a supporting cloud platform is essential ◦ Container orchestration ◦ Progressive delivery ◦ Edge management ◦ Observability • Consciously design your platform. Watch for antipatterns
  2. A quick recap... • Going “cloud native” offers benefits, but

    requires changes • Successful cloud native organisations have ◦ Created a self-service application platform ◦ Adopted new tools and (full cycle) developer workflows • Recognised four core platform capabilities
  3. Avoiding Platform Antipatterns Centralized Design and Ownership: One Size Doesn’t

    Fit All Fragmented Platform Implementation Slow Development Loops: Less Time Coding, More Time Toiling
  4. Antipattern: Centralized Design and Ownership • Economies of scale •

    Overzealous guardrails • Modification is ticket-driven
  5. 1. Container management 2. Progressive delivery 3. Edge management 4.

    Observability Four Core Platform Capabilities
  6. Manage and run container-based applications at scale and on a

    variety of infrastructures • Developers ◦ Self-service interactions: automated and observable • Platform team ◦ Set policies around access, control, and auditability Container Management
  7. • Kubernetes is the de facto container orchestrator • Cloud

    agnostic fabric(?) ◦ Google Anthos, Azure Stack • Kubernetes provides: ◦ Declarative configuration and control loops ◦ A shared abstraction Kubernetes
  8. Kubernetes Decisions • To self-host, or not to self-host? •

    Which distro? • Going all-in on a cloud?
  9. Kubernetes Challenges • Open for extension, closed for modification ◦

    Helm for deployment ◦ Operators for automation • Developer productivity ◦ Local-to-remote dev and test
  10. Progressive Delivery Supporting the creation of pipelines that enable the

    automated build, verification, deployment, release, and observability • Developers ◦ Self-service interactions: automated and observable • Platform team ◦ Centralize verification of quality and security properties https://redmonk.com/jgovernor/2018/08/06/towards-progressive-delivery/
  11. • Deliver any and all application changes into production as

    rapidly and as safely as the organisation requires • Includes experiments, new features, configuration, and bug fixes • Deployments should be routine and drama free Continuous/progressive delivery pipelines
  12. Progressive Delivery Challenges • Collaboration between dev, QA, and ops

    • Balance one-size-fits-all vs chaos • Make it easy to do the right thing
  13. Edge Management Enable the self-service release of new functionality by

    developers, while maintaining stability • Developers ◦ Decentralized traffic management ◦ Support NFRs e.g. authn/z, retries, and circuit breaking • Platform ◦ Centralized configuration of sane defaults ◦ TLS, authn/z, and rate limiting for DDoS protection
  14. • First contact between users and biz services • The

    edge stack is focused on: ◦ Controlled release of new functionality; ◦ Cross-functional edge requirements: security and reliability ◦ Supporting developer onboarding • Separate deploy and release The Edge Stack
  15. Edge Stack Decisions • Edge technologies • Deploy/release workflows ◦

    Declarative ◦ Self-service ◦ Scalable (more microservices, more APIs)
  16. Edge Stack Challenges • Scaling edge management • Supporting multiple

    protocols and NFRs https://www.getambassador.io/resources/challenges-api-gateway-kubernetes/
  17. Observability Support the collection and analysis of end user and

    application feedback directly by developers and the platform team. • Developers ◦ Enable product teams to observe and iterate against business goals and KPIs • Platform ◦ Observe and managing infrastructure, and ensure their service level objectives (SLOs) are met
  18. • Infer what is occurring within a software system ◦

    Gradually improving an SLI ◦ Rapidly restoring an SLI • Monitoring, logging, and tracing ◦ UX Observability
  19. Observability Decisions • Adoption (monitor all-the-things?) • Technology selection ◦

    Metrics ◦ Logging ◦ Distributed tracing • Joining the dots (open standards)
  20. Observability Challenges • Self-service config and dashboards • Increasing signal-to-noise

    • Fault location https://medium.com/@copyconstruct/monitoring-and-observability-8417d1952e1c
  21. In Summary • Adopting a “cloud native” approach is the

    new norm • This requires new technologies and new workflows • Creating a supporting cloud platform is essential ◦ Container orchestration ◦ Progressive delivery ◦ Edge management ◦ Observability • Consciously design your platform. Watch for antipatterns
  22. Read “Building a Kubernetes Platform”: https://www.getambassador.io/learn/building-kubernetes-platform/ Subscribe to our podcasts:

    https://www.getambassador.io/resources?types=Podcast Follow us on Twitter: https://twitter.com/getambassadorio Learning More...