Skip to content

Commit 365bcb7

Browse files
committed
Add Nginx Gateway HPA(nginx#3447)
1 parent 96bfecc commit 365bcb7

File tree

2 files changed

+57
-1
lines changed

2 files changed

+57
-1
lines changed

charts/nginx-gateway-fabric/README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -288,7 +288,7 @@ The following table lists the configurable parameters of the NGINX Gateway Fabri
288288
| `nginx.usage.resolver` | The nameserver used to resolve the NGINX Plus usage reporting endpoint. Used with NGINX Instance Manager. | string | `""` |
289289
| `nginx.usage.secretName` | The name of the Secret containing the JWT for NGINX Plus usage reporting. Must exist in the same namespace that the NGINX Gateway Fabric control plane is running in (default namespace: nginx-gateway). | string | `"nplus-license"` |
290290
| `nginx.usage.skipVerify` | Disable client verification of the NGINX Plus usage reporting server certificate. | bool | `false` |
291-
| `nginxGateway` | The nginxGateway section contains configuration for the NGINX Gateway Fabric control plane deployment. | object | `{"affinity":{},"config":{"logging":{"level":"info"}},"configAnnotations":{},"extraVolumeMounts":[],"extraVolumes":[],"gatewayClassAnnotations":{},"gatewayClassName":"nginx","gatewayControllerName":"gateway.nginx.org/nginx-gateway-controller","gwAPIExperimentalFeatures":{"enable":false},"image":{"pullPolicy":"Always","repository":"ghcr.io/nginx/nginx-gateway-fabric","tag":"edge"},"kind":"deployment","labels":{},"leaderElection":{"enable":true,"lockName":""},"lifecycle":{},"metrics":{"enable":true,"port":9113,"secure":false},"nodeSelector":{},"podAnnotations":{},"productTelemetry":{"enable":true},"readinessProbe":{"enable":true,"initialDelaySeconds":3,"port":8081},"replicas":1,"resources":{},"service":{"annotations":{},"labels":{}},"serviceAccount":{"annotations":{},"imagePullSecret":"","imagePullSecrets":[],"name":""},"snippetsFilters":{"enable":false},"terminationGracePeriodSeconds":30,"tolerations":[],"topologySpreadConstraints":[]}` |
291+
| `nginxGateway` | The nginxGateway section contains configuration for the NGINX Gateway Fabric control plane deployment. | object | `{"affinity":{},"autoscaling":{"annotations":{},"behavior":{},"enabled":false,"maxReplicas":11,"minReplicas":1,"targetCPUUtilizationPercentage":50,"targetMemoryUtilizationPercentage":50},"autoscalingTemplate":[],"config":{"logging":{"level":"info"}},"configAnnotations":{},"extraVolumeMounts":[],"extraVolumes":[],"gatewayClassAnnotations":{},"gatewayClassName":"nginx","gatewayControllerName":"gateway.nginx.org/nginx-gateway-controller","gwAPIExperimentalFeatures":{"enable":false},"image":{"pullPolicy":"Always","repository":"ghcr.io/nginx/nginx-gateway-fabric","tag":"edge"},"kind":"deployment","labels":{},"leaderElection":{"enable":true,"lockName":""},"lifecycle":{},"metrics":{"enable":true,"port":9113,"secure":false},"nodeSelector":{},"podAnnotations":{},"productTelemetry":{"enable":true},"readinessProbe":{"enable":true,"initialDelaySeconds":3,"port":8081},"replicas":1,"resources":{},"service":{"annotations":{},"labels":{}},"serviceAccount":{"annotations":{},"imagePullSecret":"","imagePullSecrets":[],"name":""},"snippetsFilters":{"enable":false},"terminationGracePeriodSeconds":30,"tolerations":[],"topologySpreadConstraints":[]}` |
292292
| `nginxGateway.affinity` | The affinity of the NGINX Gateway Fabric control plane pod. | object | `{}` |
293293
| `nginxGateway.config.logging.level` | Log level. | string | `"info"` |
294294
| `nginxGateway.configAnnotations` | Set of custom annotations for NginxGateway objects. | object | `{}` |

charts/nginx-gateway-fabric/values.schema.json

Lines changed: 56 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -540,6 +540,62 @@
540540
"title": "affinity",
541541
"type": "object"
542542
},
543+
"autoscaling": {
544+
"properties": {
545+
"annotations": {
546+
"required": [],
547+
"title": "annotations",
548+
"type": "object"
549+
},
550+
"behavior": {
551+
"required": [],
552+
"title": "behavior",
553+
"type": "object"
554+
},
555+
"enabled": {
556+
"default": false,
557+
"description": "Enable or disable Horizontal Pod Autoscaler",
558+
"required": [],
559+
"title": "enabled",
560+
"type": "boolean"
561+
},
562+
"maxReplicas": {
563+
"default": 11,
564+
"required": [],
565+
"title": "maxReplicas",
566+
"type": "integer"
567+
},
568+
"minReplicas": {
569+
"default": 1,
570+
"required": [],
571+
"title": "minReplicas",
572+
"type": "integer"
573+
},
574+
"targetCPUUtilizationPercentage": {
575+
"default": 50,
576+
"required": [],
577+
"title": "targetCPUUtilizationPercentage",
578+
"type": "integer"
579+
},
580+
"targetMemoryUtilizationPercentage": {
581+
"default": 50,
582+
"required": [],
583+
"title": "targetMemoryUtilizationPercentage",
584+
"type": "integer"
585+
}
586+
},
587+
"required": [],
588+
"title": "autoscaling",
589+
"type": "object"
590+
},
591+
"autoscalingTemplate": {
592+
"items": {
593+
"required": []
594+
},
595+
"required": [],
596+
"title": "autoscalingTemplate",
597+
"type": "array"
598+
},
543599
"config": {
544600
"description": "The dynamic configuration for the control plane that is contained in the NginxGateway resource.",
545601
"properties": {

0 commit comments

Comments
 (0)