1import{_ as s,C as n,o as l,c as h,a2 as o,E as i,j as t,a}from"./chunks/framework.EKHOCD1Q.js";const m=JSON.parse('{"title":"Architecture Overview","description":"How Inference Gateway is structured, how requests flow through optional OIDC auth and the proxy layer to upstream LLM providers, and how the gateway runs on Kubernetes.","frontmatter":{"title":"Architecture Overview","description":"How Inference Gateway is structured, how requests flow through optional OIDC auth and the proxy layer to upstream LLM providers, and how the gateway runs on Kubernetes.","head":[["link",{"rel":"canonical","href":"https://docs.inference-gateway.com/architecture-overview/"}],["meta",{"property":"og:url","content":"https://docs.inference-gateway.com/architecture-overview/"}]]},"headers":[],"relativePath":"architecture-overview/index.md","filePath":"architecture-overview.md","lastUpdated":1790193104000}'),c={name:"architecture-overview/index.md"};function d(p,e,u,v,w,f){const r=n("FlowDiagram");return l(),h("div",null,[e[0]||(e[0]=o("",4)),i(r,{flow:"request"}),e[1]||(e[1]=o("",3)),i(r,{flow:"kubernetes"}),e[2]||(e[2]=t("p",null,[a("Pods are interchangeable. Add capacity with an HPA, remove pods with rolling updates. The "),t("code",null,"Monitoring Stack"),a(" here represents the "),t("code",null,"ServiceMonitor"),a(" + Prometheus + Grafana pipeline kube-prometheus-stack deploys around the gateway - see "),t("a",{href:"/observability/"},"Observability"),a(" for the full setup, and the "),t("a",{href:"/operator/"},"Kubernetes Operator"),a(" for managing this topology declaratively as Custom Resources.")],-1))])}const y=s(c,[["render",d]]);export{m as __pageData,y as default};
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.