Configuration
Configure the Apollo GraphOS Operator
The Apollo GraphOS Operator is configured via a YAML file mounted as a ConfigMap. The configuration supports hot reloading and is validated on startup.
Configuration Structure
YAML
1apollo:
2 endpoint: "https://api.apollographql.com/api/graphql"
3
4telemetry:
5 exporters:
6 logging:
7 stdout:
8 enabled: true
9 format: json
10 metrics:
11 otlp:
12 protocol: grpc
13 tracing:
14 otlp:
15 protocol: grpc
16
17controllers:
18 common:
19 defaultNamespace: "default"
20 requeueDelays:
21 onError: "60s"
22 onMissingData: "60s"
23 onPending: "5s"
24 studioRateLimit:
25 limit: 10
26 interval: "1s"
27 subgraph:
28 expirations:
29 schema: "60s"
30 namespaces: []
31 supergraph:
32 expirations:
33 schema: "60s"
34 namespaces: []
35 loaderImage: "localhost:5000/bundle-loader:latest"
36 supergraphSchema:
37 namespaces: []
38 composition:
39 debounce: "5s"
40 limit: 1
41 interval: "5s"
42
43oci:
44 httpOnlyRegistries: []
Configuration Sections
Apollo - Apollo Studio integration settings
Telemetry - Logging, metrics, and tracing configuration
Controllers - Controller behavior and rate limiting
OCI - Container registry settings
Example Configuration
YAML
1apollo:
2 endpoint: "https://api.apollographql.com/api/graphql"
3
4telemetry:
5 exporters:
6 logging:
7 stdout:
8 enabled: true
9 format: json
10 metrics:
11 otlp:
12 protocol: grpc
13 endpoint: "http://otel-collector:4317"
14 tracing:
15 otlp:
16 protocol: grpc
17 endpoint: "http://otel-collector:4317"
18
19controllers:
20 common:
21 defaultNamespace: "apollo"
22 studioRateLimit:
23 limit: 10
24 interval: "1s"
25 subgraph:
26 namespaces: ["apollo", "default"]
27 supergraph:
28 namespaces: ["apollo"]
29 loaderImage: "my-registry.com/bundle-loader:v1.0.0"
30 supergraphSchema:
31 namespaces: ["apollo"]
32
33oci:
34 httpOnlyRegistries: ["localhost:5000"]