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

GraphQL Day Paris 2025 | Bringing DevOps to Gra...

Sponsored · SiteGround - Reliable hosting with speed, security, and support you can count on.
Avatar for apidays apidays PRO
February 07, 2026

GraphQL Day Paris 2025 | Bringing DevOps to GraphQL with the Apollo GraphOS

GraphOps: Bringing DevOps to GraphQL with the Apollo GraphOS Operator
Speaker: Jonathan Rainer, Staff Software Engineer at Apollo GraphQL

GraphQL Federation, having multiple GraphQL services accessible via a single endpoint, is transformative for enterprises. Modular schema, decoupled deployments, and a clear ownership model can accelerate delivery by orders of magnitude. However, rolling out Federated GraphQL at scale comes with its own challenges, such as how to make deployments safe.

The talk discusses the Apollo GraphOS Kubernetes Operator, a Kubernetes-native way for enterprises to manage GraphQL and Federation.

About the Speaker: Jonathan Rainer is a Staff Software Engineer at Apollo GraphQL. With a background in Data Platform leadership at Monzo and a PhD in Computer Science, he currently specializes in Kubernetes-native tooling for the Apollo ecosystem.

------------------------------------

Conference Details:
Conference: GraphQL Day Paris 2025 | part of FOST 2025
Date: 11 December 2025 • CNIT Forest, Paris

--------------------------

Resources from apidays:
Join our upcoming conferences: https://www.apidays.global/
Read the latest API news: https://www.apiscene.io
Explore the API Landscape: https://apilandscape.apiscene.io/

Avatar for apidays

apidays PRO

February 07, 2026
Tweet

More Decks by apidays

Other Decks in Technology

Transcript

  1. Bringing DevOps to GraphQL with the Apollo GraphOS Operator GraphOps:

    Jonathan Rainer Staff Engineer December 2025 APIDays Paris - GraphQL Day
  2. What is a Kubernetes Operator? "The operator pattern aims to

    capture the key aim of a human operator who is managing a service or set of services. Human operators who look after specific applications and services have deep knowledge of how the system ought to behave, how to deploy it, and how to react if there are problems." Kubernetes Operator Pattern Apollo GraphOS Operator
  3. Reality is more complex Apollo GraphOS Operator Apollo Router GraphQL

    Server Subgraph Schema Supergraph Schema How do I keep subgraph schema and servers in sync? How do I track schema update failures? How do I rollback? What do I do if it doesn't compose properly? How do I match what the Router expects vs what my server supports? Subgraphs Supergraphs
  4. Enter the GraphOS Operator What if you could… • Keep

    subgraph implementations and schemas in sync? • Track which subgraphs are deployed in your Kubernetes clusters? • Integrate with standard deployment tools like Argo CD? • Have safe deployments of new supergraph schemas? Apollo GraphOS Operator
  5. Subgraph CRD • Define subgraph schemas and endpoints • Schema

    source support: ◦ in-line ◦ OCI artifacts ◦ Stored in OCI images • Track latest loaded schema Apollo GraphOS Operator apiVersion: apollographql.com/v1alpha1 kind: Subgraph metadata: name: products labels: domain: retail spec: endpoint: http://my-subgraph.local/ schema: ociImage: reference: my-registry.com/my-image:latest path: /schema.graphql status: conditions: - type: SchemaLoaded reason: Loaded schema: endpoint: http://my-subgraph.local/ ociImage: sdlHash: sha256:21ef07d35176d95414ce4d30c980f2adfd77eb282de33 8fd31a973ed09791bf5 updatedAt: "2025-07-17T08:48:28.247574461Z" status: "True"
  6. SupergraphSchema CRD • Find subgraphs using label selectors • Automatically

    publish changes to GraphOS Studio with a graphRef ◦ Debounce frequent changes ◦ Built-in rate limiter against mistakes ◦ Group changes in a single mutation • Track: ◦ Detected subgraphs ◦ Composition requests ◦ Latest available schemas Apollo GraphOS Operator apiVersion: apollographql.com/v1alpha1 kind: SupergraphSchema metadata: name: retail spec: selectors: - matchLabels: domain: retail graphRef: retail-example@current status: conditions: - type: SubgraphsDetected reason: SubgraphsDetected status: "True" subgraphs: - name: products namespace: default schema: endpoint: http://my-subgraph.local/ ociImage: sdlHash: sha256:21ef07d35176d95414ce4d30c980f2adfd77eb282de33 8fd31a973ed09791bf5 updatedAt: "2025-07- 17T08:50:28.359892461Z" # Other condition types - type: CompositionRequested - type: Available
  7. Supergraph CRD • Define the Schema source ◦ SupergraphSchema resource

    ◦ Graph ref ◦ Graph ref + launch ID ◦ OCI artifact • Define the router config • Define the underlying pod templates • Track: ◦ If it can access the schema ◦ If a deployment is in progress ◦ The latest deployed version Apollo GraphOS Operator apiVersion: apollographql.com/v1alpha1 kind: Supergraph metadata: name: retail spec: replicas: 2 schema: resource: name: retail routerConfig: homepage: enabled: false sandbox: enabled: true supergraph: introspection: true podTemplate: routerVersion: 2.1.1 status: conditions: - type: SchemaLoaded reason: Loaded status: "True" schema: resource: graphRef: retail-example@current launchId: 60e579d7-... # Other condition types - type: Progressing - type: Ready
  8. Enter Safe Deployments What if you could… • Have progressive,

    canary deployments of your Supergraph driven by any metric? • What if you could design this rollout process to meet your needs? • What if you could automatically promote or rollback the Supergraph based on those metrics? • What if this could work with schema, configuration and Router version changes? Apollo GraphOS Operator
  9. What’s Next? • Ephemeral Supergraphs - Supergraphs that only exist

    for testing purposes • Further integrations with Graph Artifacts to enable truly air-gapped running • QoL Improvements
  10. Summary • GraphQL and DevOps can and should co-exist to

    enable GraphQL to reach the widest possible audience • The GraphOS Operator enables that by introducing workflows for GraphQL that are amenable to modern DevOps tools • Safe Deployments as a feature allows operators to have fine-grained control over their deployment processes
  11. Bringing DevOps to GraphQL with the Apollo GraphOS Operator GraphOps:

    Jonathan Rainer Staff Engineer December 2025 APIDays Paris - GraphQL Day
  12. Layouts How do I add a new slide with a

    preexisting layout? Layout Guidelines To add template to a blank slide, click on layout. Click on any template and start editing.
  13. Font & Sizes How do I edit text while keeping

    the same font style and size? Layout Guidelines Right click “Paste without formatting” Or select your text and click “Clear formatting”
  14. Add images How do I add a image container? Layout

    Guidelines Click on the picture icon to replace image Double Click to resize or adjust image placement Test it out here!
  15. Illustrations Library 2 IOS Android IoT Web AI API API

    CMS Event Queue Client Layer Service & data layer
  16. Exploring what we learned from hundreds of organizations transforming their

    business and customer experiences with GraphQL Insights on the rise of GraphQL John Doe Engineer Katharina Wagner October 2023 Sunday palace Engineer
  17. Exploring what we learned from hundreds of organizations transforming their

    business and customer experiences with GraphQL Insights on the rise of GraphQL John Doe Engineer Katharina Wagner Engineer October 2023 on Sunday Palace
  18. “If a monolithic architecture is working for your company, then

    don't let us be the ones to convince you otherwise. If you are down this microservices road, then Federation is a really great option.” Meeng Chee CEO at Peloton Email or contact
  19. How do the developers that support these initiatives access all

    of these APIs? Products Images Deals Reviews Inventory Recommend ations
  20. • Self-service Teams can use them asynchronously. • Paved road

    A clear, proven path for teams to follow. • Time to value New users get great results quickly. • Coherence Teams can easily find what they need. • Cohesion Features build on each other. • Opinionated A platform cannot be one-size-fits all.
  21. A subtitle with 2 lines of text. Item title Build

    variants of your graph for testing, staging, and production environments. Prevent breaking changes Ensure you can safely deliver changes across all clients using schema checks. Communicate cross-functionally Deliver notifications to systems and teams using webhooks. Title
  22. Safely ship changes to the graph. Test with ease Build

    variants of your graph for testing, staging, and production environments. Prevent breaking changes Ensure you can safely deliver changes across all clients using schema checks. Communicate cross-functionally Deliver notifications to systems and teams using webhooks. DELIVER