Overview
Cluster Advanced Settings allow you to fine-tune infrastructure-level parameters for your Qovery-managed Kubernetes clusters. These settings provide granular control over networking, logging, security, resource allocation, and cloud provider-specific features.Cloud Provider Availability
Settings are tagged with their supported cloud providers:AWS
Amazon Web Services
GCP
Google Cloud Platform
Azure
Microsoft Azure
Scaleway
Scaleway
Configuring Cluster Advanced Settings
Via Qovery Console (Recommended)
The easiest way to configure cluster advanced settings is directly from the Qovery Console:1
Navigate to Cluster Settings
Go to your cluster page and click on Settings
2
Open Advanced Settings
In the settings menu, select Advanced Settings
3
Configure Settings
Browse and configure the advanced settings you need. Settings are organized by category for easy navigation.
4
Save and Redeploy
Click Save and redeploy your cluster for changes to take effect

Via Qovery API
You can also configure advanced settings using the Qovery API:Via Terraform
Use the Qovery Terraform Provider to manage cluster advanced settings as code:Logs
aws.cloudwatch.eks_logs_retention_days
Cloud Provider:integer
Description: Maximum retention days in CloudWatch for EKS logs.
Valid values: 0, 1, 3, 5, 7, 14, 30, 60, 90, 120, 150, 180, 365, 400, 545, 731, 1827, 2192, 2557, 2922, 3288, 3653
Default Value: 90
aws.vpc.enable_s3_flow_logs
Cloud Provider:boolean
Description: Enable flow logs on the cluster VPC and store them in an S3 bucket.
Default Value: false
aws.vpc.flow_logs_retention_days
Cloud Provider:integer
Description: Set the number of retention days for flow logs. Set to 0 for unlimited retention.
Default Value: 365
loki.log_retention_in_week
Cloud Provider:integer
Description: Maximum Kubernetes pods (containers/applications/jobs/cronjobs) retention logs in weeks.
Default Value: 12 (84 days)
gcp.vpc.enable_flow_logs
Cloud Provider:boolean
Description: Enable VPC flow logs on the cluster VPC (on each VPC subnetwork). See GCP VPC logs flow documentation.
Default Value: false
gcp.vpc.flow_logs_sampling
Cloud Provider:float
Description: Set VPC logs flow sampling percentage. Value should be within 0.0 (no sampling) to 1.0 (all logs) range.
Default Value: 0.0
object_storage.enable_logging
Cloud Provider:boolean
Description: Activate cluster buckets logging into a <bucket>-log bucket. See documentation for AWS and GCP.
Default Value: false
DNS
dns.coredns.extra_config
Cloud Provider:string
Description: Additional configuration to add to CoreDNS. This can be used to customize DNS resolution rules on the cluster.
Default Value: null
Example:
Image Registry
registry.image_retention_time
Cloud Provider:integer
Description: Allows you to specify an amount in seconds after which images in the default registry are deleted.
Changing this setting will only affect new ECR repositories created after the change. Existing repositories will not be affected.
31536000 (1 year)
registry.mirroring_mode
Cloud Provider:string
Description: Allows you to specify the image mirroring mode to be used for each image deployed on this cluster.
Valid values: Service, Cluster
Default Value: Service
cloud_provider.container_registry.tags
Cloud Provider:Map<String, String>
Description: Add additional tags on the cluster dedicated registry.
Default Value: {}
Example:
Network - Load Balancer
aws.eks.enable_alb_controller
Cloud Provider:boolean
Description: Enable the AWS ALB controller to manage the load balancer for the cluster.
Use Case: For custom VPCs (Qovery Managed VPC does not require these), you need to add labels to subnets: kubernetes.io/role/elb=1 on public subnets, kubernetes.io/role/internal-elb=1 on private subnets, and kubernetes.io/cluster/<cluster-name>=shared on all subnets.
Default Value: true
aws.eks.alb_controller.replicas
Cloud Provider:integer
Description: Sets AWS ALB controller number of replicas. For production clusters, it’s recommended to have at least 2 replicas for high availability.
Default Value: 2
aws.eks.alb_controller.vpa.vcpu.min_in_milli_cpu
Cloud Provider:integer
Description: Sets AWS ALB controller VPA (vertical pod autoscaling) vCPU minimum value in milli CPU.
Default Value: 250
aws.eks.alb_controller.vpa.vcpu.max_in_milli_cpu
Cloud Provider:integer
Description: Sets AWS ALB controller VPA (vertical pod autoscaling) vCPU maximum value in milli CPU.
Default Value: 250
aws.eks.alb_controller.vpa.memory.min_in_mib
Cloud Provider:integer
Description: Sets AWS ALB controller VPA (vertical pod autoscaling) memory minimum value in mebibyte.
Default Value: 128
aws.eks.alb_controller.vpa.memory.max_in_mib
Cloud Provider:integer
Description: Sets AWS ALB controller VPA (vertical pod autoscaling) memory maximum value in mebibyte.
Default Value: 128
load_balancer.size
Cloud Provider:string
Description: Allows you to specify the load balancer size in front of your cluster.
Valid values: lb-s (200 Mbps), lb-gp-m (500 Mbps), lb-gp-l (1 Gbps), lb-gp-xl (4 Gbps)
Default Value: lb-s
Network - NGINX Ingress
nginx.vcpu.request_in_milli_cpu
Cloud Provider:integer
Description: vCPU request value in millicores assigned to NGINX pods.
Default Value: 200
nginx.vcpu.limit_in_milli_cpu
Cloud Provider:integer
Description: vCPU limit value in millicores assigned to NGINX pods.
Default Value: 700
nginx.memory.request_in_mib
Cloud Provider:integer
Description: Memory request value in MiB assigned to NGINX pods.
Default Value: 768
nginx.memory.limit_in_mib
Cloud Provider:integer
Description: Memory limit value in MiB assigned to NGINX pods.
Default Value: 768
nginx.hpa.cpu_utilization_percentage_threshold
Cloud Provider:integer
Description: HPA CPU threshold in percentage assigned to NGINX deployment.
Default Value: 50
nginx.hpa.min_number_instances
Cloud Provider:integer
Description: Minimum number of NGINX replicas for horizontal pod autoscaling.
Default Value: 2
nginx.hpa.max_number_instances
Cloud Provider:integer
Description: Maximum number of NGINX replicas for horizontal pod autoscaling.
Default Value: 25
nginx.controller.enable_client_ip
Cloud Provider:boolean
Description: Enables ngx_http_realip_module module to get the real client IP address.
Default Value: false
nginx.controller.enable_compression
Cloud Provider:boolean
Description: Enables compression (Brotli) for HTTP responses. When disabled, content will not be compressed, which may increase bandwidth usage but reduce CPU load.
Default Value: true
nginx.controller.use_forwarded_headers
Cloud Provider:boolean
Description: Passes incoming X-Forwarded-For header upstream. See documentation.
Default Value: false
nginx.controller.compute_full_forwarded_for
Cloud Provider:boolean
Description: Append the remote address to the X-Forwarded-For header instead of replacing it. See documentation.
Default Value: false
nginx.controller.log_format_upstream
Cloud Provider:string
Description: Allows to customize NGINX log-format.
Default Value: null
nginx.controller.log_format_escaping
Cloud Provider:string
Description: Allows to customize NGINX log-format-escaping setting.
Valid values: Default, JSON, None
Default Value: Default
nginx.controller.http_snippet
Cloud Provider:string
Description: Allows to customize NGINX http-snippet configuration. Used for cluster-level NGINX configuration that applies to all services.
Use Case: See Rate Limiting Guide for practical examples.
Default Value: null
nginx.controller.server_snippet
Cloud Provider:string
Description: Allows to customize NGINX server-snippet configuration. Used for server-level NGINX configuration.
Use Case: See Rate Limiting Guide for practical examples.
Default Value: null
nginx.controller.limit_request_status_code
Cloud Provider:integer
Description: Allows to customize NGINX limit-req-status-code. Commonly set to 429 (Too Many Requests) for rate limiting.
Default Value: null (defaults to 503)
nginx.controller.custom_http_errors
Cloud Provider:string
Description: Allows to customize NGINX custom-http-errors.
Default Value: null
Example: "404,503"
nginx.default_backend.enabled
Cloud Provider:boolean
Description: Allows enabling the default_backend for NGINX.
Default Value: false
nginx.default_backend.image_repository
Cloud Provider:string
Description: Specifies the Docker image repository used for the default_backend.
Default Value: null
nginx.default_backend.image_tag
Cloud Provider:string
Description: Defines the image tag used by default_backend.
Default Value: null
Network - Database Access Control
database.postgresql.deny_any_access
Cloud Provider:boolean
Description: Deny any access to all PostgreSQL databases.
Default Value: false
database.postgresql.allowed_cidrs
Cloud Provider:string
Description: List of allowed CIDR ranges for PostgreSQL database access.
Default Value: ["0.0.0.0/0"]
database.mysql.deny_any_access
Cloud Provider:boolean
Description: Deny any access to all MySQL databases.
Default Value: false
database.mysql.allowed_cidrs
Cloud Provider:string
Description: List of allowed CIDR ranges for MySQL database access.
Default Value: ["0.0.0.0/0"]
database.mongodb.deny_any_access
Cloud Provider:boolean
Description: Deny any access to all MongoDB databases.
Default Value: false
database.mongodb.allowed_cidrs
Cloud Provider:string
Description: List of allowed CIDR ranges for MongoDB database access.
Default Value: ["0.0.0.0/0"]
database.redis.deny_any_access
Cloud Provider:boolean
Description: Deny any access to all Redis databases.
Default Value: false
database.redis.allowed_cidrs
Cloud Provider:string
Description: List of allowed CIDR ranges for Redis database access.
Default Value: ["0.0.0.0/0"]
Service Resources
allow_service_cpu_overcommit
Cloud Provider:boolean
Description: Authorize CPU overcommit (limit > request) for services deployed within this cluster.
Use Case: Once enabled, you can update the service advanced setting resources.override.limit.cpu_in_mib.
Default Value: false
allow_service_ram_overcommit
Cloud Provider:boolean
Description: Authorize memory overcommit (limit > request) for services deployed within this cluster.
Use Case: Once enabled, you can update the service advanced setting resources.override.limit.ram_in_mib.
Default Value: false
IAM & Security
aws.iam.enable_admin_group_sync
Cloud Provider:boolean
Description: Enable IAM admin group sync. See IAM permissions setup.
Default Value: true
aws.iam.admin_group
Cloud Provider:string
Description: Allows you to specify the IAM group name associated with the Qovery user. Configure IAM group permissions for cluster access.
Default Value: Admins
aws.iam.enable_sso
Cloud Provider:boolean
Description: Enable SSO sync allowing IAM users to connect to cluster using SSO.
Default Value: false
aws.iam.sso_role_arn
Cloud Provider:string
Description: Allows you to specify the SSO role ARN to be used to connect to your cluster.
Default Value: ""
aws.eks.encrypt_secrets_kms_key_arn
Cloud Provider:string
Description: Allows you to activate KMS encryption of your Kubernetes secrets. Specify the key ARN of your AWS KMS key.
Default Value: null
k8s.api.allowed_public_access_cidrs
Cloud Provider:string
Description: Contains additional CIDRs that should be whitelisted to access the Kubernetes API.
qovery.static_ip_mode should be set to true to make this setting effective.[]
Miscellaneous
aws.eks.ec2.metadata_imds
Cloud Provider:string
Description: Specify the IMDS version you want to use.
Valid values: required (IMDS v2 only), optional (IMDS v1 and v2)
Default Value: required
aws.eks.ec2.ami
Cloud Provider:string
Description: Specify the AMI you want to use for EKS nodes.
Valid values: AmazonLinux2 (Deprecated, not working after Kubernetes 1.32), AmazonLinux2023 (Default Amazon AMI, recommended), Bottlerocket (Focuses on security and maintainability)
Default Value: AmazonLinux2023
aws.metrics_server.replicas
Cloud Provider:integer
Description: Specify the number of replicas for the metrics-server pod. Set to 2 or more in production for high availability.
Default Value: 1
qovery.static_ip_mode
Cloud Provider:boolean
Description: Enable the static IP mode for the Qovery control plane and automatically activate the private endpoint on the Kubernetes API and add the Qovery IP to the CIDR whitelist.
DockerHub credentials are required to activate this feature. Configure them in Organization settings > Container registry. Why? DockerHub has a rate limit by IP. Since the Qovery control plane will be seen as a single IP, you need authenticated access to increase the limit.
false
storageclass.fast_ssd
Type:string
Description: Specify the Kubernetes storageClass to be used for storage attached to your container databases and applications.
Default Value: Cloud provider specific
Next Steps
Service Advanced Settings
Configure service-level advanced settings
Rate Limiting Guide
Implement rate limiting with NGINX
IP Authorization Guide
Configure IP and header-based authorization
Cluster Management
Learn about cluster operations
Qovery API Reference
Explore the full Qovery API
Terraform Provider
Manage infrastructure as code