Configure agentgateway with GlooGatewayParameters.

GlooGatewayParameters provide a way for you to pass configuration for special use cases, such as passing in raw upstream configuration from a YAML file.

Before you begin

Install Solo Enterprise for agentgateway control plane.

Upstream configuration

In upstream agentgateway, you can manage configuration via a YAML or JSON file. The configuration features of agentgateway are captured in the schema of the agentgateway codebase.

Unlike in the upstream agentgateway project, you do not configure these features in a raw configuration file in Solo Enterprise for agentgateway. Instead, you configure them in a Kubernetes Gateway API-native way as explained in the guides throughout this doc set.

However, you still might want to pass in your upstream configuration file in Solo Enterprise for agentgateway. This can be useful in the following use cases:

  • Migrating from upstream to Solo Enterprise for agentgateway.
  • Using a feature that is not yet exposed via the Kubernetes Gateway or Solo Enterprise for agentgateway APIs.

Step 1: Create agentgateway configuration

Use a ConfigMap to pass upstream configuration settings directly to the agentgateway proxy.

  1. Create a ConfigMap with your agentgateway configuration. This configuration defines the binds, listeners, routes, backends, and policies that you want agentgateway to use. The key must be named config.yaml. The following example sets up a simple direct response listener on port 3000 that returns a 200 OK response with the body "hello!" for requests to the /direct path.

      kubectl apply -f- <<EOF
    apiVersion: v1
    kind: ConfigMap
    metadata:
      name: agentgateway-config
      namespace: gloo-system
    data:
      config.yaml: |-
        binds:
        - port: 3000
          listeners:
          - protocol: HTTP
            routes:
            - name: direct-response
              matches:
              - path:
                  pathPrefix: /direct
              policies:
                directResponse:
                  body: "hello!"
                  status: 200
    EOF
      
  2. Create a GlooGatewayParameters resource that refers to your ConfigMap.

      kubectl apply -f- <<EOF
    apiVersion: gloo.solo.io/v1alpha1
    kind: GlooGatewayParameters
    metadata:
      name: agentgateway-config
      namespace: gloo-system
    spec:
      kube:
        agentgateway:
          enabled: true
          customConfigMapName: agentgateway-config
    EOF
      
  3. Create a Gateway resource that sets up an agentgateway proxy that uses your GlooGatewayParameters. Set the port to a dummy value like 3030 to avoid conflicts with the binds defined in your ConfigMap.

      kubectl apply -f- <<EOF
    apiVersion: gateway.networking.k8s.io/v1
    kind: Gateway
    metadata:
      name: agentgateway-config
      namespace: gloo-system
    spec:
      gatewayClassName: agentgateway-enterprise
      infrastructure:
        parametersRef:
          name: agentgateway-config
          group: gloo.solo.io 
          kind: GlooGatewayParameters       
      listeners:
        - name: http
          port: 3030
          protocol: HTTP
          allowedRoutes:
            namespaces:
              from: All
    EOF
      

Step 2: Verify the configuration

  1. Describe the agentgateway pod. Verify that the pod is Running and that the Mounts section mounts the /config from the ConfigMap.

      kubectl describe pod -l app.kubernetes.io/name=agentgateway-config -n gloo-system
      
  2. Check the pod logs to verify that agentgateway loaded the configuration from the ConfigMap, such as by searching for the port binding.

      kubectl logs -l app.kubernetes.io/name=agentgateway-config -n gloo-system | grep 3000
      

    Example output:

      2025-10-28T13:47:01.116095Z	info	proxy::gateway	started bind	bind="bind/3000"
      
  3. Send a test request.

    Example output:

      HTTP/1.1 200 OK
    content-length: 6
    date: Tue, 28 Oct 2025 14:13:48 GMT
    
    hello!
      

Clean up

You can remove the resources that you created in this guide.
  kubectl delete Gateway agentgateway-config -n gloo-system
kubectl delete GlooGatewayParameters agentgateway-config -n gloo-system
kubectl delete ConfigMap agentgateway-config -n gloo-system
  

Enterprise configuration

Configure enterprise-only features for agentgateway with GlooGatewayParameters.

  1. Create a GlooGatewayParameters resource that configures the enterprise-only features. For options, see the API docs.

  2. Follow steps similar to the Upstream configuration section or Customize the proxy guide to create and test a Gateway resource that uses the GlooGatewayParameters.