Kgateway · Schema
kgateway GatewayParameters
GatewayParameters customizes gateway infrastructure deployment settings including replicas, container configuration, and proxy provisioning.
Gateways
Properties
| Name | Type | Description |
|---|---|---|
| apiVersion | string | API version for the GatewayParameters resource. |
| kind | string | Resource kind. |
| metadata | object | Standard Kubernetes object metadata. |
| spec | object | GatewayParametersSpec defines the desired state of GatewayParameters. |
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://github.com/api-evangelist/kgateway/blob/main/json-schema/gateway-parameters.json",
"title": "kgateway GatewayParameters",
"description": "GatewayParameters customizes gateway infrastructure deployment settings including replicas, container configuration, and proxy provisioning.",
"type": "object",
"properties": {
"apiVersion": {
"type": "string",
"const": "gateway.kgateway.dev/v1alpha1",
"description": "API version for the GatewayParameters resource."
},
"kind": {
"type": "string",
"const": "GatewayParameters",
"description": "Resource kind."
},
"metadata": {
"type": "object",
"description": "Standard Kubernetes object metadata.",
"properties": {
"name": {
"type": "string",
"description": "Name of the GatewayParameters resource."
},
"namespace": {
"type": "string",
"description": "Namespace of the GatewayParameters resource."
},
"labels": {
"type": "object",
"additionalProperties": { "type": "string" }
},
"annotations": {
"type": "object",
"additionalProperties": { "type": "string" }
}
},
"required": ["name"]
},
"spec": {
"type": "object",
"description": "GatewayParametersSpec defines the desired state of GatewayParameters.",
"properties": {
"kube": {
"type": "object",
"description": "Kubernetes deployment settings.",
"properties": {
"deployment": {
"type": "object",
"properties": {
"replicas": {
"type": "integer",
"description": "Number of gateway proxy replicas."
}
}
},
"podTemplate": {
"type": "object",
"description": "Pod template configuration.",
"properties": {
"extraLabels": {
"type": "object",
"additionalProperties": { "type": "string" }
},
"extraAnnotations": {
"type": "object",
"additionalProperties": { "type": "string" }
},
"nodeSelector": {
"type": "object",
"additionalProperties": { "type": "string" }
},
"tolerations": {
"type": "array",
"items": {
"type": "object",
"properties": {
"key": { "type": "string" },
"operator": { "type": "string" },
"value": { "type": "string" },
"effect": { "type": "string" }
}
}
}
}
},
"envoyContainer": {
"type": "object",
"description": "Envoy proxy container configuration.",
"properties": {
"resources": {
"type": "object",
"properties": {
"requests": {
"type": "object",
"properties": {
"cpu": { "type": "string" },
"memory": { "type": "string" }
}
},
"limits": {
"type": "object",
"properties": {
"cpu": { "type": "string" },
"memory": { "type": "string" }
}
}
}
},
"image": {
"type": "object",
"properties": {
"registry": { "type": "string" },
"repository": { "type": "string" },
"tag": { "type": "string" }
}
}
}
},
"service": {
"type": "object",
"description": "Service configuration.",
"properties": {
"type": {
"type": "string",
"enum": ["ClusterIP", "NodePort", "LoadBalancer"]
},
"extraAnnotations": {
"type": "object",
"additionalProperties": { "type": "string" }
}
}
}
}
}
}
}
}
}