Redis

class Redis : KotlinCustomResource

A single Redis item in List or Get Operation. Uses Azure REST API version 2023-04-01. In version 1.x of the Azure Native provider, it used API version 2020-06-01. Other available API versions: 2020-06-01, 2023-05-01-preview, 2023-08-01, 2024-03-01, 2024-04-01-preview, 2024-11-01.

Example Usage

RedisCacheCreate

using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() =>
{
var redis = new AzureNative.Cache.Redis("redis", new()
{
EnableNonSslPort = true,
Location = "West US",
MinimumTlsVersion = AzureNative.Cache.TlsVersion.TlsVersion_1_2,
Name = "cache1",
RedisConfiguration = new AzureNative.Cache.Inputs.RedisCommonPropertiesRedisConfigurationArgs
{
MaxmemoryPolicy = "allkeys-lru",
},
RedisVersion = "4",
ReplicasPerPrimary = 2,
ResourceGroupName = "rg1",
ShardCount = 2,
Sku = new AzureNative.Cache.Inputs.SkuArgs
{
Capacity = 1,
Family = AzureNative.Cache.SkuFamily.P,
Name = "Premium",
},
StaticIP = "192.168.0.5",
SubnetId = "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/network1/subnets/subnet1",
Zones = new[]
{
"1",
},
});
});
package main
import (
cache "github.com/pulumi/pulumi-azure-native-sdk/cache/v2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := cache.NewRedis(ctx, "redis", &cache.RedisArgs{
EnableNonSslPort: pulumi.Bool(true),
Location: pulumi.String("West US"),
MinimumTlsVersion: pulumi.String(cache.TlsVersion_1_2),
Name: pulumi.String("cache1"),
RedisConfiguration: &cache.RedisCommonPropertiesRedisConfigurationArgs{
MaxmemoryPolicy: pulumi.String("allkeys-lru"),
},
RedisVersion: pulumi.String("4"),
ReplicasPerPrimary: pulumi.Int(2),
ResourceGroupName: pulumi.String("rg1"),
ShardCount: pulumi.Int(2),
Sku: &cache.SkuArgs{
Capacity: pulumi.Int(1),
Family: pulumi.String(cache.SkuFamilyP),
Name: pulumi.String("Premium"),
},
StaticIP: pulumi.String("192.168.0.5"),
SubnetId: pulumi.String("/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/network1/subnets/subnet1"),
Zones: pulumi.StringArray{
pulumi.String("1"),
},
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azurenative.cache.Redis;
import com.pulumi.azurenative.cache.RedisArgs;
import com.pulumi.azurenative.cache.inputs.RedisCommonPropertiesRedisConfigurationArgs;
import com.pulumi.azurenative.cache.inputs.SkuArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var redis = new Redis("redis", RedisArgs.builder()
.enableNonSslPort(true)
.location("West US")
.minimumTlsVersion("1.2")
.name("cache1")
.redisConfiguration(RedisCommonPropertiesRedisConfigurationArgs.builder()
.maxmemoryPolicy("allkeys-lru")
.build())
.redisVersion("4")
.replicasPerPrimary(2)
.resourceGroupName("rg1")
.shardCount(2)
.sku(SkuArgs.builder()
.capacity(1)
.family("P")
.name("Premium")
.build())
.staticIP("192.168.0.5")
.subnetId("/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/network1/subnets/subnet1")
.zones("1")
.build());
}
}

RedisCacheCreateDefaultVersion

using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() =>
{
var redis = new AzureNative.Cache.Redis("redis", new()
{
EnableNonSslPort = true,
Location = "West US",
MinimumTlsVersion = AzureNative.Cache.TlsVersion.TlsVersion_1_2,
Name = "cache1",
RedisConfiguration = new AzureNative.Cache.Inputs.RedisCommonPropertiesRedisConfigurationArgs
{
MaxmemoryPolicy = "allkeys-lru",
},
ReplicasPerPrimary = 2,
ResourceGroupName = "rg1",
ShardCount = 2,
Sku = new AzureNative.Cache.Inputs.SkuArgs
{
Capacity = 1,
Family = AzureNative.Cache.SkuFamily.P,
Name = "Premium",
},
StaticIP = "192.168.0.5",
SubnetId = "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/network1/subnets/subnet1",
Zones = new[]
{
"1",
},
});
});
package main
import (
cache "github.com/pulumi/pulumi-azure-native-sdk/cache/v2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := cache.NewRedis(ctx, "redis", &cache.RedisArgs{
EnableNonSslPort: pulumi.Bool(true),
Location: pulumi.String("West US"),
MinimumTlsVersion: pulumi.String(cache.TlsVersion_1_2),
Name: pulumi.String("cache1"),
RedisConfiguration: &cache.RedisCommonPropertiesRedisConfigurationArgs{
MaxmemoryPolicy: pulumi.String("allkeys-lru"),
},
ReplicasPerPrimary: pulumi.Int(2),
ResourceGroupName: pulumi.String("rg1"),
ShardCount: pulumi.Int(2),
Sku: &cache.SkuArgs{
Capacity: pulumi.Int(1),
Family: pulumi.String(cache.SkuFamilyP),
Name: pulumi.String("Premium"),
},
StaticIP: pulumi.String("192.168.0.5"),
SubnetId: pulumi.String("/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/network1/subnets/subnet1"),
Zones: pulumi.StringArray{
pulumi.String("1"),
},
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azurenative.cache.Redis;
import com.pulumi.azurenative.cache.RedisArgs;
import com.pulumi.azurenative.cache.inputs.RedisCommonPropertiesRedisConfigurationArgs;
import com.pulumi.azurenative.cache.inputs.SkuArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var redis = new Redis("redis", RedisArgs.builder()
.enableNonSslPort(true)
.location("West US")
.minimumTlsVersion("1.2")
.name("cache1")
.redisConfiguration(RedisCommonPropertiesRedisConfigurationArgs.builder()
.maxmemoryPolicy("allkeys-lru")
.build())
.replicasPerPrimary(2)
.resourceGroupName("rg1")
.shardCount(2)
.sku(SkuArgs.builder()
.capacity(1)
.family("P")
.name("Premium")
.build())
.staticIP("192.168.0.5")
.subnetId("/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/network1/subnets/subnet1")
.zones("1")
.build());
}
}

RedisCacheCreateLatestVersion

using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() =>
{
var redis = new AzureNative.Cache.Redis("redis", new()
{
EnableNonSslPort = true,
Location = "West US",
MinimumTlsVersion = AzureNative.Cache.TlsVersion.TlsVersion_1_2,
Name = "cache1",
RedisConfiguration = new AzureNative.Cache.Inputs.RedisCommonPropertiesRedisConfigurationArgs
{
MaxmemoryPolicy = "allkeys-lru",
},
RedisVersion = "Latest",
ReplicasPerPrimary = 2,
ResourceGroupName = "rg1",
ShardCount = 2,
Sku = new AzureNative.Cache.Inputs.SkuArgs
{
Capacity = 1,
Family = AzureNative.Cache.SkuFamily.P,
Name = "Premium",
},
StaticIP = "192.168.0.5",
SubnetId = "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/network1/subnets/subnet1",
Zones = new[]
{
"1",
},
});
});
package main
import (
cache "github.com/pulumi/pulumi-azure-native-sdk/cache/v2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := cache.NewRedis(ctx, "redis", &cache.RedisArgs{
EnableNonSslPort: pulumi.Bool(true),
Location: pulumi.String("West US"),
MinimumTlsVersion: pulumi.String(cache.TlsVersion_1_2),
Name: pulumi.String("cache1"),
RedisConfiguration: &cache.RedisCommonPropertiesRedisConfigurationArgs{
MaxmemoryPolicy: pulumi.String("allkeys-lru"),
},
RedisVersion: pulumi.String("Latest"),
ReplicasPerPrimary: pulumi.Int(2),
ResourceGroupName: pulumi.String("rg1"),
ShardCount: pulumi.Int(2),
Sku: &cache.SkuArgs{
Capacity: pulumi.Int(1),
Family: pulumi.String(cache.SkuFamilyP),
Name: pulumi.String("Premium"),
},
StaticIP: pulumi.String("192.168.0.5"),
SubnetId: pulumi.String("/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/network1/subnets/subnet1"),
Zones: pulumi.StringArray{
pulumi.String("1"),
},
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azurenative.cache.Redis;
import com.pulumi.azurenative.cache.RedisArgs;
import com.pulumi.azurenative.cache.inputs.RedisCommonPropertiesRedisConfigurationArgs;
import com.pulumi.azurenative.cache.inputs.SkuArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var redis = new Redis("redis", RedisArgs.builder()
.enableNonSslPort(true)
.location("West US")
.minimumTlsVersion("1.2")
.name("cache1")
.redisConfiguration(RedisCommonPropertiesRedisConfigurationArgs.builder()
.maxmemoryPolicy("allkeys-lru")
.build())
.redisVersion("Latest")
.replicasPerPrimary(2)
.resourceGroupName("rg1")
.shardCount(2)
.sku(SkuArgs.builder()
.capacity(1)
.family("P")
.name("Premium")
.build())
.staticIP("192.168.0.5")
.subnetId("/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/network1/subnets/subnet1")
.zones("1")
.build());
}
}

Import

An existing resource can be imported using its type token, name, and identifier, e.g.

$ pulumi import azure-native:cache:Redis cache1 /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cache/redis/{name}

Properties

Link copied to clipboard

The keys of the Redis cache - not set if this object is not the response to Create or Update redis cache

Link copied to clipboard

Specifies whether the non-ssl Redis server port (6379) is enabled.

Link copied to clipboard
val hostName: Output<String>

Redis host name.

Link copied to clipboard
val id: Output<String>
Link copied to clipboard

The identity of the resource.

Link copied to clipboard

List of the Redis instances associated with the cache

Link copied to clipboard

List of the linked servers associated with the cache

Link copied to clipboard
val location: Output<String>

The geo-location where the resource lives

Link copied to clipboard

Optional: requires clients to use a specified TLS version (or higher) to connect (e,g, '1.0', '1.1', '1.2')

Link copied to clipboard
val name: Output<String>

The name of the resource

Link copied to clipboard
val port: Output<Int>

Redis non-SSL port.

Link copied to clipboard

List of private endpoint connection associated with the specified redis cache

Link copied to clipboard

Redis instance provisioning status.

Link copied to clipboard

Whether or not public endpoint access is allowed for this cache. Value is optional, but if passed in, must be 'Enabled' or 'Disabled'. If 'Disabled', private endpoints are the exclusive access method. Default value is 'Enabled'. Note: This setting is important for caches with private endpoints. It has no effect on caches that are joined to, or injected into, a virtual network subnet.

Link copied to clipboard
val pulumiChildResources: Set<KotlinResource>
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard

All Redis Settings. Few possible keys: rdb-backup-enabled,rdb-storage-connection-string,rdb-backup-frequency,maxmemory-delta,maxmemory-policy,notify-keyspace-events,maxmemory-samples,slowlog-log-slower-than,slowlog-max-len,list-max-ziplist-entries,list-max-ziplist-value,hash-max-ziplist-entries,hash-max-ziplist-value,set-max-intset-entries,zset-max-ziplist-entries,zset-max-ziplist-value etc.

Link copied to clipboard
val redisVersion: Output<String>?

Redis version. This should be in the form 'major.minor' (only 'major' is required) or the value 'latest' which refers to the latest stable Redis version that is available. Supported versions: 4.0, 6.0 (latest). Default value is 'latest'.

Link copied to clipboard
val replicasPerMaster: Output<Int>?

The number of replicas to be created per primary.

Link copied to clipboard
val replicasPerPrimary: Output<Int>?

The number of replicas to be created per primary.

Link copied to clipboard
val shardCount: Output<Int>?

The number of shards to be created on a Premium Cluster Cache.

Link copied to clipboard
val sku: Output<SkuResponse>

The SKU of the Redis cache to deploy.

Link copied to clipboard
val sslPort: Output<Int>

Redis SSL port.

Link copied to clipboard
val staticIP: Output<String>?

Static IP address. Optionally, may be specified when deploying a Redis cache inside an existing Azure Virtual Network; auto assigned by default.

Link copied to clipboard
val subnetId: Output<String>?

The full resource ID of a subnet in a virtual network to deploy the Redis cache in. Example format: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/Microsoft.{Network|ClassicNetwork}/VirtualNetworks/vnet1/subnets/subnet1

Link copied to clipboard
val tags: Output<Map<String, String>>?

Resource tags.

Link copied to clipboard

A dictionary of tenant settings

Link copied to clipboard
val type: Output<String>

The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"

Link copied to clipboard
val urn: Output<String>
Link copied to clipboard
val zones: Output<List<String>>?

A list of availability zones denoting where the resource needs to come from.