Skip to content

Instantly share code, notes, and snippets.

@afro-coder
Last active December 23, 2025 17:30
Show Gist options
  • Select an option

  • Save afro-coder/e9e4ec8e710dcd18436fe0004e4ddc9c to your computer and use it in GitHub Desktop.

Select an option

Save afro-coder/e9e4ec8e710dcd18436fe0004e4ddc9c to your computer and use it in GitHub Desktop.

Airgap Documentation for Gloo Gateway Beta Release.

Uninstall the existing installation for Gloo Gateway 2.0.x

helm uninstall -n INSTALLATION_NAMESPACE gloo-gateway-crds
helm uninstall -n INSTALLATION_NAMESPACE gloo-gateway

Uninstall any CRDS that are left behind.

helm template --version 2.0.2 gloo-gateway-crds oci://us-docker.pkg.dev/solo-public/gloo-gateway/charts/gloo-gateway-crds --output-dir ./helm
kubectl delete -f helm/gloo-gateway-crds/templates

Install the Gloo Gateway beta images

helm upgrade --install enterprise-agentgateway-crds \
  oci://us-docker.pkg.dev/solo-public/gloo-gateway/charts/enterprise-agentgateway-crds \
  --version 2.1.0-beta.2 \
  --namespace enterprise-agentgateway \
  --create-namespace \
  --set installExtAuthCRDs=true \
  --set installRateLimitCRDs=true

Install enterprise-agentgateway controller

helm upgrade --install enterprise-agentgateway \
  oci://us-docker.pkg.dev/solo-public/gloo-gateway/charts/enterprise-agentgateway \
  --version 2.1.0-beta.2 \
  --namespace enterprise-agentgateway \
  --set licensing.licenseKey=$AGW
  --set controller.image.registry=YOUR_REGISTRY
  --set controller.image.repository=REPOSITORY_NAME 
  --set controller.image.tag=2.1.0-beta.2
  --set image.registry=YOUR_IMAGE_REGISTRY

List of Images to pull

extCache

docker.io/redis:7.2.4-alpine

Ext-auth

gcr.io/gloo-mesh/ext-auth-service:0.71.4

Rate-limiter

gcr.io/gloo-mesh/rate-limiter:0.16.4

Gloo Gateway Controller

us-docker.pkg.dev/solo-public/gloo-gateway/gloo-gateway-controller:2.1.0-beta.2

Gloo Gateway Agentgateway Image

ghcr.io/agentgateway/agentgateway:0.11.0-alpha.5e5533a2c6bfb8914d69662b06aef48b4e7b85d5


Creating a Gateway and Enterprise Gateway Parameters

kubectl apply -f  agentgateway-beta.yaml

Setup Routing for LLMs

setup your key in an env variable GOOGLE_KEY

envsubst < llm-deployment.yaml | kubectl apply -f-

Testing the Gemini Connection

kubectl port-forward deployment/agentgateway-proxy -n beta-agw 8080:8080 &
 curl -vik "localhost:8080/gemini" -H content-type:application/json  -d '{
  "model": "",
  "messages": [
   {"role": "user", "content": "Explain how AI works in simple terms."}
 ]
}'
---
apiVersion: enterpriseagentgateway.solo.io/v1alpha1
kind: EnterpriseAgentgatewayParameters
metadata:
name: agentgateway-proxy
namespace: beta-agw
spec:
image:
registry: ghcr.io/agentgateway
repository: agentgateway
tag: 0.11.0-alpha.5e5533a2c6bfb8914d69662b06aef48b4e7b85d5
pullPolicy: IfNotPresent
service:
metadata:
annotations:
networking.gke.io/load-balancer-type: "Internal"
sharedExtensions:
extauth:
enabled: true
container:
image:
registry: gcr.io/gloo-mesh
repository: ext-auth-service
tag: 0.71.4
pullPolicy: IfNotPresent
ratelimiter:
enabled: true
container:
image:
registry: gcr.io/gloo-mesh
repository: rate-limiter
tag: 0.16.4
pullPolicy: IfNotPresent
extCache:
enabled: false
container:
image:
registry: docker.io
repository: redis
tag: 7.2.4-alpine
pullPolicy: IfNotPresent
---
apiVersion: gateway.networking.k8s.io/v1
kind: Gateway
metadata:
name: agentgateway-proxy
namespace: beta-agw
spec:
gatewayClassName: enterprise-agentgateway
infrastructure:
parametersRef:
name: agentgateway-proxy
group: enterpriseagentgateway.solo.io
kind: EnterpriseAgentgatewayParameters
listeners:
- name: http
port: 8080
protocol: HTTP
allowedRoutes:
namespaces:
from: All
---
apiVersion: v1
kind: Secret
metadata:
name: google-secret
namespace: beta-agw
type: Opaque
stringData:
Authorization: $GOOGLE_KEY
---
apiVersion: agentgateway.dev/v1alpha1
kind: AgentgatewayBackend
metadata:
labels:
app: agentgateway
name: google
namespace: beta-agw
spec:
ai:
provider:
gemini:
model: gemini-1.5-flash # CHANGE the Model here
policies:
auth:
secretRef:
name: google-secret
---
apiVersion: gateway.networking.k8s.io/v1
kind: HTTPRoute
metadata:
name: google
namespace: beta-agw
spec:
parentRefs:
- name: agentgateway-proxy
rules:
- matches:
- path:
type: PathPrefix
value: /gemini
backendRefs:
- name: google
group: agentgateway.dev
kind: AgentgatewayBackend
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment