CNE Azure Ready: Helm Values Reference
This reference describes the values files in the GitOps repository of a CNE Azure Ready deployment, the Helm charts that read them, and their default values. It describes liferay-azure-bootstrap 0.3.0 and the charts it installs: liferay-azure 0.3.0 (which wraps liferay-default 4.0.0), liferay-infrastructure 0.2.0, liferay-azure-infrastructure-provider 0.3.0, and observability 2.0.0.
The bootstrap reads config.json. After the bootstrap, you set environment values in the GitOps repository, and Argo CD applies each change you commit. For the values in config.json, see CNE Azure Ready: Bootstrap Configuration Reference.
GitOps Values Files
Argo CD reads these files from the GitOps repository:
liferay/
├── projects
│ └── <projectId>
│ ├── base
│ │ ├── infrastructure.yaml
│ │ └── liferay.yaml
│ ├── environments
│ │ └── <environmentId>
│ │ ├── infrastructure.yaml
│ │ └── liferay.yaml
│ └── project.yaml
└── system
├── infrastructure-provider.yaml
└── observability.yaml
| File | Chart | Argo CD Application | Scope |
|---|---|---|---|
liferay/projects/<projectId>/environments/<environmentId>/liferay.yaml | liferay-azure | <projectId>-<environmentId>-app | The Liferay DXP workload of one environment |
liferay/projects/<projectId>/environments/<environmentId>/infrastructure.yaml | liferay-infrastructure | <projectId>-<environmentId>-infra | The Azure resources, search cluster, gateway, certificates, and license of one environment |
liferay/projects/<projectId>/project.yaml | liferay-infrastructure | <projectId>-resources | Resources shared by a project’s environments |
liferay/system/infrastructure-provider.yaml | liferay-azure-infrastructure-provider | liferay-infrastructure-provider | Resources shared by the whole deployment |
liferay/system/observability.yaml | observability | liferay-observability | The observability stack |
Argo CD creates an environment’s applications from the files in its environments/<environmentId> folder: an environment folder without a liferay.yaml has no Liferay DXP application, and one without an infrastructure.yaml has no infrastructure application. Both environment applications deploy to the liferay-<projectId>-<environmentId> namespace.
For liferay.yaml and infrastructure.yaml, Argo CD applies the file in liferay/projects/<projectId>/base first and the environment’s file second, so a value in the environment’s file overrides the same value in base. Put values that every environment of a project shares in base.
Values the Platform Sets
The platform passes these values to the charts as Argo CD Helm parameters, which take precedence over the values files. Do not set them in your files.
| Application | Values |
|---|---|
<projectId>-<environmentId>-app | global.database.engine (from setup.database.engine in config.json), global.liferayServiceAccount.create (false), global.liferayServiceAccount.name (liferay-default), liferay-default.network.gatewayName (<projectId>-<environmentId>-gateway), liferay-default.clientExtensions.delivery.*, liferay-default.licensing.onlineActivationWorkflow.enabled (true), and global.azure.prometheusWorkspaceEndpoint |
<projectId>-<environmentId>-infra | clusterSecretStoreName, environmentId, projectId, gateway.className (liferay-gateway-class), gateway.name (<projectId>-<environmentId>-gateway), overlayBucket.enabled (false), and persistence.storageClassName (managed-csi-premium-v2) |
<projectId>-resources | enabled (false) and projectId |
liferay-infrastructure-provider | database.engine, deploymentContext.*, deploymentName, and liferay-subchart-backup-restore.database.engine |
liferay-observability | centralHub.*, the namespaceOverride values, cloudProvider (azure), and the azure.* values |
liferay.yaml
liferay.yaml configures the liferay-azure chart. liferay-azure wraps the liferay-default chart, so nest every value under liferay-default::
liferay-default:
replicaCount: 2
An environment whose liferay.yaml sets nothing runs with the values in the next two sections.
Azure Settings
liferay-azure sets these values for liferay-default. They override the liferay-default defaults listed in Core Liferay Values.
| Value | Azure Setting |
|---|---|
annotations | OpenTelemetry injection turned off: instrumentation.opentelemetry.io/inject-dotnet, inject-java, inject-nodejs, and inject-python, and sidecar.opentelemetry.io/inject, each "false" |
autoscaling.type | keda |
autoscaling.keda.triggerAuthentication.spec | A TriggerAuthentication that uses the azure-workload pod identity provider |
configmap.data | Elasticsearch 7 and Elasticsearch 8 connector configurations that read the connection from SEARCH_URL, SEARCH_USERNAME, and SEARCH_PASSWORD, and an Azure Blob Storage document store configuration |
customEnv | LIFERAY_DISABLE_TRIAL_LICENSE=true, the Azure Blob Storage document store (com.liferay.portal.store.azure.AzureStore), database user liferay with the password from DATABASE_PASSWORD, and forwarded port and protocol headers enabled |
customEnvFrom | The database-server-details ConfigMap and the database-app-password, document-library-connection-details, and search-connection-details Secrets |
customInitContainers | A wait-for-elasticsearch init container that reads search-connection-details |
customLabels | origin: liferay-azure |
customVolumeMounts | Mounts of the Elasticsearch 7, Elasticsearch 8, and Azure Blob Storage configurations from the liferay-configmap volume into /opt/liferay/osgi/configs |
customVolumes | The liferay-init-scripts-azure ConfigMap volume, which holds the wait-for-elasticsearch.sh script |
database.host | ${env.DATABASE_ENDPOINT} |
database.tlsRequired | true |
network.enabled | true |
network.timeouts | backendRequest: 300s and request: 300s |
overlay.type | azureblob |
persistence.defaultStorageClassName | managed-csi |
podLabels | azure.workload.identity/use: "true" |
podSecurityContext and securityContext | Run as user 1000 (runAsNonRoot: true), with the RuntimeDefault seccomp profile; the container drops all capabilities and disallows privilege escalation |
resources | Requests of 2000m CPU and 4Gi memory; limits of 4000m CPU and 12Gi memory |
volumeClaimTemplates | liferay-persistent-volume, ReadWriteOnce, 10Gi |
Because the trial license is disabled, Liferay DXP starts only with a license you provide. See CNE Azure Ready: Managing Secrets and Licenses.
The database engine comes from setup.database.engine in config.json, which the platform passes as global.database.engine. Setting database.engine to a different engine fails the render.
To configure autoscaling, see CNE Azure Ready: Configuring Autoscaling. On Azure, autoscaling.enabled is false by default, and autoscaling.keda.prometheusServerAddress is empty. Set prometheusServerAddress for the Prometheus triggers. The platform passes the Azure Monitor workspace endpoint as global.azure.prometheusWorkspaceEndpoint, but no liferay-azure 0.3.0 template reads it.
Core Liferay Values
This YAML lists the liferay-default 4.0.0 values and their defaults, except the marketplace, licensing.offline, and licensing.offlineActivationBundle values, because CNE Azure Ready 0.3.0 supports neither Marketplace add-on delivery nor offline licensing. Nest them under liferay-default: in liferay.yaml. Where a default is a long list or a set of templates, the block shows [...] or {...} and the comment names the default entries.
affinity: {} # Set the pod template affinity field
annotations: {} # Set StatefulSet and pod template annotations
autoscaling: # Autoscaling configuration
enabled: false # Enable autoscaling; when true, the StatefulSet does not set replicas
hpa: # HorizontalPodAutoscaler, used when type is hpa
annotations: {} # Set HorizontalPodAutoscaler metadata annotations
maxReplicas: 100 # Set HorizontalPodAutoscaler spec maxReplicas field
metrics: [...] # Set HorizontalPodAutoscaler spec metrics field; default is 80 percent average CPU utilization
minReplicas: 1 # Set HorizontalPodAutoscaler spec minReplicas field
keda: # KEDA ScaledObject, used when type is keda
customTriggers: {} # Triggers merged over triggers by name; set enabled: false on a trigger to drop it
maxReplicaCount: 100 # Set ScaledObject spec maxReplicaCount field
minReplicaCount: 1 # Set ScaledObject spec minReplicaCount field
pollingInterval: 30 # Set ScaledObject spec pollingInterval field
prometheusServerAddress: "" # Server address for Prometheus triggers that set none
triggerAuthentication: # KEDA TriggerAuthentication, created when spec is set
annotations: {} # Set TriggerAuthentication metadata annotations
spec: {} # Set TriggerAuthentication spec; every trigger references it
triggers: # Default triggers by name; a trigger without a type is a Prometheus trigger
cpu-usage-percent: {...} # CPU utilization, value "80"
hikari-active-connections: {...} # Maximum active Hikari connections, threshold "50"
jvm-memory-heap-used-percent: {...} # JVM heap used percent, threshold "80"
jvm-threads-current: {...} # JVM current threads, threshold "500"
type: hpa # Autoscaler type: hpa or keda
clientExtensions: # Client extension delivery through the Liferay DXP operator
delivery:
enabled: false # Bind the client extension delivery ClusterRole to the operator service account
operatorServiceAccount:
name: dxp-operator # Service account of the Liferay DXP operator
namespace: dxp-operator-system # Namespace of the Liferay DXP operator
policy:
allowedNamespaces: [] # Namespaces listed in the client-extension-policy ConfigMap
configmap: # Central ConfigMap configuration
annotations: {} # Set central ConfigMap metadata annotations
data: {} # Add entries to the central ConfigMap data
overrideDefaults: false # If true, excludes the default data in templates/configmap.yaml
customEnv: {} # Named lists of container env entries
customEnvFrom: {} # Named lists of container envFrom entries
customInitContainers: # Named lists of init containers
x-license-sync: [...] # License sync sidecar, rendered when licensing.enabled is true
x-liferay-overlay: [...] # Overlay copy, rendered when overlay.enabled is true and overlay.copy is set
x-liferay-prepopulate-data: [...] # Prepares the persistent volume and the Tomcat configuration
x-liferay-wait-on-services: [...] # Waits for the StatefulSet dependencies
customLabels: # Labels added to the chart's resources
origin: liferay-cloud
customPorts: {} # Named lists of container ports
customPullSecrets: {} # Named lists of imagePullSecrets entries
customServicePorts: {} # Named lists of Service ports
customVolumeClaimTemplates: {} # Named lists of StatefulSet volumeClaimTemplates
customVolumeMounts: {} # Named lists of container volumeMounts
customVolumes: # Named lists of pod volumes
x-liferay-init-scripts-default: [...] # The liferay-init-scripts-default ConfigMap volume
database: # Database connection
engine: "" # postgresql; sets the JDBC driver, URL, and Hibernate dialect
host: "" # Database host; required when engine is set
port: "" # Database port; defaults to 5432 for postgresql
tlsRequired: false # Add the engine's TLS parameter to the JDBC URL
dependencies: {} # Services that become ready before Liferay DXP starts
env: [...] # Container env; defaults set clustering, JMX agent, and pod variables
envFrom: # Container envFrom
- secretRef:
name: liferay-default # Secret the chart creates with a generated admin password
fullnameOverride: "" # Override the liferay.fullname value used in the helper template
global:
liferayServiceAccount: # Liferay DXP ServiceAccount and Role
annotations: {} # Set ServiceAccount metadata annotations
automount: true # Set ServiceAccount automountServiceAccountToken field
create: true # Create the ServiceAccount
name: "" # ServiceAccount name; defaults to the chart name
role:
annotations: {} # Set Role metadata annotations
rules: [...] # Role rules; the default allows get, list, and watch on ConfigMaps
image: # Liferay DXP container image
pullPolicy: IfNotPresent # Set container imagePullPolicy field
pullSecrets: []
repository: liferay/dxp # Image repository
tag: 2026.q1.8-lts # Image tag
initContainers: [] # Set pod template initContainers field
licensing: # Licensing through the Liferay DXP operator; unknown keys are rejected
activationCodeSecretKey: activationCode # Key of the activation code in its Secret
activationCodeSecretName: "" # Secret that holds the activation code; defaults to <name>-activation
dxpVersion: "" # DXP version the operator reports; defaults to the image tag
enabled: false # Create the LiferayEnvironment and sync the license into the deploy folder
environmentName: "" # Environment name the operator reports; defaults to the namespace
onlineActivationWorkflow: # Argo workflow that submits the activation code
clusterRoleName: online-activation-cluster-role # ClusterRole the workflow service account is bound to
clusterWorkflowTemplateName: online-activation-cluster-workflow-template # ClusterWorkflowTemplate the workflow runs
enabled: false # Create the online activation workflow and its RBAC; the platform sets true
serviceAccountName: online-activation-service-account # Service account the workflow runs as
ttlSecondsAfterCompletion: 3600 # Seconds a finished workflow is kept before it is deleted
userAccess: # Service account a user submits the workflow with
roleName: online-activation-user-role # Role that allows submitting and watching the workflow
serviceAccountName: online-activation-user-service-account # Service account bound to the role
tokenSecretName: online-activation-user-token # Secret that holds the service account token
workflowTemplateName: online-activation-workflow-template # WorkflowTemplate a user submits
secretName: "" # Secret the license is mounted from; defaults to <name>-entitlements
syncInterval: 60 # Seconds between license syncs into the deploy folder
livenessProbe: # Set container livenessProbe field
failureThreshold: 3
httpGet:
path: /c/portal/robots
port: http
initialDelaySeconds: 60
periodSeconds: 30
timeoutSeconds: 5
nameOverride: "" # Override the Chart.Name value used in the helper template
network: # Gateway API routing to Liferay DXP
annotations: {} # Set HTTPRoute metadata annotations
enabled: false # Render the HTTPRoute and its BackendTrafficPolicy
endpointRef: http # Gateway listener the HTTPRoute attaches to
extraParentRefs: [] # Additional HTTPRoute parentRefs
extraRules: [] # Additional HTTPRoute rules
forceHttpsRedirect: false # Redirect HTTP to HTTPS when endpointRef is not http
gatewayName: "" # Gateway the HTTPRoute attaches to
hostnames: [] # HTTPRoute hostnames; the first becomes the default virtual host
hsts:
enabled: true # Add the Strict-Transport-Security response header
value: max-age=31536000 # Strict-Transport-Security header value
perHostnameRoutes: false # Render one HTTPRoute per hostname
securityPolicyAuthorizationSpec: {} # Authorization for an Envoy Gateway SecurityPolicy on the route
sessionPersistence: # Set HTTPRoute rule sessionPersistence field
cookieConfig:
lifetimeType: Session
sessionName: LIFERAY_SESSION
type: Cookie
timeouts: {} # Set HTTPRoute rule backendRequest and request timeouts
networkPolicy: # Kubernetes NetworkPolicy for the Liferay DXP pods
allowGatewayIngress: true # Allow ingress from the gateway pods when network.enabled is true
allowMetricsIngress: true # Allow ingress to metricsPort from metricsNamespace
annotations: {} # Set NetworkPolicy metadata annotations
cluster:
kubernetesEndpointCidrs: "" # Comma-separated CIDRs allowed for egress on port 443
enabled: false # Render the NetworkPolicy
extraEgress: [] # Additional egress rules
extraIngress: [] # Additional ingress rules
gatewayNamespace: envoy-gateway-system # Namespace of the gateway pods
gatewayPodLabel: envoy # app.kubernetes.io/name label of the gateway pods
metricsNamespace: observability # Namespace allowed to reach metricsPort
metricsPort: 12345 # Metrics port
nodeSelector: {} # Set pod template nodeSelector field
overlay: # Files copied from overlay storage before Liferay DXP starts
copy: [] # Entries with from (path in overlay storage) and into (path on the persistent volume)
enabled: false # Render the overlay init container
image: # Image of the overlay init container
repository: rclone/rclone
tag: "1.66"
initScriptsVolumeName: liferay-init-scripts-default # Volume that holds overlay-sync.sh
type: "" # rclone backend type
persistence:
defaultStorageClassName: "" # storageClassName for volumeClaimTemplates that set none
podLabels: {} # Set pod template labels
podSecurityContext: {} # Set pod securityContext field
portalBundleDenyList: [] # Add bundles to the bundle deny list in portal-cloud.properties
portalComponentDenyList: [] # Add components to the component deny list in portal-cloud.properties
portalProperties: # Set portal properties in portal-cloud.properties
ports: [...] # Container ports: glowroot 4000, session 4100, cluster 7800, cluster-tx 7801, debug 8000, http 8080
pullSecrets: [] # Set pod imagePullSecrets field
readinessProbe: # Set container readinessProbe field
failureThreshold: 2
httpGet:
path: /c/portal/robots
port: http
initialDelaySeconds: 0
periodSeconds: 10
timeoutSeconds: 5
replicaCount: 1 # Set StatefulSet replicas when autoscaling is disabled
resources: # Set container resources field
limits:
cpu: 4000m
memory: 8Gi
requests:
cpu: 2000m
memory: 6Gi
schedulingGates: [] # Set pod schedulingGates field
search:
engine: "" # When opensearch, adds the Elasticsearch connector bundles to the deny list
securityContext: {} # Set container securityContext field
service: # Liferay DXP Service configuration
annotations: {} # Set Service metadata annotations
ports: [...] # Service ports: cluster 7800, cluster-tx 7801, http 8080
type: ClusterIP # Set Service spec type field
startupProbe: # Set container startupProbe field
failureThreshold: 90
httpGet:
path: /c/portal/robots
port: http
initialDelaySeconds: 60
periodSeconds: 10
timeoutSeconds: 5
tolerations: [] # Set pod tolerations field
tomcat:
maxThreads: "" # Set maxThreads in Tomcat's server.xml
sessionReplication:
transportTimeoutMs: 300000 # Tomcat session replication sender timeout
updateStrategy: # Set StatefulSet updateStrategy field
type: RollingUpdate
volumeClaimTemplates: [...] # liferay-persistent-volume, ReadWriteOnce, 1Gi
volumeMounts: [...] # Mounts from liferay-persistent-volume and liferay-configmap
volumes: [...] # liferay-configmap, from the liferay-default ConfigMap
To set portal properties, see Configuring Portal Properties. To route domains to Liferay DXP, see CNE Azure Ready: Configuring Liferay Domains and TLS. To copy OSGi modules or client extensions from overlay storage, see CNE Azure Ready: Adding OSGi Modules or Client Extensions With Overlays.
infrastructure.yaml
infrastructure.yaml configures the liferay-infrastructure chart. The chart renders the environment’s Elasticsearch cluster, gateway, and secrets. It also renders a LiferayInfrastructure resource, which the Azure composition turns into the environment’s Azure resources. Defaults come from the LiferayInfrastructure resource definition, except where the table says the Azure composition sets them.
Database
These values configure the environment’s database server:
| Value | Description | Default |
|---|---|---|
database.highAvailability | Enables high availability on the database server. | false |
database.instanceType | Sets the Azure Database flexible server SKU. | Set by the Azure composition: GP_Standard_D2s_v3 |
database.storageGB | Sets the database storage, in GB. | 32 |
database.version | Sets the database engine version. | Set by the Azure composition: "16" |
database.restore.pointInTime.time | Sets the UTC time to restore the database to, in the form YYYY-MM-DDTHH:MM:SSZ. It is required when you restore. | None |
The database engine comes from setup.database.engine in config.json, not from this file.
The resource definition also accepts database.restore.snapshot, but the Azure composition fails a restore that does not set database.restore.pointInTime.time. To restore an environment, see CNE Azure Ready: Backup and Restore.
Backup
These values configure scheduled backups of the environment’s document library:
| Value | Description | Default |
|---|---|---|
backup.enabled | Enables scheduled backups of the environment. | false |
backup.frequency | Sets how often backups run: Daily or Weekly. | Daily |
backup.dayOfWeek | Sets the day a weekly backup runs, Sunday through Saturday. | Sunday |
backup.timeOfDay | Sets the time a backup runs, in the form HH:MM. | 05:00 |
backup.timeZone | Sets the time zone of timeOfDay. | UTC |
backup.retentionDays | Sets the number of days a backup is kept. The resource definition accepts 1 to 3650; the Azure composition applies a value between 7 and 35. | 30 |
backup.vaultTags | Sets the tags on the environment’s backup vault. | {} |
backup.restore.sanitizationScripts | Lists named SQL scripts that the chart stores in the backup-restore-sanitization ConfigMap when backup.enabled is true. | {} |
For the backup and restore procedures, see CNE Azure Ready: Backup and Restore.
Search
On Azure, search.engine must be elasticsearch. When search.engine is empty, it resolves to elasticsearch. Setting opensearch fails the render with Search engine opensearch is not available on this cloud, which supports: elasticsearch.
| Value | Description | Default |
|---|---|---|
search.engine | Sets the search engine. | "", which resolves to elasticsearch |
search.elasticsearch.version | Sets the Elasticsearch version. | 8.19.11 |
search.elasticsearch.nodeCount | Sets the number of Elasticsearch nodes. | 1 |
search.elasticsearch.volumeSize | Sets the data volume size of each node. | 10Gi |
search.elasticsearch.env | Sets environment variables for the Elasticsearch container. | ES_JAVA_OPTS: -Xms4g -Xmx4g |
search.elasticsearch.resources | Sets the resources of the Elasticsearch container. | Requests of 500m CPU and 4Gi memory; limits of 1000m CPU and 8Gi memory |
Elasticsearch data volumes use the managed-csi-premium-v2 storage class, which the platform sets. For more information, see CNE Azure Ready: Using Elasticsearch.
Endpoints and Gateway
endpoints is a map of gateway listeners, keyed by listener name. The gateway always has an http listener on port 80; an endpoint named http replaces it.
| Value | Description | Default |
|---|---|---|
endpoints.<name>.hostname | Sets the hostname the listener serves. | None |
endpoints.<name>.port | Sets the listener port, 80 or 443. A port 80 endpoint other than http must set a hostname. | None |
endpoints.<name>.protocol | Sets the listener protocol, such as HTTP or HTTPS. | None |
endpoints.<name>.tls.externalSecretKeys | Lists the secret store keys of the listener’s certificates. They are required for HTTPS and not allowed otherwise. Each key must start with liferay-certificates-, must be a valid DNS-1123 name, and must not end with a hyphen followed by six characters. | None |
gateway.accessControl.enabled | When true, the gateway accepts traffic only from allowedCIDRs. | false |
gateway.accessControl.allowedCIDRs | Lists the IPv4 or IPv6 CIDRs allowed when accessControl.enabled is true. The list must not be empty when access control is enabled. | [] |
gateway.annotations | Sets annotations on the Gateway resource. | {} |
gateway.clientTrafficPolicySpec | Sets the spec of an Envoy Gateway ClientTrafficPolicy attached to the gateway. | {} |
For the procedure, see CNE Azure Ready: Configuring Liferay Domains and TLS.
License
These values sync a license from the secret store into the environment:
| Value | Description | Default |
|---|---|---|
license.externalSecretKey | Sets the secret store key of the license. It must start with liferay-licenses- and must not end with a hyphen followed by six letters or digits. When it is set, the chart syncs the license into the environment. | "" |
license.externalSecretProperty | Names the property of the secret store entry that holds the license. | license.xml |
license.targetSecretName | Names the Kubernetes Secret that receives the license. It must be a valid DNS-1123 name. | "", which names the Secret liferay-license |
For the procedure, see CNE Azure Ready: Managing Secrets and Licenses.
Storage, Tags, and Deletion
These values set tags, encryption, overlay access, and what happens to the environment’s Azure resources when it’s deleted:
| Value | Description | Default |
|---|---|---|
storage.tags | Sets the tags on the environment’s storage accounts. | {} |
commonTags | Sets tags that the Azure composition adds to the environment’s Azure resources. | {} |
forceDestroy | When true, turns off soft delete on the environment’s backup vault. | false |
orphanOnDelete | When true, the Azure resources remain in Azure when the environment is deleted. | false |
overlayAccess.enabled | When true, grants the environment read access to the project’s overlay storage and creates the overlay-bucket-details Secret in the environment’s namespace. | false |
cmk.enabled | When true, encrypts the environment’s storage accounts and database with a customer-managed key in Azure Key Vault. | false |
The Azure composition enables blob versioning on the environment’s storage accounts. No value turns it off.
project.yaml
project.yaml configures the project’s shared resources through the liferay-infrastructure chart. It has no base layering, and the platform sets enabled to false, so the chart renders only the overlay storage. An environment’s overlayBucket values have no effect, because the platform sets overlayBucket.enabled to false for every environment.
| Value | Description | Default |
|---|---|---|
overlayBucket.enabled | Creates the project’s overlay storage. | false |
overlayBucket.commonTags | Sets the tags on the overlay storage resources. | {} |
overlayBucket.orphanOnDelete | When true, the overlay storage remains in Azure when the project’s resources are deleted. | false |
overlayBucket.forceDestroy | Has no effect on Azure. The chart passes it to the LiferayOverlay resource, but the Azure overlay composition does not read it. | false |
An environment reads the overlay storage when its infrastructure.yaml sets overlayAccess.enabled: true. For the procedure, see CNE Azure Ready: Adding OSGi Modules or Client Extensions With Overlays.
infrastructure-provider.yaml
liferay/system/infrastructure-provider.yaml configures the liferay-azure-infrastructure-provider chart, which installs the resources the whole deployment shares.
| Value | Description | Default |
|---|---|---|
network.databaseSubnetCidr | Sets the CIDR of the database subnet, which the chart creates in the deployment’s virtual network. | 10.0.16.0/20 |
liferay-subchart-backup-restore.liferayInfrastructure.databaseWaitTimeoutSeconds | Sets the seconds the restore workflow waits for the restored database. | 14400 |
liferay-subchart-backup-restore.liferayInfrastructure.waitTimeoutSeconds | Sets the seconds the restore workflow waits for the infrastructure by default. | 3600 |
The virtual network’s address space is the vpc_cidr Terraform variable, 10.0.0.0/16 by default, and the cluster subnet is cidrsubnet(vpc_cidr, 4, 0), which is 10.0.0.0/20 for the default address space. The default databaseSubnetCidr, 10.0.16.0/20, is the block that follows the cluster subnet in the default address space.
observability.yaml
liferay/system/observability.yaml configures the observability 2.0.0 chart. Its top-level values are alerting, alloy, aws, azure, centralHub, cloudProvider, customLabels, dashboards, datasource, frontend, fullnameOverride, gcp, grafana, grafana-alloy, kube-state-metrics, nameOverride, prometheus-node-exporter, and rdsExporter.
The bootstrap sets the azure.* values and cloudProvider. For the observability procedures, see CNE Azure Ready: Monitoring With Grafana.