Bicep Module Documentation

← Back to Overview

Module redis-enterprise

redisEnterprise

Property Value Description
general (required) general
identity identity The identity of the resource.
customerManagedEncryption customerManagedEncryption Properties of BYOK Encryption description
database database
sku (required) redisEnterpriseSku The SKU to create, which affects price, performance, and features.
highAvailability 'Disabled'
'Enabled'
If highAvailability is disabled, the data set is not replicated. This affects the availability SLA, and increases the risk of data loss (default: Enabled).
publicNetworkAccess 'Disabled'
'Enabled'
Whether or not public network traffic can access the Redis cluster (default: Disabled).
privateLink privateLink Settings for the private endpoint and private link for this resource
zones string[] The Availability Zones where this cluster will be deployed.

identity

Property Value Description
type 'None'
'SystemAssigned'
'SystemAssigned, UserAssigned'
'UserAssigned'
The types of identities associated with this resource. (default: none)
userAssignedIdentities string[] Resource IDs of User Assigned Identities to associate with this resource

customerManagedEncryption

Property Value Description
userAssignedIdentityResourceId (required) string Resource ID of the User Assigned Identity to be used to access the Key Vault
keyEncryptionKeyUrl (required) string URL of the Key Encryption Key in Key Vault

linkedDatabases

Property Value Description
id (required) string Resource ID of the linked database

geoReplication

Property Value Description
groupNickname (required) string Name for the group of linked database resources
linkedDatabases (required) linkedDatabases[] List of databases that will replicate with each other. Make sure to include the current database in this list.

modules

Property Value Description
name (required) 'RediSearch'
'RedisBloom'
'RedisJSON'
'RedisTimeSeries'
The name of the module.
args string Configuration options for the module, e.g. 'ERROR_RATE 0.01 INITIAL_SIZE 400'.

persistence

Property Value Description
aofEnabled bool Sets whether AOF is enabled (default: false). Note that at most one of AOF or RDB persistence may be enabled.
rdbEnabled bool Sets whether RDB is enabled (default: false). Note that at most one of AOF or RDB persistence may be enabled.
rdbFrequency '12h'
'1h'
'6h'
Sets the frequency at which a snapshot of the database is created.

database

Property Value Description
accessKeysAuthentication 'Disabled'
'Enabled'
This property can be Enabled/Disabled to allow or deny access with the current access keys. Can be updated even after database is created.
clientProtocol 'Encrypted'
'Plaintext'
Specifies whether redis clients can connect using TLS-encrypted or plaintext redis protocols (default: Encrypted).
clusteringPolicy 'EnterpriseCluster'
'NoCluster'
'OSSCluster'
This property can be updated only if the current value is NoCluster. If the value is OSSCluster or EnterpriseCluster, it cannot be updated without deleting the database. Default: OSSCluster.
deferUpgrade 'Deferred'
'NotDeferred'
Option to defer upgrade when newest version is released (default: NotDeferred).
evictionPolicy 'AllKeysLFU'
'AllKeysLRU'
'AllKeysRandom'
'NoEviction'
'VolatileLFU'
'VolatileLRU'
'VolatileRandom'
'VolatileTTL'
Redis eviction policy (default: VolatileLRU).
geoReplication geoReplication Optional set of properties to configure geo replication for this database.
modules modules[] Optional set of redis modules to enable in this database. Modules can only be added at creation time.
persistence persistence Persistence settings for the database.
port int TCP port of the database endpoint (default: an available port). Can only be specified at create time.

redisEnterpriseSku

Property Value Description
capacity int This property is only used with Enterprise and EnterpriseFlash SKUs. Determines the size of the cluster. Valid values are (2, 4, 6, ...) for Enterprise SKUs and (3, 9, 15, ...) for EnterpriseFlash SKUs.
name (required) string The name of Redis Enterprise cluster SKU to deploy.

naming

Property Value Description
forceFunctionAsFullName bool Use the function value as the full name of the resource
abbreviation string Override the abbreviation of this resource with this parameter
environment string The resource environment (for example: dev, tst, acc, prd)
location string The resource location (for example: weu, we, westeurope)
customer string The name of the customer
delimiter string The delimiter between resources (default: -)
nameFormat Array containing any of:
'abbreviation'
'customer'
'environment'
'function'
'location'
'param1'
'param2'
'param3'
'useCaseName'
The order of the array defines the order of elements in the naming scheme
param1 string Extra parameter self defined
param2 string Extra parameter self defined
param3 string Extra parameter self defined
function (required) string Function of the resource [can be app, db, security,...]
useCaseName string Name of the use case [can be hub, spoke,...]
suffix string Suffix for the resource, if empty non will be appended, otherwise will be added to the end [can be index, ...]
forceDefaultNaming bool Force the CAF naming instead of default company naming

resourceLock

Property Value Description
name string Character limit: 1-90. Valid characters: Alphanumerics, periods, underscores, hyphens, and parenthesis. Can't end in period.
level (required) 'CanNotDelete'
'ReadOnly'
The level of the lock. Possible values are: CanNotDelete and ReadOnly. CanNotDelete means authorized users are able to read and modify the resources, but not delete. ReadOnly means authorized users can only read from a resource, but they can't modify or delete it. Read-Only locks must be commented to be able to deploy again
notes string Notes about the lock. Maximum of 512 characters.
owners resourceLockOwner[] The owners of the lock

resourceLockOwner

Property Value Description
applicationId (required) string The application ID of the lock owner.

roleAssignment

Property Value Description
principalId (required) string The principal ID
roleDefinitionId (required) string The role definition ID, data file can be used for this
condition string Condition on the role assignment
conditionVersion string Version of the condition. Currently the only accepted value is "2.0"
delegatedManagedIdentityResourceId string Id of the delegated managed identity resource
description string Description of role assignment

general

Property Value Description
tags object Tags of the resource [hashtable]
location (required) string Location of the resource
naming (required) naming Naming module of the resource
resourceGroupName (required) string Name of the resource group where the resource should be located
sharedNaming (required) naming Reference to the default naming
roleAssignments roleAssignment[] Role assignments on the resource
resourceLocks resourceLock[] Resource Locks on the resource
Property Value Description
pepNaming naming Name of the private endpoint
nicNaming naming Name of the network interface of the private endpoint
privateLinkNaming naming Name of the private link connection
subnets (required) subnets[] Id of the subnets and optionally the name of the resourcegroup in which the private endpoint should be created
dnsZoneIds (required) string[] List of DNS zone ids that need to be linked

subnets

Property Value Description
resourceGroupName string Resourcegroup (default: resourcegroup defined here => resourceGroup of pep resource => resourceGroup of subnet)
id (required) string Id of the subnet
location string Location if Vnet is in different location

Changelog

1.0.1 (2026-01-19)

Bug Fixes

  • remove obsolete deployment naming after Microsoft update

1.0.0 (2026-01-13)

Features

  • initial version