Cree o reemplace (sobrescribir o volver a crear, con posible tiempo de inactividad) una caché de Redis existente.
PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cache/redis/{name}?api-version=2024-11-01
Parámetros de identificador URI
Nombre |
En |
Requerido |
Tipo |
Description |
name
|
path |
True
|
string
|
Nombre de la caché de Redis.
|
resourceGroupName
|
path |
True
|
string
|
Nombre del grupo de recursos. El nombre no distingue mayúsculas de minúsculas.
|
subscriptionId
|
path |
True
|
string
|
Identificador de la suscripción de destino.
|
api-version
|
query |
True
|
string
|
Versión de la API que se va a usar para esta operación.
|
Cuerpo de la solicitud
Nombre |
Requerido |
Tipo |
Description |
location
|
True
|
string
|
Ubicación geográfica donde reside el recurso
|
properties.sku
|
True
|
Sku
|
SKU de la caché de Redis que se va a implementar.
|
identity
|
|
ManagedServiceIdentity
|
Identidad del recurso.
|
properties.disableAccessKeyAuthentication
|
|
boolean
|
La autenticación en Redis mediante claves de acceso está deshabilitada cuando se establece como true. El valor predeterminado es false.
|
properties.enableNonSslPort
|
|
boolean
|
Especifica si el puerto de servidor redis no ssl (6379) está habilitado.
|
properties.minimumTlsVersion
|
|
TlsVersion
|
Opcional: requiere que los clientes usen una versión TLS especificada (o superior) para conectarse (por ejemplo, "1.0", "1.1", "1.2")
|
properties.publicNetworkAccess
|
|
PublicNetworkAccess
|
Indica si se permite o no el acceso al punto de conexión público para esta memoria caché. El valor es opcional, pero si se pasa, debe ser "Habilitado" o "Deshabilitado". Si es "Deshabilitado", los puntos de conexión privados son el método de acceso exclusivo. El valor predeterminado es "Enabled"
|
properties.redisConfiguration
|
|
RedisConfiguration
|
Toda la configuración de Redis. Pocas claves posibles: rdb-backup-enabled,rdb-storage-connection-string,rdb-backup-frequency,maxmemory-delta, maxmemory-policy,notify-keyspace-events, aof-backup-enabled, aof-storage-connection-string-0, aof-storage-connection-string-1, etc.
|
properties.redisVersion
|
|
string
|
Versión de Redis. Debe tener el formato "major[.minor]" (solo se requiere "major") o el valor "latest", que hace referencia a la versión estable más reciente de Redis que está disponible. Versiones compatibles: 4.0, 6.0 (más reciente). El valor predeterminado es "latest".
|
properties.replicasPerMaster
|
|
integer
|
Número de réplicas que se van a crear por principal.
|
properties.replicasPerPrimary
|
|
integer
|
Número de réplicas que se van a crear por principal.
|
properties.shardCount
|
|
integer
|
Número de particiones que se van a crear en una caché de clúster premium.
|
properties.staticIP
|
|
string
|
Dirección IP estática. Opcionalmente, se puede especificar al implementar una caché de Redis dentro de una instancia de Azure Virtual Network existente; asignado automáticamente de forma predeterminada.
|
properties.subnetId
|
|
string
|
Identificador de recurso completo de una subred de una red virtual en la que se va a implementar la caché de Redis. Formato de ejemplo: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/Microsoft. {Network|ClassicNetwork}/VirtualNetworks/vnet1/subnets/subnet1
|
properties.tenantSettings
|
|
object
|
Diccionario de la configuración del inquilino
|
properties.updateChannel
|
|
UpdateChannel
|
Opcional: especifica el canal de actualización para las actualizaciones mensuales de Redis que recibirá la instancia de Redis Cache. Las memorias caché que usan el canal de actualización "Versión preliminar" obtienen las actualizaciones más recientes de Redis al menos 4 semanas antes de las cachés de canales "estables". El valor predeterminado es "Estable".
|
properties.zonalAllocationPolicy
|
|
ZonalAllocationPolicy
|
Opcional: especifica cómo se asignan las zonas de disponibilidad a la caché de Redis. "Automático" permite la redundancia de zona y Azure seleccionará automáticamente las zonas en función de la disponibilidad y capacidad regionales. "UserDefined" seleccionará las zonas de disponibilidad pasadas mediante el parámetro "zones". "NoZones" generará una caché no zonal. Si no se pasa "zonalAllocationPolicy", se establecerá en "UserDefined" cuando se pasen las zonas; de lo contrario, se establecerá en "Automático" en regiones donde se admiten zonas y "NoZones" en regiones donde no se admiten zonas.
|
tags
|
|
object
|
Etiquetas de recursos.
|
zones
|
|
string[]
|
Lista de zonas de disponibilidad de las que se indica dónde debe proceder el recurso.
|
Respuestas
Nombre |
Tipo |
Description |
200 OK
|
RedisResource
|
La caché de redis existente se actualizó correctamente. Compruebe provisioningState para ver el estado detallado.
|
201 Created
|
RedisResource
|
La nueva caché de redis se creó correctamente. Compruebe provisioningState para ver el estado detallado.
|
Other Status Codes
|
ErrorResponse
|
Respuesta de error que describe por qué se produjo un error en la operación.
|
Seguridad
azure_auth
Flujo de OAuth2 de Azure Active Directory.
Tipo:
oauth2
Flujo:
implicit
Dirección URL de autorización:
https://login.microsoftonline.com/common/oauth2/authorize
Ámbitos
Nombre |
Description |
user_impersonation
|
suplantar la cuenta de usuario
|
Ejemplos
RedisCacheCreate
Solicitud de ejemplo
PUT https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cache/redis/cache1?api-version=2024-11-01
{
"location": "East US",
"zones": [
"1"
],
"properties": {
"sku": {
"name": "Premium",
"family": "P",
"capacity": 1
},
"redisVersion": "4",
"enableNonSslPort": true,
"shardCount": 2,
"replicasPerPrimary": 2,
"redisConfiguration": {
"maxmemory-policy": "allkeys-lru"
},
"subnetId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/network1/subnets/subnet1",
"staticIP": "192.168.0.5",
"minimumTlsVersion": "1.2"
}
}
import com.azure.resourcemanager.redis.models.RedisConfiguration;
import com.azure.resourcemanager.redis.models.RedisCreateParameters;
import com.azure.resourcemanager.redis.models.Sku;
import com.azure.resourcemanager.redis.models.SkuFamily;
import com.azure.resourcemanager.redis.models.SkuName;
import com.azure.resourcemanager.redis.models.TlsVersion;
import java.util.Arrays;
import java.util.HashMap;
import java.util.Map;
/**
* Samples for Redis Create.
*/
public final class Main {
/*
* x-ms-original-file:
* specification/redis/resource-manager/Microsoft.Cache/stable/2024-11-01/examples/RedisCacheCreate.json
*/
/**
* Sample code: RedisCacheCreate.
*
* @param azure The entry point for accessing resource management APIs in Azure.
*/
public static void redisCacheCreate(com.azure.resourcemanager.AzureResourceManager azure) {
azure.redisCaches().manager().serviceClient().getRedis().create("rg1", "cache1", new RedisCreateParameters()
.withZones(Arrays.asList("1")).withLocation("East US")
.withSku(new Sku().withName(SkuName.PREMIUM).withFamily(SkuFamily.P).withCapacity(1))
.withSubnetId(
"/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/network1/subnets/subnet1")
.withStaticIp("192.168.0.5")
.withRedisConfiguration(
new RedisConfiguration().withMaxmemoryPolicy("allkeys-lru").withAdditionalProperties(mapOf()))
.withRedisVersion("4").withEnableNonSslPort(true).withReplicasPerPrimary(2).withShardCount(2)
.withMinimumTlsVersion(TlsVersion.ONE_TWO), com.azure.core.util.Context.NONE);
}
// Use "Map.of" if available
@SuppressWarnings("unchecked")
private static <T> Map<String, T> mapOf(Object... inputs) {
Map<String, T> map = new HashMap<>();
for (int i = 0; i < inputs.length; i += 2) {
String key = (String) inputs[i];
T value = (T) inputs[i + 1];
map.put(key, value);
}
return map;
}
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
from azure.identity import DefaultAzureCredential
from azure.mgmt.redis import RedisManagementClient
"""
# PREREQUISITES
pip install azure-identity
pip install azure-mgmt-redis
# USAGE
python redis_cache_create.py
Before run the sample, please set the values of the client ID, tenant ID and client secret
of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID,
AZURE_CLIENT_SECRET. For more info about how to get the value, please see:
https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal
"""
def main():
client = RedisManagementClient(
credential=DefaultAzureCredential(),
subscription_id="subid",
)
response = client.redis.begin_create(
resource_group_name="rg1",
name="cache1",
parameters={
"location": "East US",
"properties": {
"enableNonSslPort": True,
"minimumTlsVersion": "1.2",
"redisConfiguration": {"maxmemory-policy": "allkeys-lru"},
"redisVersion": "4",
"replicasPerPrimary": 2,
"shardCount": 2,
"sku": {"capacity": 1, "family": "P", "name": "Premium"},
"staticIP": "192.168.0.5",
"subnetId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/network1/subnets/subnet1",
},
"zones": ["1"],
},
).result()
print(response)
# x-ms-original-file: specification/redis/resource-manager/Microsoft.Cache/stable/2024-11-01/examples/RedisCacheCreate.json
if __name__ == "__main__":
main()
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
package armredis_test
import (
"context"
"log"
"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/redis/armredis/v3"
)
// Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/45374f48f560b3337ed55735038f1e9bf8cbea65/specification/redis/resource-manager/Microsoft.Cache/stable/2024-11-01/examples/RedisCacheCreate.json
func ExampleClient_BeginCreate_redisCacheCreate() {
cred, err := azidentity.NewDefaultAzureCredential(nil)
if err != nil {
log.Fatalf("failed to obtain a credential: %v", err)
}
ctx := context.Background()
clientFactory, err := armredis.NewClientFactory("<subscription-id>", cred, nil)
if err != nil {
log.Fatalf("failed to create client: %v", err)
}
poller, err := clientFactory.NewClient().BeginCreate(ctx, "rg1", "cache1", armredis.CreateParameters{
Location: to.Ptr("East US"),
Properties: &armredis.CreateProperties{
EnableNonSSLPort: to.Ptr(true),
MinimumTLSVersion: to.Ptr(armredis.TLSVersionOne2),
RedisConfiguration: &armredis.CommonPropertiesRedisConfiguration{
MaxmemoryPolicy: to.Ptr("allkeys-lru"),
},
RedisVersion: to.Ptr("4"),
ReplicasPerPrimary: to.Ptr[int32](2),
ShardCount: to.Ptr[int32](2),
SKU: &armredis.SKU{
Name: to.Ptr(armredis.SKUNamePremium),
Capacity: to.Ptr[int32](1),
Family: to.Ptr(armredis.SKUFamilyP),
},
StaticIP: to.Ptr("192.168.0.5"),
SubnetID: to.Ptr("/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/network1/subnets/subnet1"),
},
Zones: []*string{
to.Ptr("1")},
}, nil)
if err != nil {
log.Fatalf("failed to finish the request: %v", err)
}
res, err := poller.PollUntilDone(ctx, nil)
if err != nil {
log.Fatalf("failed to pull the result: %v", err)
}
// You could use response here. We use blank identifier for just demo purposes.
_ = res
// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
// res.ResourceInfo = armredis.ResourceInfo{
// Name: to.Ptr("cache1"),
// Type: to.Ptr("Microsoft.Cache/Redis"),
// ID: to.Ptr("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cache/Redis/cache1"),
// Location: to.Ptr("West US"),
// Tags: map[string]*string{
// },
// Properties: &armredis.Properties{
// EnableNonSSLPort: to.Ptr(false),
// MinimumTLSVersion: to.Ptr(armredis.TLSVersionOne2),
// RedisConfiguration: &armredis.CommonPropertiesRedisConfiguration{
// Maxclients: to.Ptr("1000"),
// MaxmemoryDelta: to.Ptr("50"),
// MaxmemoryReserved: to.Ptr("50"),
// },
// RedisVersion: to.Ptr("4.0.14"),
// ReplicasPerMaster: to.Ptr[int32](2),
// ReplicasPerPrimary: to.Ptr[int32](2),
// UpdateChannel: to.Ptr(armredis.UpdateChannelStable),
// ZonalAllocationPolicy: to.Ptr(armredis.ZonalAllocationPolicyUserDefined),
// SKU: &armredis.SKU{
// Name: to.Ptr(armredis.SKUNamePremium),
// Capacity: to.Ptr[int32](1),
// Family: to.Ptr(armredis.SKUFamilyP),
// },
// AccessKeys: &armredis.AccessKeys{
// PrimaryKey: to.Ptr("<primaryKey>"),
// SecondaryKey: to.Ptr("<secondaryKey>"),
// },
// HostName: to.Ptr("cache1.redis.cache.windows.net"),
// Instances: []*armredis.InstanceDetails{
// {
// IsMaster: to.Ptr(true),
// IsPrimary: to.Ptr(true),
// NonSSLPort: to.Ptr[int32](13000),
// ShardID: to.Ptr[int32](0),
// SSLPort: to.Ptr[int32](15000),
// Zone: to.Ptr("1"),
// },
// {
// IsMaster: to.Ptr(false),
// IsPrimary: to.Ptr(false),
// NonSSLPort: to.Ptr[int32](13001),
// ShardID: to.Ptr[int32](0),
// SSLPort: to.Ptr[int32](15001),
// Zone: to.Ptr("1"),
// },
// {
// IsMaster: to.Ptr(false),
// IsPrimary: to.Ptr(false),
// NonSSLPort: to.Ptr[int32](13002),
// ShardID: to.Ptr[int32](0),
// SSLPort: to.Ptr[int32](15002),
// Zone: to.Ptr("1"),
// },
// {
// IsMaster: to.Ptr(true),
// IsPrimary: to.Ptr(true),
// NonSSLPort: to.Ptr[int32](13003),
// ShardID: to.Ptr[int32](1),
// SSLPort: to.Ptr[int32](15003),
// Zone: to.Ptr("1"),
// },
// {
// IsMaster: to.Ptr(false),
// IsPrimary: to.Ptr(false),
// NonSSLPort: to.Ptr[int32](13004),
// ShardID: to.Ptr[int32](1),
// SSLPort: to.Ptr[int32](15004),
// Zone: to.Ptr("1"),
// },
// {
// IsMaster: to.Ptr(false),
// IsPrimary: to.Ptr(false),
// NonSSLPort: to.Ptr[int32](13005),
// ShardID: to.Ptr[int32](1),
// SSLPort: to.Ptr[int32](15005),
// Zone: to.Ptr("1"),
// }},
// Port: to.Ptr[int32](6379),
// ProvisioningState: to.Ptr(armredis.ProvisioningStateSucceeded),
// SSLPort: to.Ptr[int32](6380),
// },
// Zones: []*string{
// to.Ptr("1")},
// }
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
const { RedisManagementClient } = require("@azure/arm-rediscache");
const { DefaultAzureCredential } = require("@azure/identity");
require("dotenv/config");
/**
* This sample demonstrates how to Create or replace (overwrite/recreate, with potential downtime) an existing Redis cache.
*
* @summary Create or replace (overwrite/recreate, with potential downtime) an existing Redis cache.
* x-ms-original-file: specification/redis/resource-manager/Microsoft.Cache/stable/2024-11-01/examples/RedisCacheCreate.json
*/
async function redisCacheCreate() {
const subscriptionId = process.env["REDIS_SUBSCRIPTION_ID"] || "subid";
const resourceGroupName = process.env["REDIS_RESOURCE_GROUP"] || "rg1";
const name = "cache1";
const parameters = {
enableNonSslPort: true,
location: "East US",
minimumTlsVersion: "1.2",
redisConfiguration: { maxmemoryPolicy: "allkeys-lru" },
redisVersion: "4",
replicasPerPrimary: 2,
shardCount: 2,
sku: { name: "Premium", capacity: 1, family: "P" },
staticIP: "192.168.0.5",
subnetId:
"/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/network1/subnets/subnet1",
zones: ["1"],
};
const credential = new DefaultAzureCredential();
const client = new RedisManagementClient(credential, subscriptionId);
const result = await client.redis.beginCreateAndWait(resourceGroupName, name, parameters);
console.log(result);
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
using Azure;
using Azure.ResourceManager;
using System;
using System.Net;
using System.Threading.Tasks;
using Azure.Core;
using Azure.Identity;
using Azure.ResourceManager.Redis.Models;
using Azure.ResourceManager.Resources;
using Azure.ResourceManager.Redis;
// Generated from example definition: specification/redis/resource-manager/Microsoft.Cache/stable/2024-11-01/examples/RedisCacheCreate.json
// this example is just showing the usage of "Redis_Create" operation, for the dependent resources, they will have to be created separately.
// get your azure access token, for more details of how Azure SDK get your access token, please refer to https://learn.microsoft.com/en-us/dotnet/azure/sdk/authentication?tabs=command-line
TokenCredential cred = new DefaultAzureCredential();
// authenticate your client
ArmClient client = new ArmClient(cred);
// this example assumes you already have this ResourceGroupResource created on azure
// for more information of creating ResourceGroupResource, please refer to the document of ResourceGroupResource
string subscriptionId = "subid";
string resourceGroupName = "rg1";
ResourceIdentifier resourceGroupResourceId = ResourceGroupResource.CreateResourceIdentifier(subscriptionId, resourceGroupName);
ResourceGroupResource resourceGroupResource = client.GetResourceGroupResource(resourceGroupResourceId);
// get the collection of this RedisResource
RedisCollection collection = resourceGroupResource.GetAllRedis();
// invoke the operation
string name = "cache1";
RedisCreateOrUpdateContent content = new RedisCreateOrUpdateContent(new AzureLocation("East US"), new RedisSku(RedisSkuName.Premium, RedisSkuFamily.Premium, 1))
{
Zones = { "1" },
RedisConfiguration = new RedisCommonConfiguration
{
MaxMemoryPolicy = "allkeys-lru",
},
RedisVersion = "4",
EnableNonSslPort = true,
ReplicasPerPrimary = 2,
ShardCount = 2,
MinimumTlsVersion = RedisTlsVersion.Tls1_2,
SubnetId = new ResourceIdentifier("/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/network1/subnets/subnet1"),
StaticIP = IPAddress.Parse("192.168.0.5"),
};
ArmOperation<RedisResource> lro = await collection.CreateOrUpdateAsync(WaitUntil.Completed, name, content);
RedisResource result = lro.Value;
// the variable result is a resource, you could call other operations on this instance as well
// but just for demo, we get its data from this resource instance
RedisData resourceData = result.Data;
// for demo we just print out the id
Console.WriteLine($"Succeeded on id: {resourceData.Id}");
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
Respuesta de muestra
{
"id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cache/Redis/cache1",
"location": "West US",
"zones": [
"1"
],
"name": "cache1",
"type": "Microsoft.Cache/Redis",
"tags": {},
"properties": {
"accessKeys": {
"primaryKey": "<primaryKey>",
"secondaryKey": "<secondaryKey>"
},
"provisioningState": "Succeeded",
"redisVersion": "4.0.14",
"sku": {
"name": "Premium",
"family": "P",
"capacity": 1
},
"enableNonSslPort": false,
"replicasPerMaster": 2,
"replicasPerPrimary": 2,
"updateChannel": "Stable",
"zonalAllocationPolicy": "UserDefined",
"redisConfiguration": {
"maxmemory-policy": "allkeys-lru"
},
"hostName": "cache1.redis.cache.windows.net",
"port": 6379,
"sslPort": 6380,
"minimumTlsVersion": "1.2",
"instances": [
{
"sslPort": 15000,
"nonSslPort": 13000,
"zone": "1",
"shardId": 0,
"isMaster": true,
"isPrimary": true
},
{
"sslPort": 15001,
"nonSslPort": 13001,
"zone": "1",
"shardId": 0,
"isMaster": false,
"isPrimary": false
},
{
"sslPort": 15002,
"nonSslPort": 13002,
"zone": "1",
"shardId": 0,
"isMaster": false,
"isPrimary": false
},
{
"sslPort": 15003,
"nonSslPort": 13003,
"zone": "1",
"shardId": 1,
"isMaster": true,
"isPrimary": true
},
{
"sslPort": 15004,
"nonSslPort": 13004,
"zone": "1",
"shardId": 1,
"isMaster": false,
"isPrimary": false
},
{
"sslPort": 15005,
"nonSslPort": 13005,
"zone": "1",
"shardId": 1,
"isMaster": false,
"isPrimary": false
}
]
}
}
{
"id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cache/Redis/cache1",
"location": "West US",
"zones": [
"1"
],
"name": "cache1",
"type": "Microsoft.Cache/Redis",
"tags": {},
"properties": {
"accessKeys": {
"primaryKey": "<primaryKey>",
"secondaryKey": "<secondaryKey>"
},
"provisioningState": "Succeeded",
"redisVersion": "4.0.14",
"sku": {
"name": "Premium",
"family": "P",
"capacity": 1
},
"enableNonSslPort": false,
"replicasPerMaster": 2,
"replicasPerPrimary": 2,
"updateChannel": "Stable",
"zonalAllocationPolicy": "UserDefined",
"redisConfiguration": {
"maxclients": "1000",
"maxmemory-reserved": "50",
"maxmemory-delta": "50"
},
"hostName": "cache1.redis.cache.windows.net",
"port": 6379,
"sslPort": 6380,
"minimumTlsVersion": "1.2",
"instances": [
{
"sslPort": 15000,
"nonSslPort": 13000,
"zone": "1",
"shardId": 0,
"isMaster": true,
"isPrimary": true
},
{
"sslPort": 15001,
"nonSslPort": 13001,
"zone": "1",
"shardId": 0,
"isMaster": false,
"isPrimary": false
},
{
"sslPort": 15002,
"nonSslPort": 13002,
"zone": "1",
"shardId": 0,
"isMaster": false,
"isPrimary": false
},
{
"sslPort": 15003,
"nonSslPort": 13003,
"zone": "1",
"shardId": 1,
"isMaster": true,
"isPrimary": true
},
{
"sslPort": 15004,
"nonSslPort": 13004,
"zone": "1",
"shardId": 1,
"isMaster": false,
"isPrimary": false
},
{
"sslPort": 15005,
"nonSslPort": 13005,
"zone": "1",
"shardId": 1,
"isMaster": false,
"isPrimary": false
}
]
}
}
RedisCacheCreateAutomaticZonalAllocationPolicy
Solicitud de ejemplo
PUT https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cache/redis/cache1?api-version=2024-11-01
{
"location": "East US",
"properties": {
"sku": {
"name": "Premium",
"family": "P",
"capacity": 1
},
"enableNonSslPort": true,
"shardCount": 2,
"replicasPerPrimary": 2,
"zonalAllocationPolicy": "Automatic",
"redisConfiguration": {
"maxmemory-policy": "allkeys-lru"
},
"subnetId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/network1/subnets/subnet1",
"staticIP": "192.168.0.5",
"minimumTlsVersion": "1.2"
}
}
import com.azure.resourcemanager.redis.models.RedisConfiguration;
import com.azure.resourcemanager.redis.models.RedisCreateParameters;
import com.azure.resourcemanager.redis.models.Sku;
import com.azure.resourcemanager.redis.models.SkuFamily;
import com.azure.resourcemanager.redis.models.SkuName;
import com.azure.resourcemanager.redis.models.TlsVersion;
import com.azure.resourcemanager.redis.models.ZonalAllocationPolicy;
import java.util.HashMap;
import java.util.Map;
/**
* Samples for Redis Create.
*/
public final class Main {
/*
* x-ms-original-file: specification/redis/resource-manager/Microsoft.Cache/stable/2024-11-01/examples/
* RedisCacheCreateAutomaticZonalAllocationPolicy.json
*/
/**
* Sample code: RedisCacheCreateAutomaticZonalAllocationPolicy.
*
* @param azure The entry point for accessing resource management APIs in Azure.
*/
public static void
redisCacheCreateAutomaticZonalAllocationPolicy(com.azure.resourcemanager.AzureResourceManager azure) {
azure.redisCaches().manager().serviceClient().getRedis().create("rg1", "cache1", new RedisCreateParameters()
.withLocation("East US")
.withSku(new Sku().withName(SkuName.PREMIUM).withFamily(SkuFamily.P).withCapacity(1))
.withSubnetId(
"/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/network1/subnets/subnet1")
.withStaticIp("192.168.0.5")
.withRedisConfiguration(
new RedisConfiguration().withMaxmemoryPolicy("allkeys-lru").withAdditionalProperties(mapOf()))
.withEnableNonSslPort(true).withReplicasPerPrimary(2).withShardCount(2)
.withMinimumTlsVersion(TlsVersion.ONE_TWO).withZonalAllocationPolicy(ZonalAllocationPolicy.AUTOMATIC),
com.azure.core.util.Context.NONE);
}
// Use "Map.of" if available
@SuppressWarnings("unchecked")
private static <T> Map<String, T> mapOf(Object... inputs) {
Map<String, T> map = new HashMap<>();
for (int i = 0; i < inputs.length; i += 2) {
String key = (String) inputs[i];
T value = (T) inputs[i + 1];
map.put(key, value);
}
return map;
}
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
from azure.identity import DefaultAzureCredential
from azure.mgmt.redis import RedisManagementClient
"""
# PREREQUISITES
pip install azure-identity
pip install azure-mgmt-redis
# USAGE
python redis_cache_create_automatic_zonal_allocation_policy.py
Before run the sample, please set the values of the client ID, tenant ID and client secret
of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID,
AZURE_CLIENT_SECRET. For more info about how to get the value, please see:
https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal
"""
def main():
client = RedisManagementClient(
credential=DefaultAzureCredential(),
subscription_id="subid",
)
response = client.redis.begin_create(
resource_group_name="rg1",
name="cache1",
parameters={
"location": "East US",
"properties": {
"enableNonSslPort": True,
"minimumTlsVersion": "1.2",
"redisConfiguration": {"maxmemory-policy": "allkeys-lru"},
"replicasPerPrimary": 2,
"shardCount": 2,
"sku": {"capacity": 1, "family": "P", "name": "Premium"},
"staticIP": "192.168.0.5",
"subnetId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/network1/subnets/subnet1",
"zonalAllocationPolicy": "Automatic",
},
},
).result()
print(response)
# x-ms-original-file: specification/redis/resource-manager/Microsoft.Cache/stable/2024-11-01/examples/RedisCacheCreateAutomaticZonalAllocationPolicy.json
if __name__ == "__main__":
main()
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
package armredis_test
import (
"context"
"log"
"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/redis/armredis/v3"
)
// Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/45374f48f560b3337ed55735038f1e9bf8cbea65/specification/redis/resource-manager/Microsoft.Cache/stable/2024-11-01/examples/RedisCacheCreateAutomaticZonalAllocationPolicy.json
func ExampleClient_BeginCreate_redisCacheCreateAutomaticZonalAllocationPolicy() {
cred, err := azidentity.NewDefaultAzureCredential(nil)
if err != nil {
log.Fatalf("failed to obtain a credential: %v", err)
}
ctx := context.Background()
clientFactory, err := armredis.NewClientFactory("<subscription-id>", cred, nil)
if err != nil {
log.Fatalf("failed to create client: %v", err)
}
poller, err := clientFactory.NewClient().BeginCreate(ctx, "rg1", "cache1", armredis.CreateParameters{
Location: to.Ptr("East US"),
Properties: &armredis.CreateProperties{
EnableNonSSLPort: to.Ptr(true),
MinimumTLSVersion: to.Ptr(armredis.TLSVersionOne2),
RedisConfiguration: &armredis.CommonPropertiesRedisConfiguration{
MaxmemoryPolicy: to.Ptr("allkeys-lru"),
},
ReplicasPerPrimary: to.Ptr[int32](2),
ShardCount: to.Ptr[int32](2),
ZonalAllocationPolicy: to.Ptr(armredis.ZonalAllocationPolicyAutomatic),
SKU: &armredis.SKU{
Name: to.Ptr(armredis.SKUNamePremium),
Capacity: to.Ptr[int32](1),
Family: to.Ptr(armredis.SKUFamilyP),
},
StaticIP: to.Ptr("192.168.0.5"),
SubnetID: to.Ptr("/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/network1/subnets/subnet1"),
},
}, nil)
if err != nil {
log.Fatalf("failed to finish the request: %v", err)
}
res, err := poller.PollUntilDone(ctx, nil)
if err != nil {
log.Fatalf("failed to pull the result: %v", err)
}
// You could use response here. We use blank identifier for just demo purposes.
_ = res
// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
// res.ResourceInfo = armredis.ResourceInfo{
// Name: to.Ptr("cache1"),
// Type: to.Ptr("Microsoft.Cache/Redis"),
// ID: to.Ptr("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cache/Redis/cache1"),
// Location: to.Ptr("East US"),
// Tags: map[string]*string{
// },
// Properties: &armredis.Properties{
// EnableNonSSLPort: to.Ptr(true),
// MinimumTLSVersion: to.Ptr(armredis.TLSVersionOne2),
// RedisConfiguration: &armredis.CommonPropertiesRedisConfiguration{
// Maxclients: to.Ptr("1000"),
// MaxmemoryDelta: to.Ptr("50"),
// MaxmemoryReserved: to.Ptr("50"),
// },
// RedisVersion: to.Ptr("6.0"),
// ReplicasPerMaster: to.Ptr[int32](2),
// ReplicasPerPrimary: to.Ptr[int32](2),
// ShardCount: to.Ptr[int32](2),
// UpdateChannel: to.Ptr(armredis.UpdateChannelStable),
// ZonalAllocationPolicy: to.Ptr(armredis.ZonalAllocationPolicyAutomatic),
// SKU: &armredis.SKU{
// Name: to.Ptr(armredis.SKUNamePremium),
// Capacity: to.Ptr[int32](1),
// Family: to.Ptr(armredis.SKUFamilyP),
// },
// AccessKeys: &armredis.AccessKeys{
// PrimaryKey: to.Ptr("<primaryKey>"),
// SecondaryKey: to.Ptr("<secondaryKey>"),
// },
// HostName: to.Ptr("cache1.redis.cache.windows.net"),
// Instances: []*armredis.InstanceDetails{
// {
// IsMaster: to.Ptr(true),
// IsPrimary: to.Ptr(true),
// NonSSLPort: to.Ptr[int32](13000),
// ShardID: to.Ptr[int32](0),
// SSLPort: to.Ptr[int32](15000),
// },
// {
// IsMaster: to.Ptr(false),
// IsPrimary: to.Ptr(false),
// NonSSLPort: to.Ptr[int32](13001),
// ShardID: to.Ptr[int32](0),
// SSLPort: to.Ptr[int32](15001),
// },
// {
// IsMaster: to.Ptr(false),
// IsPrimary: to.Ptr(false),
// NonSSLPort: to.Ptr[int32](13002),
// ShardID: to.Ptr[int32](0),
// SSLPort: to.Ptr[int32](15002),
// },
// {
// IsMaster: to.Ptr(true),
// IsPrimary: to.Ptr(true),
// NonSSLPort: to.Ptr[int32](13003),
// ShardID: to.Ptr[int32](1),
// SSLPort: to.Ptr[int32](15003),
// },
// {
// IsMaster: to.Ptr(false),
// IsPrimary: to.Ptr(false),
// NonSSLPort: to.Ptr[int32](13004),
// ShardID: to.Ptr[int32](1),
// SSLPort: to.Ptr[int32](15004),
// },
// {
// IsMaster: to.Ptr(false),
// IsPrimary: to.Ptr(false),
// NonSSLPort: to.Ptr[int32](13005),
// ShardID: to.Ptr[int32](1),
// SSLPort: to.Ptr[int32](15005),
// }},
// Port: to.Ptr[int32](6379),
// ProvisioningState: to.Ptr(armredis.ProvisioningStateSucceeded),
// SSLPort: to.Ptr[int32](6380),
// },
// }
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
const { RedisManagementClient } = require("@azure/arm-rediscache");
const { DefaultAzureCredential } = require("@azure/identity");
require("dotenv/config");
/**
* This sample demonstrates how to Create or replace (overwrite/recreate, with potential downtime) an existing Redis cache.
*
* @summary Create or replace (overwrite/recreate, with potential downtime) an existing Redis cache.
* x-ms-original-file: specification/redis/resource-manager/Microsoft.Cache/stable/2024-11-01/examples/RedisCacheCreateAutomaticZonalAllocationPolicy.json
*/
async function redisCacheCreateAutomaticZonalAllocationPolicy() {
const subscriptionId = process.env["REDIS_SUBSCRIPTION_ID"] || "subid";
const resourceGroupName = process.env["REDIS_RESOURCE_GROUP"] || "rg1";
const name = "cache1";
const parameters = {
enableNonSslPort: true,
location: "East US",
minimumTlsVersion: "1.2",
redisConfiguration: { maxmemoryPolicy: "allkeys-lru" },
replicasPerPrimary: 2,
shardCount: 2,
sku: { name: "Premium", capacity: 1, family: "P" },
staticIP: "192.168.0.5",
subnetId:
"/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/network1/subnets/subnet1",
zonalAllocationPolicy: "Automatic",
};
const credential = new DefaultAzureCredential();
const client = new RedisManagementClient(credential, subscriptionId);
const result = await client.redis.beginCreateAndWait(resourceGroupName, name, parameters);
console.log(result);
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
using Azure;
using Azure.ResourceManager;
using System;
using System.Net;
using System.Threading.Tasks;
using Azure.Core;
using Azure.Identity;
using Azure.ResourceManager.Redis.Models;
using Azure.ResourceManager.Resources;
using Azure.ResourceManager.Redis;
// Generated from example definition: specification/redis/resource-manager/Microsoft.Cache/stable/2024-11-01/examples/RedisCacheCreateAutomaticZonalAllocationPolicy.json
// this example is just showing the usage of "Redis_Create" operation, for the dependent resources, they will have to be created separately.
// get your azure access token, for more details of how Azure SDK get your access token, please refer to https://learn.microsoft.com/en-us/dotnet/azure/sdk/authentication?tabs=command-line
TokenCredential cred = new DefaultAzureCredential();
// authenticate your client
ArmClient client = new ArmClient(cred);
// this example assumes you already have this ResourceGroupResource created on azure
// for more information of creating ResourceGroupResource, please refer to the document of ResourceGroupResource
string subscriptionId = "subid";
string resourceGroupName = "rg1";
ResourceIdentifier resourceGroupResourceId = ResourceGroupResource.CreateResourceIdentifier(subscriptionId, resourceGroupName);
ResourceGroupResource resourceGroupResource = client.GetResourceGroupResource(resourceGroupResourceId);
// get the collection of this RedisResource
RedisCollection collection = resourceGroupResource.GetAllRedis();
// invoke the operation
string name = "cache1";
RedisCreateOrUpdateContent content = new RedisCreateOrUpdateContent(new AzureLocation("East US"), new RedisSku(RedisSkuName.Premium, RedisSkuFamily.Premium, 1))
{
RedisConfiguration = new RedisCommonConfiguration
{
MaxMemoryPolicy = "allkeys-lru",
},
EnableNonSslPort = true,
ReplicasPerPrimary = 2,
ShardCount = 2,
MinimumTlsVersion = RedisTlsVersion.Tls1_2,
ZonalAllocationPolicy = ZonalAllocationPolicy.Automatic,
SubnetId = new ResourceIdentifier("/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/network1/subnets/subnet1"),
StaticIP = IPAddress.Parse("192.168.0.5"),
};
ArmOperation<RedisResource> lro = await collection.CreateOrUpdateAsync(WaitUntil.Completed, name, content);
RedisResource result = lro.Value;
// the variable result is a resource, you could call other operations on this instance as well
// but just for demo, we get its data from this resource instance
RedisData resourceData = result.Data;
// for demo we just print out the id
Console.WriteLine($"Succeeded on id: {resourceData.Id}");
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
Respuesta de muestra
{
"id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cache/Redis/cache1",
"location": "East US",
"name": "cache1",
"type": "Microsoft.Cache/Redis",
"tags": {},
"properties": {
"accessKeys": {
"primaryKey": "<primaryKey>",
"secondaryKey": "<secondaryKey>"
},
"provisioningState": "Succeeded",
"redisVersion": "6.0",
"sku": {
"name": "Premium",
"family": "P",
"capacity": 1
},
"shardCount": 2,
"enableNonSslPort": true,
"replicasPerMaster": 2,
"replicasPerPrimary": 2,
"updateChannel": "Stable",
"zonalAllocationPolicy": "Automatic",
"redisConfiguration": {
"maxmemory-policy": "allkeys-lru"
},
"hostName": "cache1.redis.cache.windows.net",
"port": 6379,
"sslPort": 6380,
"minimumTlsVersion": "1.2",
"instances": [
{
"sslPort": 15000,
"nonSslPort": 13000,
"shardId": 0,
"isMaster": true,
"isPrimary": true
},
{
"sslPort": 15001,
"nonSslPort": 13001,
"shardId": 0,
"isMaster": false,
"isPrimary": false
},
{
"sslPort": 15002,
"nonSslPort": 13002,
"shardId": 0,
"isMaster": false,
"isPrimary": false
},
{
"sslPort": 15003,
"nonSslPort": 13003,
"shardId": 1,
"isMaster": true,
"isPrimary": true
},
{
"sslPort": 15004,
"nonSslPort": 13004,
"shardId": 1,
"isMaster": false,
"isPrimary": false
},
{
"sslPort": 15005,
"nonSslPort": 13005,
"shardId": 1,
"isMaster": false,
"isPrimary": false
}
]
}
}
{
"id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cache/Redis/cache1",
"location": "East US",
"name": "cache1",
"type": "Microsoft.Cache/Redis",
"tags": {},
"properties": {
"accessKeys": {
"primaryKey": "<primaryKey>",
"secondaryKey": "<secondaryKey>"
},
"provisioningState": "Succeeded",
"redisVersion": "6.0",
"sku": {
"name": "Premium",
"family": "P",
"capacity": 1
},
"shardCount": 2,
"enableNonSslPort": true,
"replicasPerMaster": 2,
"replicasPerPrimary": 2,
"updateChannel": "Stable",
"zonalAllocationPolicy": "Automatic",
"redisConfiguration": {
"maxclients": "1000",
"maxmemory-reserved": "50",
"maxmemory-delta": "50"
},
"hostName": "cache1.redis.cache.windows.net",
"port": 6379,
"sslPort": 6380,
"minimumTlsVersion": "1.2",
"instances": [
{
"sslPort": 15000,
"nonSslPort": 13000,
"shardId": 0,
"isMaster": true,
"isPrimary": true
},
{
"sslPort": 15001,
"nonSslPort": 13001,
"shardId": 0,
"isMaster": false,
"isPrimary": false
},
{
"sslPort": 15002,
"nonSslPort": 13002,
"shardId": 0,
"isMaster": false,
"isPrimary": false
},
{
"sslPort": 15003,
"nonSslPort": 13003,
"shardId": 1,
"isMaster": true,
"isPrimary": true
},
{
"sslPort": 15004,
"nonSslPort": 13004,
"shardId": 1,
"isMaster": false,
"isPrimary": false
},
{
"sslPort": 15005,
"nonSslPort": 13005,
"shardId": 1,
"isMaster": false,
"isPrimary": false
}
]
}
}
RedisCacheCreateDefaultVersion
Solicitud de ejemplo
PUT https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cache/redis/cache1?api-version=2024-11-01
{
"location": "East US",
"zones": [
"1"
],
"properties": {
"sku": {
"name": "Premium",
"family": "P",
"capacity": 1
},
"enableNonSslPort": true,
"shardCount": 2,
"replicasPerPrimary": 2,
"redisConfiguration": {
"maxmemory-policy": "allkeys-lru"
},
"subnetId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/network1/subnets/subnet1",
"staticIP": "192.168.0.5",
"minimumTlsVersion": "1.2"
}
}
import com.azure.resourcemanager.redis.models.RedisConfiguration;
import com.azure.resourcemanager.redis.models.RedisCreateParameters;
import com.azure.resourcemanager.redis.models.Sku;
import com.azure.resourcemanager.redis.models.SkuFamily;
import com.azure.resourcemanager.redis.models.SkuName;
import com.azure.resourcemanager.redis.models.TlsVersion;
import java.util.Arrays;
import java.util.HashMap;
import java.util.Map;
/**
* Samples for Redis Create.
*/
public final class Main {
/*
* x-ms-original-file:
* specification/redis/resource-manager/Microsoft.Cache/stable/2024-11-01/examples/RedisCacheCreateDefaultVersion.
* json
*/
/**
* Sample code: RedisCacheCreateDefaultVersion.
*
* @param azure The entry point for accessing resource management APIs in Azure.
*/
public static void redisCacheCreateDefaultVersion(com.azure.resourcemanager.AzureResourceManager azure) {
azure.redisCaches().manager().serviceClient().getRedis().create("rg1", "cache1", new RedisCreateParameters()
.withZones(Arrays.asList("1")).withLocation("East US")
.withSku(new Sku().withName(SkuName.PREMIUM).withFamily(SkuFamily.P).withCapacity(1))
.withSubnetId(
"/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/network1/subnets/subnet1")
.withStaticIp("192.168.0.5")
.withRedisConfiguration(
new RedisConfiguration().withMaxmemoryPolicy("allkeys-lru").withAdditionalProperties(mapOf()))
.withEnableNonSslPort(true).withReplicasPerPrimary(2).withShardCount(2)
.withMinimumTlsVersion(TlsVersion.ONE_TWO), com.azure.core.util.Context.NONE);
}
// Use "Map.of" if available
@SuppressWarnings("unchecked")
private static <T> Map<String, T> mapOf(Object... inputs) {
Map<String, T> map = new HashMap<>();
for (int i = 0; i < inputs.length; i += 2) {
String key = (String) inputs[i];
T value = (T) inputs[i + 1];
map.put(key, value);
}
return map;
}
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
from azure.identity import DefaultAzureCredential
from azure.mgmt.redis import RedisManagementClient
"""
# PREREQUISITES
pip install azure-identity
pip install azure-mgmt-redis
# USAGE
python redis_cache_create_default_version.py
Before run the sample, please set the values of the client ID, tenant ID and client secret
of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID,
AZURE_CLIENT_SECRET. For more info about how to get the value, please see:
https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal
"""
def main():
client = RedisManagementClient(
credential=DefaultAzureCredential(),
subscription_id="subid",
)
response = client.redis.begin_create(
resource_group_name="rg1",
name="cache1",
parameters={
"location": "East US",
"properties": {
"enableNonSslPort": True,
"minimumTlsVersion": "1.2",
"redisConfiguration": {"maxmemory-policy": "allkeys-lru"},
"replicasPerPrimary": 2,
"shardCount": 2,
"sku": {"capacity": 1, "family": "P", "name": "Premium"},
"staticIP": "192.168.0.5",
"subnetId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/network1/subnets/subnet1",
},
"zones": ["1"],
},
).result()
print(response)
# x-ms-original-file: specification/redis/resource-manager/Microsoft.Cache/stable/2024-11-01/examples/RedisCacheCreateDefaultVersion.json
if __name__ == "__main__":
main()
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
package armredis_test
import (
"context"
"log"
"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/redis/armredis/v3"
)
// Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/45374f48f560b3337ed55735038f1e9bf8cbea65/specification/redis/resource-manager/Microsoft.Cache/stable/2024-11-01/examples/RedisCacheCreateDefaultVersion.json
func ExampleClient_BeginCreate_redisCacheCreateDefaultVersion() {
cred, err := azidentity.NewDefaultAzureCredential(nil)
if err != nil {
log.Fatalf("failed to obtain a credential: %v", err)
}
ctx := context.Background()
clientFactory, err := armredis.NewClientFactory("<subscription-id>", cred, nil)
if err != nil {
log.Fatalf("failed to create client: %v", err)
}
poller, err := clientFactory.NewClient().BeginCreate(ctx, "rg1", "cache1", armredis.CreateParameters{
Location: to.Ptr("East US"),
Properties: &armredis.CreateProperties{
EnableNonSSLPort: to.Ptr(true),
MinimumTLSVersion: to.Ptr(armredis.TLSVersionOne2),
RedisConfiguration: &armredis.CommonPropertiesRedisConfiguration{
MaxmemoryPolicy: to.Ptr("allkeys-lru"),
},
ReplicasPerPrimary: to.Ptr[int32](2),
ShardCount: to.Ptr[int32](2),
SKU: &armredis.SKU{
Name: to.Ptr(armredis.SKUNamePremium),
Capacity: to.Ptr[int32](1),
Family: to.Ptr(armredis.SKUFamilyP),
},
StaticIP: to.Ptr("192.168.0.5"),
SubnetID: to.Ptr("/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/network1/subnets/subnet1"),
},
Zones: []*string{
to.Ptr("1")},
}, nil)
if err != nil {
log.Fatalf("failed to finish the request: %v", err)
}
res, err := poller.PollUntilDone(ctx, nil)
if err != nil {
log.Fatalf("failed to pull the result: %v", err)
}
// You could use response here. We use blank identifier for just demo purposes.
_ = res
// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
// res.ResourceInfo = armredis.ResourceInfo{
// Name: to.Ptr("cache1"),
// Type: to.Ptr("Microsoft.Cache/Redis"),
// ID: to.Ptr("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cache/Redis/cache1"),
// Location: to.Ptr("West US"),
// Tags: map[string]*string{
// },
// Properties: &armredis.Properties{
// EnableNonSSLPort: to.Ptr(false),
// MinimumTLSVersion: to.Ptr(armredis.TLSVersionOne2),
// RedisConfiguration: &armredis.CommonPropertiesRedisConfiguration{
// Maxclients: to.Ptr("1000"),
// MaxmemoryDelta: to.Ptr("50"),
// MaxmemoryReserved: to.Ptr("50"),
// },
// RedisVersion: to.Ptr("6.0.14"),
// ReplicasPerMaster: to.Ptr[int32](2),
// ReplicasPerPrimary: to.Ptr[int32](2),
// UpdateChannel: to.Ptr(armredis.UpdateChannelStable),
// ZonalAllocationPolicy: to.Ptr(armredis.ZonalAllocationPolicyUserDefined),
// SKU: &armredis.SKU{
// Name: to.Ptr(armredis.SKUNamePremium),
// Capacity: to.Ptr[int32](1),
// Family: to.Ptr(armredis.SKUFamilyP),
// },
// AccessKeys: &armredis.AccessKeys{
// PrimaryKey: to.Ptr("<primaryKey>"),
// SecondaryKey: to.Ptr("<secondaryKey>"),
// },
// HostName: to.Ptr("cache1.redis.cache.windows.net"),
// Instances: []*armredis.InstanceDetails{
// {
// IsMaster: to.Ptr(true),
// IsPrimary: to.Ptr(true),
// NonSSLPort: to.Ptr[int32](13000),
// ShardID: to.Ptr[int32](0),
// SSLPort: to.Ptr[int32](15000),
// Zone: to.Ptr("1"),
// },
// {
// IsMaster: to.Ptr(false),
// IsPrimary: to.Ptr(false),
// NonSSLPort: to.Ptr[int32](13001),
// ShardID: to.Ptr[int32](0),
// SSLPort: to.Ptr[int32](15001),
// Zone: to.Ptr("1"),
// },
// {
// IsMaster: to.Ptr(false),
// IsPrimary: to.Ptr(false),
// NonSSLPort: to.Ptr[int32](13002),
// ShardID: to.Ptr[int32](0),
// SSLPort: to.Ptr[int32](15002),
// Zone: to.Ptr("1"),
// },
// {
// IsMaster: to.Ptr(true),
// IsPrimary: to.Ptr(true),
// NonSSLPort: to.Ptr[int32](13003),
// ShardID: to.Ptr[int32](1),
// SSLPort: to.Ptr[int32](15003),
// Zone: to.Ptr("1"),
// },
// {
// IsMaster: to.Ptr(false),
// IsPrimary: to.Ptr(false),
// NonSSLPort: to.Ptr[int32](13004),
// ShardID: to.Ptr[int32](1),
// SSLPort: to.Ptr[int32](15004),
// Zone: to.Ptr("1"),
// },
// {
// IsMaster: to.Ptr(false),
// IsPrimary: to.Ptr(false),
// NonSSLPort: to.Ptr[int32](13005),
// ShardID: to.Ptr[int32](1),
// SSLPort: to.Ptr[int32](15005),
// Zone: to.Ptr("1"),
// }},
// Port: to.Ptr[int32](6379),
// ProvisioningState: to.Ptr(armredis.ProvisioningStateSucceeded),
// SSLPort: to.Ptr[int32](6380),
// },
// Zones: []*string{
// to.Ptr("1")},
// }
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
const { RedisManagementClient } = require("@azure/arm-rediscache");
const { DefaultAzureCredential } = require("@azure/identity");
require("dotenv/config");
/**
* This sample demonstrates how to Create or replace (overwrite/recreate, with potential downtime) an existing Redis cache.
*
* @summary Create or replace (overwrite/recreate, with potential downtime) an existing Redis cache.
* x-ms-original-file: specification/redis/resource-manager/Microsoft.Cache/stable/2024-11-01/examples/RedisCacheCreateDefaultVersion.json
*/
async function redisCacheCreateDefaultVersion() {
const subscriptionId = process.env["REDIS_SUBSCRIPTION_ID"] || "subid";
const resourceGroupName = process.env["REDIS_RESOURCE_GROUP"] || "rg1";
const name = "cache1";
const parameters = {
enableNonSslPort: true,
location: "East US",
minimumTlsVersion: "1.2",
redisConfiguration: { maxmemoryPolicy: "allkeys-lru" },
replicasPerPrimary: 2,
shardCount: 2,
sku: { name: "Premium", capacity: 1, family: "P" },
staticIP: "192.168.0.5",
subnetId:
"/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/network1/subnets/subnet1",
zones: ["1"],
};
const credential = new DefaultAzureCredential();
const client = new RedisManagementClient(credential, subscriptionId);
const result = await client.redis.beginCreateAndWait(resourceGroupName, name, parameters);
console.log(result);
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
using Azure;
using Azure.ResourceManager;
using System;
using System.Net;
using System.Threading.Tasks;
using Azure.Core;
using Azure.Identity;
using Azure.ResourceManager.Redis.Models;
using Azure.ResourceManager.Resources;
using Azure.ResourceManager.Redis;
// Generated from example definition: specification/redis/resource-manager/Microsoft.Cache/stable/2024-11-01/examples/RedisCacheCreateDefaultVersion.json
// this example is just showing the usage of "Redis_Create" operation, for the dependent resources, they will have to be created separately.
// get your azure access token, for more details of how Azure SDK get your access token, please refer to https://learn.microsoft.com/en-us/dotnet/azure/sdk/authentication?tabs=command-line
TokenCredential cred = new DefaultAzureCredential();
// authenticate your client
ArmClient client = new ArmClient(cred);
// this example assumes you already have this ResourceGroupResource created on azure
// for more information of creating ResourceGroupResource, please refer to the document of ResourceGroupResource
string subscriptionId = "subid";
string resourceGroupName = "rg1";
ResourceIdentifier resourceGroupResourceId = ResourceGroupResource.CreateResourceIdentifier(subscriptionId, resourceGroupName);
ResourceGroupResource resourceGroupResource = client.GetResourceGroupResource(resourceGroupResourceId);
// get the collection of this RedisResource
RedisCollection collection = resourceGroupResource.GetAllRedis();
// invoke the operation
string name = "cache1";
RedisCreateOrUpdateContent content = new RedisCreateOrUpdateContent(new AzureLocation("East US"), new RedisSku(RedisSkuName.Premium, RedisSkuFamily.Premium, 1))
{
Zones = { "1" },
RedisConfiguration = new RedisCommonConfiguration
{
MaxMemoryPolicy = "allkeys-lru",
},
EnableNonSslPort = true,
ReplicasPerPrimary = 2,
ShardCount = 2,
MinimumTlsVersion = RedisTlsVersion.Tls1_2,
SubnetId = new ResourceIdentifier("/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/network1/subnets/subnet1"),
StaticIP = IPAddress.Parse("192.168.0.5"),
};
ArmOperation<RedisResource> lro = await collection.CreateOrUpdateAsync(WaitUntil.Completed, name, content);
RedisResource result = lro.Value;
// the variable result is a resource, you could call other operations on this instance as well
// but just for demo, we get its data from this resource instance
RedisData resourceData = result.Data;
// for demo we just print out the id
Console.WriteLine($"Succeeded on id: {resourceData.Id}");
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
Respuesta de muestra
{
"id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cache/Redis/cache1",
"location": "West US",
"zones": [
"1"
],
"name": "cache1",
"type": "Microsoft.Cache/Redis",
"tags": {},
"properties": {
"accessKeys": {
"primaryKey": "<primaryKey>",
"secondaryKey": "<secondaryKey>"
},
"provisioningState": "Succeeded",
"redisVersion": "6.0.14",
"sku": {
"name": "Premium",
"family": "P",
"capacity": 1
},
"enableNonSslPort": false,
"replicasPerMaster": 2,
"replicasPerPrimary": 2,
"updateChannel": "Stable",
"zonalAllocationPolicy": "UserDefined",
"redisConfiguration": {
"maxmemory-policy": "allkeys-lru"
},
"hostName": "cache1.redis.cache.windows.net",
"port": 6379,
"sslPort": 6380,
"minimumTlsVersion": "1.2",
"instances": [
{
"sslPort": 15000,
"nonSslPort": 13000,
"zone": "1",
"shardId": 0,
"isMaster": true,
"isPrimary": true
},
{
"sslPort": 15001,
"nonSslPort": 13001,
"zone": "1",
"shardId": 0,
"isMaster": false,
"isPrimary": false
},
{
"sslPort": 15002,
"nonSslPort": 13002,
"zone": "1",
"shardId": 0,
"isMaster": false,
"isPrimary": false
},
{
"sslPort": 15003,
"nonSslPort": 13003,
"zone": "1",
"shardId": 1,
"isMaster": true,
"isPrimary": true
},
{
"sslPort": 15004,
"nonSslPort": 13004,
"zone": "1",
"shardId": 1,
"isMaster": false,
"isPrimary": false
},
{
"sslPort": 15005,
"nonSslPort": 13005,
"zone": "1",
"shardId": 1,
"isMaster": false,
"isPrimary": false
}
]
}
}
{
"id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cache/Redis/cache1",
"location": "West US",
"zones": [
"1"
],
"name": "cache1",
"type": "Microsoft.Cache/Redis",
"tags": {},
"properties": {
"accessKeys": {
"primaryKey": "<primaryKey>",
"secondaryKey": "<secondaryKey>"
},
"provisioningState": "Succeeded",
"redisVersion": "6.0.14",
"sku": {
"name": "Premium",
"family": "P",
"capacity": 1
},
"enableNonSslPort": false,
"replicasPerMaster": 2,
"replicasPerPrimary": 2,
"updateChannel": "Stable",
"zonalAllocationPolicy": "UserDefined",
"redisConfiguration": {
"maxclients": "1000",
"maxmemory-reserved": "50",
"maxmemory-delta": "50"
},
"hostName": "cache1.redis.cache.windows.net",
"port": 6379,
"sslPort": 6380,
"minimumTlsVersion": "1.2",
"instances": [
{
"sslPort": 15000,
"nonSslPort": 13000,
"zone": "1",
"shardId": 0,
"isMaster": true,
"isPrimary": true
},
{
"sslPort": 15001,
"nonSslPort": 13001,
"zone": "1",
"shardId": 0,
"isMaster": false,
"isPrimary": false
},
{
"sslPort": 15002,
"nonSslPort": 13002,
"zone": "1",
"shardId": 0,
"isMaster": false,
"isPrimary": false
},
{
"sslPort": 15003,
"nonSslPort": 13003,
"zone": "1",
"shardId": 1,
"isMaster": true,
"isPrimary": true
},
{
"sslPort": 15004,
"nonSslPort": 13004,
"zone": "1",
"shardId": 1,
"isMaster": false,
"isPrimary": false
},
{
"sslPort": 15005,
"nonSslPort": 13005,
"zone": "1",
"shardId": 1,
"isMaster": false,
"isPrimary": false
}
]
}
}
RedisCacheCreateLatestVersion
Solicitud de ejemplo
PUT https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cache/redis/cache1?api-version=2024-11-01
{
"location": "East US",
"zones": [
"1"
],
"properties": {
"sku": {
"name": "Premium",
"family": "P",
"capacity": 1
},
"redisVersion": "Latest",
"enableNonSslPort": true,
"shardCount": 2,
"replicasPerPrimary": 2,
"redisConfiguration": {
"maxmemory-policy": "allkeys-lru"
},
"subnetId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/network1/subnets/subnet1",
"staticIP": "192.168.0.5",
"minimumTlsVersion": "1.2"
}
}
import com.azure.resourcemanager.redis.models.RedisConfiguration;
import com.azure.resourcemanager.redis.models.RedisCreateParameters;
import com.azure.resourcemanager.redis.models.Sku;
import com.azure.resourcemanager.redis.models.SkuFamily;
import com.azure.resourcemanager.redis.models.SkuName;
import com.azure.resourcemanager.redis.models.TlsVersion;
import java.util.Arrays;
import java.util.HashMap;
import java.util.Map;
/**
* Samples for Redis Create.
*/
public final class Main {
/*
* x-ms-original-file:
* specification/redis/resource-manager/Microsoft.Cache/stable/2024-11-01/examples/RedisCacheCreateLatestVersion.
* json
*/
/**
* Sample code: RedisCacheCreateLatestVersion.
*
* @param azure The entry point for accessing resource management APIs in Azure.
*/
public static void redisCacheCreateLatestVersion(com.azure.resourcemanager.AzureResourceManager azure) {
azure.redisCaches().manager().serviceClient().getRedis().create("rg1", "cache1", new RedisCreateParameters()
.withZones(Arrays.asList("1")).withLocation("East US")
.withSku(new Sku().withName(SkuName.PREMIUM).withFamily(SkuFamily.P).withCapacity(1))
.withSubnetId(
"/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/network1/subnets/subnet1")
.withStaticIp("192.168.0.5")
.withRedisConfiguration(
new RedisConfiguration().withMaxmemoryPolicy("allkeys-lru").withAdditionalProperties(mapOf()))
.withRedisVersion("Latest").withEnableNonSslPort(true).withReplicasPerPrimary(2).withShardCount(2)
.withMinimumTlsVersion(TlsVersion.ONE_TWO), com.azure.core.util.Context.NONE);
}
// Use "Map.of" if available
@SuppressWarnings("unchecked")
private static <T> Map<String, T> mapOf(Object... inputs) {
Map<String, T> map = new HashMap<>();
for (int i = 0; i < inputs.length; i += 2) {
String key = (String) inputs[i];
T value = (T) inputs[i + 1];
map.put(key, value);
}
return map;
}
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
from azure.identity import DefaultAzureCredential
from azure.mgmt.redis import RedisManagementClient
"""
# PREREQUISITES
pip install azure-identity
pip install azure-mgmt-redis
# USAGE
python redis_cache_create_latest_version.py
Before run the sample, please set the values of the client ID, tenant ID and client secret
of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID,
AZURE_CLIENT_SECRET. For more info about how to get the value, please see:
https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal
"""
def main():
client = RedisManagementClient(
credential=DefaultAzureCredential(),
subscription_id="subid",
)
response = client.redis.begin_create(
resource_group_name="rg1",
name="cache1",
parameters={
"location": "East US",
"properties": {
"enableNonSslPort": True,
"minimumTlsVersion": "1.2",
"redisConfiguration": {"maxmemory-policy": "allkeys-lru"},
"redisVersion": "Latest",
"replicasPerPrimary": 2,
"shardCount": 2,
"sku": {"capacity": 1, "family": "P", "name": "Premium"},
"staticIP": "192.168.0.5",
"subnetId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/network1/subnets/subnet1",
},
"zones": ["1"],
},
).result()
print(response)
# x-ms-original-file: specification/redis/resource-manager/Microsoft.Cache/stable/2024-11-01/examples/RedisCacheCreateLatestVersion.json
if __name__ == "__main__":
main()
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
package armredis_test
import (
"context"
"log"
"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/redis/armredis/v3"
)
// Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/45374f48f560b3337ed55735038f1e9bf8cbea65/specification/redis/resource-manager/Microsoft.Cache/stable/2024-11-01/examples/RedisCacheCreateLatestVersion.json
func ExampleClient_BeginCreate_redisCacheCreateLatestVersion() {
cred, err := azidentity.NewDefaultAzureCredential(nil)
if err != nil {
log.Fatalf("failed to obtain a credential: %v", err)
}
ctx := context.Background()
clientFactory, err := armredis.NewClientFactory("<subscription-id>", cred, nil)
if err != nil {
log.Fatalf("failed to create client: %v", err)
}
poller, err := clientFactory.NewClient().BeginCreate(ctx, "rg1", "cache1", armredis.CreateParameters{
Location: to.Ptr("East US"),
Properties: &armredis.CreateProperties{
EnableNonSSLPort: to.Ptr(true),
MinimumTLSVersion: to.Ptr(armredis.TLSVersionOne2),
RedisConfiguration: &armredis.CommonPropertiesRedisConfiguration{
MaxmemoryPolicy: to.Ptr("allkeys-lru"),
},
RedisVersion: to.Ptr("Latest"),
ReplicasPerPrimary: to.Ptr[int32](2),
ShardCount: to.Ptr[int32](2),
SKU: &armredis.SKU{
Name: to.Ptr(armredis.SKUNamePremium),
Capacity: to.Ptr[int32](1),
Family: to.Ptr(armredis.SKUFamilyP),
},
StaticIP: to.Ptr("192.168.0.5"),
SubnetID: to.Ptr("/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/network1/subnets/subnet1"),
},
Zones: []*string{
to.Ptr("1")},
}, nil)
if err != nil {
log.Fatalf("failed to finish the request: %v", err)
}
res, err := poller.PollUntilDone(ctx, nil)
if err != nil {
log.Fatalf("failed to pull the result: %v", err)
}
// You could use response here. We use blank identifier for just demo purposes.
_ = res
// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
// res.ResourceInfo = armredis.ResourceInfo{
// Name: to.Ptr("cache1"),
// Type: to.Ptr("Microsoft.Cache/Redis"),
// ID: to.Ptr("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cache/Redis/cache1"),
// Location: to.Ptr("West US"),
// Tags: map[string]*string{
// },
// Properties: &armredis.Properties{
// EnableNonSSLPort: to.Ptr(false),
// MinimumTLSVersion: to.Ptr(armredis.TLSVersionOne2),
// RedisConfiguration: &armredis.CommonPropertiesRedisConfiguration{
// Maxclients: to.Ptr("1000"),
// MaxmemoryDelta: to.Ptr("50"),
// MaxmemoryReserved: to.Ptr("50"),
// },
// RedisVersion: to.Ptr("6.0.14"),
// ReplicasPerMaster: to.Ptr[int32](2),
// ReplicasPerPrimary: to.Ptr[int32](2),
// UpdateChannel: to.Ptr(armredis.UpdateChannelStable),
// ZonalAllocationPolicy: to.Ptr(armredis.ZonalAllocationPolicyUserDefined),
// SKU: &armredis.SKU{
// Name: to.Ptr(armredis.SKUNamePremium),
// Capacity: to.Ptr[int32](1),
// Family: to.Ptr(armredis.SKUFamilyP),
// },
// AccessKeys: &armredis.AccessKeys{
// PrimaryKey: to.Ptr("<primaryKey>"),
// SecondaryKey: to.Ptr("<secondaryKey>"),
// },
// HostName: to.Ptr("cache1.redis.cache.windows.net"),
// Instances: []*armredis.InstanceDetails{
// {
// IsMaster: to.Ptr(true),
// IsPrimary: to.Ptr(true),
// NonSSLPort: to.Ptr[int32](13000),
// ShardID: to.Ptr[int32](0),
// SSLPort: to.Ptr[int32](15000),
// Zone: to.Ptr("1"),
// },
// {
// IsMaster: to.Ptr(false),
// IsPrimary: to.Ptr(false),
// NonSSLPort: to.Ptr[int32](13001),
// ShardID: to.Ptr[int32](0),
// SSLPort: to.Ptr[int32](15001),
// Zone: to.Ptr("1"),
// },
// {
// IsMaster: to.Ptr(false),
// IsPrimary: to.Ptr(false),
// NonSSLPort: to.Ptr[int32](13002),
// ShardID: to.Ptr[int32](0),
// SSLPort: to.Ptr[int32](15002),
// Zone: to.Ptr("1"),
// },
// {
// IsMaster: to.Ptr(true),
// IsPrimary: to.Ptr(true),
// NonSSLPort: to.Ptr[int32](13003),
// ShardID: to.Ptr[int32](1),
// SSLPort: to.Ptr[int32](15003),
// Zone: to.Ptr("1"),
// },
// {
// IsMaster: to.Ptr(false),
// IsPrimary: to.Ptr(false),
// NonSSLPort: to.Ptr[int32](13004),
// ShardID: to.Ptr[int32](1),
// SSLPort: to.Ptr[int32](15004),
// Zone: to.Ptr("1"),
// },
// {
// IsMaster: to.Ptr(false),
// IsPrimary: to.Ptr(false),
// NonSSLPort: to.Ptr[int32](13005),
// ShardID: to.Ptr[int32](1),
// SSLPort: to.Ptr[int32](15005),
// Zone: to.Ptr("1"),
// }},
// Port: to.Ptr[int32](6379),
// ProvisioningState: to.Ptr(armredis.ProvisioningStateSucceeded),
// SSLPort: to.Ptr[int32](6380),
// },
// Zones: []*string{
// to.Ptr("1")},
// }
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
const { RedisManagementClient } = require("@azure/arm-rediscache");
const { DefaultAzureCredential } = require("@azure/identity");
require("dotenv/config");
/**
* This sample demonstrates how to Create or replace (overwrite/recreate, with potential downtime) an existing Redis cache.
*
* @summary Create or replace (overwrite/recreate, with potential downtime) an existing Redis cache.
* x-ms-original-file: specification/redis/resource-manager/Microsoft.Cache/stable/2024-11-01/examples/RedisCacheCreateLatestVersion.json
*/
async function redisCacheCreateLatestVersion() {
const subscriptionId = process.env["REDIS_SUBSCRIPTION_ID"] || "subid";
const resourceGroupName = process.env["REDIS_RESOURCE_GROUP"] || "rg1";
const name = "cache1";
const parameters = {
enableNonSslPort: true,
location: "East US",
minimumTlsVersion: "1.2",
redisConfiguration: { maxmemoryPolicy: "allkeys-lru" },
redisVersion: "Latest",
replicasPerPrimary: 2,
shardCount: 2,
sku: { name: "Premium", capacity: 1, family: "P" },
staticIP: "192.168.0.5",
subnetId:
"/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/network1/subnets/subnet1",
zones: ["1"],
};
const credential = new DefaultAzureCredential();
const client = new RedisManagementClient(credential, subscriptionId);
const result = await client.redis.beginCreateAndWait(resourceGroupName, name, parameters);
console.log(result);
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
using Azure;
using Azure.ResourceManager;
using System;
using System.Net;
using System.Threading.Tasks;
using Azure.Core;
using Azure.Identity;
using Azure.ResourceManager.Redis.Models;
using Azure.ResourceManager.Resources;
using Azure.ResourceManager.Redis;
// Generated from example definition: specification/redis/resource-manager/Microsoft.Cache/stable/2024-11-01/examples/RedisCacheCreateLatestVersion.json
// this example is just showing the usage of "Redis_Create" operation, for the dependent resources, they will have to be created separately.
// get your azure access token, for more details of how Azure SDK get your access token, please refer to https://learn.microsoft.com/en-us/dotnet/azure/sdk/authentication?tabs=command-line
TokenCredential cred = new DefaultAzureCredential();
// authenticate your client
ArmClient client = new ArmClient(cred);
// this example assumes you already have this ResourceGroupResource created on azure
// for more information of creating ResourceGroupResource, please refer to the document of ResourceGroupResource
string subscriptionId = "subid";
string resourceGroupName = "rg1";
ResourceIdentifier resourceGroupResourceId = ResourceGroupResource.CreateResourceIdentifier(subscriptionId, resourceGroupName);
ResourceGroupResource resourceGroupResource = client.GetResourceGroupResource(resourceGroupResourceId);
// get the collection of this RedisResource
RedisCollection collection = resourceGroupResource.GetAllRedis();
// invoke the operation
string name = "cache1";
RedisCreateOrUpdateContent content = new RedisCreateOrUpdateContent(new AzureLocation("East US"), new RedisSku(RedisSkuName.Premium, RedisSkuFamily.Premium, 1))
{
Zones = { "1" },
RedisConfiguration = new RedisCommonConfiguration
{
MaxMemoryPolicy = "allkeys-lru",
},
RedisVersion = "Latest",
EnableNonSslPort = true,
ReplicasPerPrimary = 2,
ShardCount = 2,
MinimumTlsVersion = RedisTlsVersion.Tls1_2,
SubnetId = new ResourceIdentifier("/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/network1/subnets/subnet1"),
StaticIP = IPAddress.Parse("192.168.0.5"),
};
ArmOperation<RedisResource> lro = await collection.CreateOrUpdateAsync(WaitUntil.Completed, name, content);
RedisResource result = lro.Value;
// the variable result is a resource, you could call other operations on this instance as well
// but just for demo, we get its data from this resource instance
RedisData resourceData = result.Data;
// for demo we just print out the id
Console.WriteLine($"Succeeded on id: {resourceData.Id}");
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
Respuesta de muestra
{
"id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cache/Redis/cache1",
"location": "West US",
"zones": [
"1"
],
"name": "cache1",
"type": "Microsoft.Cache/Redis",
"tags": {},
"properties": {
"accessKeys": {
"primaryKey": "<primaryKey>",
"secondaryKey": "<secondaryKey>"
},
"provisioningState": "Succeeded",
"redisVersion": "6.0.14",
"sku": {
"name": "Premium",
"family": "P",
"capacity": 1
},
"enableNonSslPort": false,
"replicasPerMaster": 2,
"replicasPerPrimary": 2,
"updateChannel": "Stable",
"zonalAllocationPolicy": "UserDefined",
"redisConfiguration": {
"maxmemory-policy": "allkeys-lru"
},
"hostName": "cache1.redis.cache.windows.net",
"port": 6379,
"sslPort": 6380,
"minimumTlsVersion": "1.2",
"instances": [
{
"sslPort": 15000,
"nonSslPort": 13000,
"zone": "1",
"shardId": 0,
"isMaster": true,
"isPrimary": true
},
{
"sslPort": 15001,
"nonSslPort": 13001,
"zone": "1",
"shardId": 0,
"isMaster": false,
"isPrimary": false
},
{
"sslPort": 15002,
"nonSslPort": 13002,
"zone": "1",
"shardId": 0,
"isMaster": false,
"isPrimary": false
},
{
"sslPort": 15003,
"nonSslPort": 13003,
"zone": "1",
"shardId": 1,
"isMaster": true,
"isPrimary": true
},
{
"sslPort": 15004,
"nonSslPort": 13004,
"zone": "1",
"shardId": 1,
"isMaster": false,
"isPrimary": false
},
{
"sslPort": 15005,
"nonSslPort": 13005,
"zone": "1",
"shardId": 1,
"isMaster": false,
"isPrimary": false
}
]
}
}
{
"id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cache/Redis/cache1",
"location": "West US",
"zones": [
"1"
],
"name": "cache1",
"type": "Microsoft.Cache/Redis",
"tags": {},
"properties": {
"accessKeys": {
"primaryKey": "<primaryKey>",
"secondaryKey": "<secondaryKey>"
},
"provisioningState": "Succeeded",
"redisVersion": "6.0.14",
"sku": {
"name": "Premium",
"family": "P",
"capacity": 1
},
"enableNonSslPort": false,
"replicasPerMaster": 2,
"replicasPerPrimary": 2,
"updateChannel": "Stable",
"zonalAllocationPolicy": "UserDefined",
"redisConfiguration": {
"maxclients": "1000",
"maxmemory-reserved": "50",
"maxmemory-delta": "50"
},
"hostName": "cache1.redis.cache.windows.net",
"port": 6379,
"sslPort": 6380,
"minimumTlsVersion": "1.2",
"instances": [
{
"sslPort": 15000,
"nonSslPort": 13000,
"zone": "1",
"shardId": 0,
"isMaster": true,
"isPrimary": true
},
{
"sslPort": 15001,
"nonSslPort": 13001,
"zone": "1",
"shardId": 0,
"isMaster": false,
"isPrimary": false
},
{
"sslPort": 15002,
"nonSslPort": 13002,
"zone": "1",
"shardId": 0,
"isMaster": false,
"isPrimary": false
},
{
"sslPort": 15003,
"nonSslPort": 13003,
"zone": "1",
"shardId": 1,
"isMaster": true,
"isPrimary": true
},
{
"sslPort": 15004,
"nonSslPort": 13004,
"zone": "1",
"shardId": 1,
"isMaster": false,
"isPrimary": false
},
{
"sslPort": 15005,
"nonSslPort": 13005,
"zone": "1",
"shardId": 1,
"isMaster": false,
"isPrimary": false
}
]
}
}
RedisCacheCreateNoZonesZonalAllocationPolicy
Solicitud de ejemplo
PUT https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cache/redis/cache1?api-version=2024-11-01
{
"location": "East US",
"properties": {
"sku": {
"name": "Premium",
"family": "P",
"capacity": 1
},
"enableNonSslPort": true,
"shardCount": 2,
"replicasPerPrimary": 2,
"zonalAllocationPolicy": "NoZones",
"redisConfiguration": {
"maxmemory-policy": "allkeys-lru"
},
"subnetId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/network1/subnets/subnet1",
"staticIP": "192.168.0.5",
"minimumTlsVersion": "1.2"
}
}
import com.azure.resourcemanager.redis.models.RedisConfiguration;
import com.azure.resourcemanager.redis.models.RedisCreateParameters;
import com.azure.resourcemanager.redis.models.Sku;
import com.azure.resourcemanager.redis.models.SkuFamily;
import com.azure.resourcemanager.redis.models.SkuName;
import com.azure.resourcemanager.redis.models.TlsVersion;
import com.azure.resourcemanager.redis.models.ZonalAllocationPolicy;
import java.util.HashMap;
import java.util.Map;
/**
* Samples for Redis Create.
*/
public final class Main {
/*
* x-ms-original-file: specification/redis/resource-manager/Microsoft.Cache/stable/2024-11-01/examples/
* RedisCacheCreateNoZonesZonalAllocationPolicy.json
*/
/**
* Sample code: RedisCacheCreateNoZonesZonalAllocationPolicy.
*
* @param azure The entry point for accessing resource management APIs in Azure.
*/
public static void
redisCacheCreateNoZonesZonalAllocationPolicy(com.azure.resourcemanager.AzureResourceManager azure) {
azure.redisCaches().manager().serviceClient().getRedis().create("rg1", "cache1", new RedisCreateParameters()
.withLocation("East US")
.withSku(new Sku().withName(SkuName.PREMIUM).withFamily(SkuFamily.P).withCapacity(1))
.withSubnetId(
"/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/network1/subnets/subnet1")
.withStaticIp("192.168.0.5")
.withRedisConfiguration(
new RedisConfiguration().withMaxmemoryPolicy("allkeys-lru").withAdditionalProperties(mapOf()))
.withEnableNonSslPort(true).withReplicasPerPrimary(2).withShardCount(2)
.withMinimumTlsVersion(TlsVersion.ONE_TWO).withZonalAllocationPolicy(ZonalAllocationPolicy.NO_ZONES),
com.azure.core.util.Context.NONE);
}
// Use "Map.of" if available
@SuppressWarnings("unchecked")
private static <T> Map<String, T> mapOf(Object... inputs) {
Map<String, T> map = new HashMap<>();
for (int i = 0; i < inputs.length; i += 2) {
String key = (String) inputs[i];
T value = (T) inputs[i + 1];
map.put(key, value);
}
return map;
}
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
from azure.identity import DefaultAzureCredential
from azure.mgmt.redis import RedisManagementClient
"""
# PREREQUISITES
pip install azure-identity
pip install azure-mgmt-redis
# USAGE
python redis_cache_create_no_zones_zonal_allocation_policy.py
Before run the sample, please set the values of the client ID, tenant ID and client secret
of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID,
AZURE_CLIENT_SECRET. For more info about how to get the value, please see:
https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal
"""
def main():
client = RedisManagementClient(
credential=DefaultAzureCredential(),
subscription_id="subid",
)
response = client.redis.begin_create(
resource_group_name="rg1",
name="cache1",
parameters={
"location": "East US",
"properties": {
"enableNonSslPort": True,
"minimumTlsVersion": "1.2",
"redisConfiguration": {"maxmemory-policy": "allkeys-lru"},
"replicasPerPrimary": 2,
"shardCount": 2,
"sku": {"capacity": 1, "family": "P", "name": "Premium"},
"staticIP": "192.168.0.5",
"subnetId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/network1/subnets/subnet1",
"zonalAllocationPolicy": "NoZones",
},
},
).result()
print(response)
# x-ms-original-file: specification/redis/resource-manager/Microsoft.Cache/stable/2024-11-01/examples/RedisCacheCreateNoZonesZonalAllocationPolicy.json
if __name__ == "__main__":
main()
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
package armredis_test
import (
"context"
"log"
"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/redis/armredis/v3"
)
// Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/45374f48f560b3337ed55735038f1e9bf8cbea65/specification/redis/resource-manager/Microsoft.Cache/stable/2024-11-01/examples/RedisCacheCreateNoZonesZonalAllocationPolicy.json
func ExampleClient_BeginCreate_redisCacheCreateNoZonesZonalAllocationPolicy() {
cred, err := azidentity.NewDefaultAzureCredential(nil)
if err != nil {
log.Fatalf("failed to obtain a credential: %v", err)
}
ctx := context.Background()
clientFactory, err := armredis.NewClientFactory("<subscription-id>", cred, nil)
if err != nil {
log.Fatalf("failed to create client: %v", err)
}
poller, err := clientFactory.NewClient().BeginCreate(ctx, "rg1", "cache1", armredis.CreateParameters{
Location: to.Ptr("East US"),
Properties: &armredis.CreateProperties{
EnableNonSSLPort: to.Ptr(true),
MinimumTLSVersion: to.Ptr(armredis.TLSVersionOne2),
RedisConfiguration: &armredis.CommonPropertiesRedisConfiguration{
MaxmemoryPolicy: to.Ptr("allkeys-lru"),
},
ReplicasPerPrimary: to.Ptr[int32](2),
ShardCount: to.Ptr[int32](2),
ZonalAllocationPolicy: to.Ptr(armredis.ZonalAllocationPolicyNoZones),
SKU: &armredis.SKU{
Name: to.Ptr(armredis.SKUNamePremium),
Capacity: to.Ptr[int32](1),
Family: to.Ptr(armredis.SKUFamilyP),
},
StaticIP: to.Ptr("192.168.0.5"),
SubnetID: to.Ptr("/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/network1/subnets/subnet1"),
},
}, nil)
if err != nil {
log.Fatalf("failed to finish the request: %v", err)
}
res, err := poller.PollUntilDone(ctx, nil)
if err != nil {
log.Fatalf("failed to pull the result: %v", err)
}
// You could use response here. We use blank identifier for just demo purposes.
_ = res
// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
// res.ResourceInfo = armredis.ResourceInfo{
// Name: to.Ptr("cache1"),
// Type: to.Ptr("Microsoft.Cache/Redis"),
// ID: to.Ptr("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cache/Redis/cache1"),
// Location: to.Ptr("East US"),
// Tags: map[string]*string{
// },
// Properties: &armredis.Properties{
// EnableNonSSLPort: to.Ptr(true),
// MinimumTLSVersion: to.Ptr(armredis.TLSVersionOne2),
// RedisConfiguration: &armredis.CommonPropertiesRedisConfiguration{
// Maxclients: to.Ptr("1000"),
// MaxmemoryDelta: to.Ptr("50"),
// MaxmemoryReserved: to.Ptr("50"),
// },
// RedisVersion: to.Ptr("6.0"),
// ReplicasPerMaster: to.Ptr[int32](2),
// ReplicasPerPrimary: to.Ptr[int32](2),
// ShardCount: to.Ptr[int32](2),
// UpdateChannel: to.Ptr(armredis.UpdateChannelStable),
// ZonalAllocationPolicy: to.Ptr(armredis.ZonalAllocationPolicyNoZones),
// SKU: &armredis.SKU{
// Name: to.Ptr(armredis.SKUNamePremium),
// Capacity: to.Ptr[int32](1),
// Family: to.Ptr(armredis.SKUFamilyP),
// },
// AccessKeys: &armredis.AccessKeys{
// PrimaryKey: to.Ptr("<primaryKey>"),
// SecondaryKey: to.Ptr("<secondaryKey>"),
// },
// HostName: to.Ptr("cache1.redis.cache.windows.net"),
// Instances: []*armredis.InstanceDetails{
// {
// IsMaster: to.Ptr(true),
// IsPrimary: to.Ptr(true),
// NonSSLPort: to.Ptr[int32](13000),
// ShardID: to.Ptr[int32](0),
// SSLPort: to.Ptr[int32](15000),
// },
// {
// IsMaster: to.Ptr(false),
// IsPrimary: to.Ptr(false),
// NonSSLPort: to.Ptr[int32](13001),
// ShardID: to.Ptr[int32](0),
// SSLPort: to.Ptr[int32](15001),
// },
// {
// IsMaster: to.Ptr(false),
// IsPrimary: to.Ptr(false),
// NonSSLPort: to.Ptr[int32](13002),
// ShardID: to.Ptr[int32](0),
// SSLPort: to.Ptr[int32](15002),
// },
// {
// IsMaster: to.Ptr(true),
// IsPrimary: to.Ptr(true),
// NonSSLPort: to.Ptr[int32](13003),
// ShardID: to.Ptr[int32](1),
// SSLPort: to.Ptr[int32](15003),
// },
// {
// IsMaster: to.Ptr(false),
// IsPrimary: to.Ptr(false),
// NonSSLPort: to.Ptr[int32](13004),
// ShardID: to.Ptr[int32](1),
// SSLPort: to.Ptr[int32](15004),
// },
// {
// IsMaster: to.Ptr(false),
// IsPrimary: to.Ptr(false),
// NonSSLPort: to.Ptr[int32](13005),
// ShardID: to.Ptr[int32](1),
// SSLPort: to.Ptr[int32](15005),
// }},
// Port: to.Ptr[int32](6379),
// ProvisioningState: to.Ptr(armredis.ProvisioningStateSucceeded),
// SSLPort: to.Ptr[int32](6380),
// },
// }
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
const { RedisManagementClient } = require("@azure/arm-rediscache");
const { DefaultAzureCredential } = require("@azure/identity");
require("dotenv/config");
/**
* This sample demonstrates how to Create or replace (overwrite/recreate, with potential downtime) an existing Redis cache.
*
* @summary Create or replace (overwrite/recreate, with potential downtime) an existing Redis cache.
* x-ms-original-file: specification/redis/resource-manager/Microsoft.Cache/stable/2024-11-01/examples/RedisCacheCreateNoZonesZonalAllocationPolicy.json
*/
async function redisCacheCreateNoZonesZonalAllocationPolicy() {
const subscriptionId = process.env["REDIS_SUBSCRIPTION_ID"] || "subid";
const resourceGroupName = process.env["REDIS_RESOURCE_GROUP"] || "rg1";
const name = "cache1";
const parameters = {
enableNonSslPort: true,
location: "East US",
minimumTlsVersion: "1.2",
redisConfiguration: { maxmemoryPolicy: "allkeys-lru" },
replicasPerPrimary: 2,
shardCount: 2,
sku: { name: "Premium", capacity: 1, family: "P" },
staticIP: "192.168.0.5",
subnetId:
"/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/network1/subnets/subnet1",
zonalAllocationPolicy: "NoZones",
};
const credential = new DefaultAzureCredential();
const client = new RedisManagementClient(credential, subscriptionId);
const result = await client.redis.beginCreateAndWait(resourceGroupName, name, parameters);
console.log(result);
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
using Azure;
using Azure.ResourceManager;
using System;
using System.Net;
using System.Threading.Tasks;
using Azure.Core;
using Azure.Identity;
using Azure.ResourceManager.Redis.Models;
using Azure.ResourceManager.Resources;
using Azure.ResourceManager.Redis;
// Generated from example definition: specification/redis/resource-manager/Microsoft.Cache/stable/2024-11-01/examples/RedisCacheCreateNoZonesZonalAllocationPolicy.json
// this example is just showing the usage of "Redis_Create" operation, for the dependent resources, they will have to be created separately.
// get your azure access token, for more details of how Azure SDK get your access token, please refer to https://learn.microsoft.com/en-us/dotnet/azure/sdk/authentication?tabs=command-line
TokenCredential cred = new DefaultAzureCredential();
// authenticate your client
ArmClient client = new ArmClient(cred);
// this example assumes you already have this ResourceGroupResource created on azure
// for more information of creating ResourceGroupResource, please refer to the document of ResourceGroupResource
string subscriptionId = "subid";
string resourceGroupName = "rg1";
ResourceIdentifier resourceGroupResourceId = ResourceGroupResource.CreateResourceIdentifier(subscriptionId, resourceGroupName);
ResourceGroupResource resourceGroupResource = client.GetResourceGroupResource(resourceGroupResourceId);
// get the collection of this RedisResource
RedisCollection collection = resourceGroupResource.GetAllRedis();
// invoke the operation
string name = "cache1";
RedisCreateOrUpdateContent content = new RedisCreateOrUpdateContent(new AzureLocation("East US"), new RedisSku(RedisSkuName.Premium, RedisSkuFamily.Premium, 1))
{
RedisConfiguration = new RedisCommonConfiguration
{
MaxMemoryPolicy = "allkeys-lru",
},
EnableNonSslPort = true,
ReplicasPerPrimary = 2,
ShardCount = 2,
MinimumTlsVersion = RedisTlsVersion.Tls1_2,
ZonalAllocationPolicy = ZonalAllocationPolicy.NoZones,
SubnetId = new ResourceIdentifier("/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/network1/subnets/subnet1"),
StaticIP = IPAddress.Parse("192.168.0.5"),
};
ArmOperation<RedisResource> lro = await collection.CreateOrUpdateAsync(WaitUntil.Completed, name, content);
RedisResource result = lro.Value;
// the variable result is a resource, you could call other operations on this instance as well
// but just for demo, we get its data from this resource instance
RedisData resourceData = result.Data;
// for demo we just print out the id
Console.WriteLine($"Succeeded on id: {resourceData.Id}");
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
Respuesta de muestra
{
"id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cache/Redis/cache1",
"location": "East US",
"name": "cache1",
"type": "Microsoft.Cache/Redis",
"tags": {},
"properties": {
"accessKeys": {
"primaryKey": "<primaryKey>",
"secondaryKey": "<secondaryKey>"
},
"provisioningState": "Succeeded",
"redisVersion": "6.0",
"sku": {
"name": "Premium",
"family": "P",
"capacity": 1
},
"shardCount": 2,
"enableNonSslPort": true,
"replicasPerMaster": 2,
"replicasPerPrimary": 2,
"updateChannel": "Stable",
"zonalAllocationPolicy": "NoZones",
"redisConfiguration": {
"maxmemory-policy": "allkeys-lru"
},
"hostName": "cache1.redis.cache.windows.net",
"port": 6379,
"sslPort": 6380,
"minimumTlsVersion": "1.2",
"instances": [
{
"sslPort": 15000,
"nonSslPort": 13000,
"shardId": 0,
"isMaster": true,
"isPrimary": true
},
{
"sslPort": 15001,
"nonSslPort": 13001,
"shardId": 0,
"isMaster": false,
"isPrimary": false
},
{
"sslPort": 15002,
"nonSslPort": 13002,
"shardId": 0,
"isMaster": false,
"isPrimary": false
},
{
"sslPort": 15003,
"nonSslPort": 13003,
"shardId": 1,
"isMaster": true,
"isPrimary": true
},
{
"sslPort": 15004,
"nonSslPort": 13004,
"shardId": 1,
"isMaster": false,
"isPrimary": false
},
{
"sslPort": 15005,
"nonSslPort": 13005,
"shardId": 1,
"isMaster": false,
"isPrimary": false
}
]
}
}
{
"id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cache/Redis/cache1",
"location": "East US",
"name": "cache1",
"type": "Microsoft.Cache/Redis",
"tags": {},
"properties": {
"accessKeys": {
"primaryKey": "<primaryKey>",
"secondaryKey": "<secondaryKey>"
},
"provisioningState": "Succeeded",
"redisVersion": "6.0",
"sku": {
"name": "Premium",
"family": "P",
"capacity": 1
},
"shardCount": 2,
"enableNonSslPort": true,
"replicasPerMaster": 2,
"replicasPerPrimary": 2,
"updateChannel": "Stable",
"zonalAllocationPolicy": "NoZones",
"redisConfiguration": {
"maxclients": "1000",
"maxmemory-reserved": "50",
"maxmemory-delta": "50"
},
"hostName": "cache1.redis.cache.windows.net",
"port": 6379,
"sslPort": 6380,
"minimumTlsVersion": "1.2",
"instances": [
{
"sslPort": 15000,
"nonSslPort": 13000,
"shardId": 0,
"isMaster": true,
"isPrimary": true
},
{
"sslPort": 15001,
"nonSslPort": 13001,
"shardId": 0,
"isMaster": false,
"isPrimary": false
},
{
"sslPort": 15002,
"nonSslPort": 13002,
"shardId": 0,
"isMaster": false,
"isPrimary": false
},
{
"sslPort": 15003,
"nonSslPort": 13003,
"shardId": 1,
"isMaster": true,
"isPrimary": true
},
{
"sslPort": 15004,
"nonSslPort": 13004,
"shardId": 1,
"isMaster": false,
"isPrimary": false
},
{
"sslPort": 15005,
"nonSslPort": 13005,
"shardId": 1,
"isMaster": false,
"isPrimary": false
}
]
}
}
RedisCacheCreateUserDefinedZonalAllocationPolicy
Solicitud de ejemplo
PUT https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cache/redis/cache1?api-version=2024-11-01
{
"location": "East US",
"zones": [
"1"
],
"properties": {
"sku": {
"name": "Premium",
"family": "P",
"capacity": 1
},
"redisVersion": "Latest",
"enableNonSslPort": true,
"shardCount": 2,
"replicasPerPrimary": 2,
"zonalAllocationPolicy": "UserDefined",
"redisConfiguration": {
"maxmemory-policy": "allkeys-lru"
},
"subnetId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/network1/subnets/subnet1",
"staticIP": "192.168.0.5",
"minimumTlsVersion": "1.2"
}
}
import com.azure.resourcemanager.redis.models.RedisConfiguration;
import com.azure.resourcemanager.redis.models.RedisCreateParameters;
import com.azure.resourcemanager.redis.models.Sku;
import com.azure.resourcemanager.redis.models.SkuFamily;
import com.azure.resourcemanager.redis.models.SkuName;
import com.azure.resourcemanager.redis.models.TlsVersion;
import com.azure.resourcemanager.redis.models.ZonalAllocationPolicy;
import java.util.Arrays;
import java.util.HashMap;
import java.util.Map;
/**
* Samples for Redis Create.
*/
public final class Main {
/*
* x-ms-original-file: specification/redis/resource-manager/Microsoft.Cache/stable/2024-11-01/examples/
* RedisCacheCreateUserDefinedZonalAllocationPolicy.json
*/
/**
* Sample code: RedisCacheCreateUserDefinedZonalAllocationPolicy.
*
* @param azure The entry point for accessing resource management APIs in Azure.
*/
public static void
redisCacheCreateUserDefinedZonalAllocationPolicy(com.azure.resourcemanager.AzureResourceManager azure) {
azure.redisCaches().manager().serviceClient().getRedis().create("rg1", "cache1", new RedisCreateParameters()
.withZones(Arrays.asList("1")).withLocation("East US")
.withSku(new Sku().withName(SkuName.PREMIUM).withFamily(SkuFamily.P).withCapacity(1))
.withSubnetId(
"/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/network1/subnets/subnet1")
.withStaticIp("192.168.0.5")
.withRedisConfiguration(
new RedisConfiguration().withMaxmemoryPolicy("allkeys-lru").withAdditionalProperties(mapOf()))
.withRedisVersion("Latest").withEnableNonSslPort(true).withReplicasPerPrimary(2).withShardCount(2)
.withMinimumTlsVersion(TlsVersion.ONE_TWO).withZonalAllocationPolicy(ZonalAllocationPolicy.USER_DEFINED),
com.azure.core.util.Context.NONE);
}
// Use "Map.of" if available
@SuppressWarnings("unchecked")
private static <T> Map<String, T> mapOf(Object... inputs) {
Map<String, T> map = new HashMap<>();
for (int i = 0; i < inputs.length; i += 2) {
String key = (String) inputs[i];
T value = (T) inputs[i + 1];
map.put(key, value);
}
return map;
}
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
from azure.identity import DefaultAzureCredential
from azure.mgmt.redis import RedisManagementClient
"""
# PREREQUISITES
pip install azure-identity
pip install azure-mgmt-redis
# USAGE
python redis_cache_create_user_defined_zonal_allocation_policy.py
Before run the sample, please set the values of the client ID, tenant ID and client secret
of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID,
AZURE_CLIENT_SECRET. For more info about how to get the value, please see:
https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal
"""
def main():
client = RedisManagementClient(
credential=DefaultAzureCredential(),
subscription_id="subid",
)
response = client.redis.begin_create(
resource_group_name="rg1",
name="cache1",
parameters={
"location": "East US",
"properties": {
"enableNonSslPort": True,
"minimumTlsVersion": "1.2",
"redisConfiguration": {"maxmemory-policy": "allkeys-lru"},
"redisVersion": "Latest",
"replicasPerPrimary": 2,
"shardCount": 2,
"sku": {"capacity": 1, "family": "P", "name": "Premium"},
"staticIP": "192.168.0.5",
"subnetId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/network1/subnets/subnet1",
"zonalAllocationPolicy": "UserDefined",
},
"zones": ["1"],
},
).result()
print(response)
# x-ms-original-file: specification/redis/resource-manager/Microsoft.Cache/stable/2024-11-01/examples/RedisCacheCreateUserDefinedZonalAllocationPolicy.json
if __name__ == "__main__":
main()
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
package armredis_test
import (
"context"
"log"
"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/redis/armredis/v3"
)
// Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/45374f48f560b3337ed55735038f1e9bf8cbea65/specification/redis/resource-manager/Microsoft.Cache/stable/2024-11-01/examples/RedisCacheCreateUserDefinedZonalAllocationPolicy.json
func ExampleClient_BeginCreate_redisCacheCreateUserDefinedZonalAllocationPolicy() {
cred, err := azidentity.NewDefaultAzureCredential(nil)
if err != nil {
log.Fatalf("failed to obtain a credential: %v", err)
}
ctx := context.Background()
clientFactory, err := armredis.NewClientFactory("<subscription-id>", cred, nil)
if err != nil {
log.Fatalf("failed to create client: %v", err)
}
poller, err := clientFactory.NewClient().BeginCreate(ctx, "rg1", "cache1", armredis.CreateParameters{
Location: to.Ptr("East US"),
Properties: &armredis.CreateProperties{
EnableNonSSLPort: to.Ptr(true),
MinimumTLSVersion: to.Ptr(armredis.TLSVersionOne2),
RedisConfiguration: &armredis.CommonPropertiesRedisConfiguration{
MaxmemoryPolicy: to.Ptr("allkeys-lru"),
},
RedisVersion: to.Ptr("Latest"),
ReplicasPerPrimary: to.Ptr[int32](2),
ShardCount: to.Ptr[int32](2),
ZonalAllocationPolicy: to.Ptr(armredis.ZonalAllocationPolicyUserDefined),
SKU: &armredis.SKU{
Name: to.Ptr(armredis.SKUNamePremium),
Capacity: to.Ptr[int32](1),
Family: to.Ptr(armredis.SKUFamilyP),
},
StaticIP: to.Ptr("192.168.0.5"),
SubnetID: to.Ptr("/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/network1/subnets/subnet1"),
},
Zones: []*string{
to.Ptr("1")},
}, nil)
if err != nil {
log.Fatalf("failed to finish the request: %v", err)
}
res, err := poller.PollUntilDone(ctx, nil)
if err != nil {
log.Fatalf("failed to pull the result: %v", err)
}
// You could use response here. We use blank identifier for just demo purposes.
_ = res
// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
// res.ResourceInfo = armredis.ResourceInfo{
// Name: to.Ptr("cache1"),
// Type: to.Ptr("Microsoft.Cache/Redis"),
// ID: to.Ptr("/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cache/Redis/cache1"),
// Location: to.Ptr("East US"),
// Tags: map[string]*string{
// },
// Properties: &armredis.Properties{
// EnableNonSSLPort: to.Ptr(false),
// MinimumTLSVersion: to.Ptr(armredis.TLSVersionOne2),
// RedisConfiguration: &armredis.CommonPropertiesRedisConfiguration{
// Maxclients: to.Ptr("1000"),
// MaxmemoryDelta: to.Ptr("50"),
// MaxmemoryReserved: to.Ptr("50"),
// },
// RedisVersion: to.Ptr("6.0.14"),
// ReplicasPerMaster: to.Ptr[int32](2),
// ReplicasPerPrimary: to.Ptr[int32](2),
// UpdateChannel: to.Ptr(armredis.UpdateChannelStable),
// ZonalAllocationPolicy: to.Ptr(armredis.ZonalAllocationPolicyUserDefined),
// SKU: &armredis.SKU{
// Name: to.Ptr(armredis.SKUNamePremium),
// Capacity: to.Ptr[int32](1),
// Family: to.Ptr(armredis.SKUFamilyP),
// },
// AccessKeys: &armredis.AccessKeys{
// PrimaryKey: to.Ptr("<primaryKey>"),
// SecondaryKey: to.Ptr("<secondaryKey>"),
// },
// HostName: to.Ptr("cache1.redis.cache.windows.net"),
// Instances: []*armredis.InstanceDetails{
// {
// IsMaster: to.Ptr(true),
// IsPrimary: to.Ptr(true),
// NonSSLPort: to.Ptr[int32](13000),
// ShardID: to.Ptr[int32](0),
// SSLPort: to.Ptr[int32](15000),
// Zone: to.Ptr("1"),
// },
// {
// IsMaster: to.Ptr(false),
// IsPrimary: to.Ptr(false),
// NonSSLPort: to.Ptr[int32](13001),
// ShardID: to.Ptr[int32](0),
// SSLPort: to.Ptr[int32](15001),
// Zone: to.Ptr("1"),
// },
// {
// IsMaster: to.Ptr(false),
// IsPrimary: to.Ptr(false),
// NonSSLPort: to.Ptr[int32](13002),
// ShardID: to.Ptr[int32](0),
// SSLPort: to.Ptr[int32](15002),
// Zone: to.Ptr("1"),
// },
// {
// IsMaster: to.Ptr(true),
// IsPrimary: to.Ptr(true),
// NonSSLPort: to.Ptr[int32](13003),
// ShardID: to.Ptr[int32](1),
// SSLPort: to.Ptr[int32](15003),
// Zone: to.Ptr("1"),
// },
// {
// IsMaster: to.Ptr(false),
// IsPrimary: to.Ptr(false),
// NonSSLPort: to.Ptr[int32](13004),
// ShardID: to.Ptr[int32](1),
// SSLPort: to.Ptr[int32](15004),
// Zone: to.Ptr("1"),
// },
// {
// IsMaster: to.Ptr(false),
// IsPrimary: to.Ptr(false),
// NonSSLPort: to.Ptr[int32](13005),
// ShardID: to.Ptr[int32](1),
// SSLPort: to.Ptr[int32](15005),
// Zone: to.Ptr("1"),
// }},
// Port: to.Ptr[int32](6379),
// ProvisioningState: to.Ptr(armredis.ProvisioningStateSucceeded),
// SSLPort: to.Ptr[int32](6380),
// },
// Zones: []*string{
// to.Ptr("1")},
// }
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
const { RedisManagementClient } = require("@azure/arm-rediscache");
const { DefaultAzureCredential } = require("@azure/identity");
require("dotenv/config");
/**
* This sample demonstrates how to Create or replace (overwrite/recreate, with potential downtime) an existing Redis cache.
*
* @summary Create or replace (overwrite/recreate, with potential downtime) an existing Redis cache.
* x-ms-original-file: specification/redis/resource-manager/Microsoft.Cache/stable/2024-11-01/examples/RedisCacheCreateUserDefinedZonalAllocationPolicy.json
*/
async function redisCacheCreateUserDefinedZonalAllocationPolicy() {
const subscriptionId = process.env["REDIS_SUBSCRIPTION_ID"] || "subid";
const resourceGroupName = process.env["REDIS_RESOURCE_GROUP"] || "rg1";
const name = "cache1";
const parameters = {
enableNonSslPort: true,
location: "East US",
minimumTlsVersion: "1.2",
redisConfiguration: { maxmemoryPolicy: "allkeys-lru" },
redisVersion: "Latest",
replicasPerPrimary: 2,
shardCount: 2,
sku: { name: "Premium", capacity: 1, family: "P" },
staticIP: "192.168.0.5",
subnetId:
"/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/network1/subnets/subnet1",
zonalAllocationPolicy: "UserDefined",
zones: ["1"],
};
const credential = new DefaultAzureCredential();
const client = new RedisManagementClient(credential, subscriptionId);
const result = await client.redis.beginCreateAndWait(resourceGroupName, name, parameters);
console.log(result);
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
using Azure;
using Azure.ResourceManager;
using System;
using System.Net;
using System.Threading.Tasks;
using Azure.Core;
using Azure.Identity;
using Azure.ResourceManager.Redis.Models;
using Azure.ResourceManager.Resources;
using Azure.ResourceManager.Redis;
// Generated from example definition: specification/redis/resource-manager/Microsoft.Cache/stable/2024-11-01/examples/RedisCacheCreateUserDefinedZonalAllocationPolicy.json
// this example is just showing the usage of "Redis_Create" operation, for the dependent resources, they will have to be created separately.
// get your azure access token, for more details of how Azure SDK get your access token, please refer to https://learn.microsoft.com/en-us/dotnet/azure/sdk/authentication?tabs=command-line
TokenCredential cred = new DefaultAzureCredential();
// authenticate your client
ArmClient client = new ArmClient(cred);
// this example assumes you already have this ResourceGroupResource created on azure
// for more information of creating ResourceGroupResource, please refer to the document of ResourceGroupResource
string subscriptionId = "subid";
string resourceGroupName = "rg1";
ResourceIdentifier resourceGroupResourceId = ResourceGroupResource.CreateResourceIdentifier(subscriptionId, resourceGroupName);
ResourceGroupResource resourceGroupResource = client.GetResourceGroupResource(resourceGroupResourceId);
// get the collection of this RedisResource
RedisCollection collection = resourceGroupResource.GetAllRedis();
// invoke the operation
string name = "cache1";
RedisCreateOrUpdateContent content = new RedisCreateOrUpdateContent(new AzureLocation("East US"), new RedisSku(RedisSkuName.Premium, RedisSkuFamily.Premium, 1))
{
Zones = { "1" },
RedisConfiguration = new RedisCommonConfiguration
{
MaxMemoryPolicy = "allkeys-lru",
},
RedisVersion = "Latest",
EnableNonSslPort = true,
ReplicasPerPrimary = 2,
ShardCount = 2,
MinimumTlsVersion = RedisTlsVersion.Tls1_2,
ZonalAllocationPolicy = ZonalAllocationPolicy.UserDefined,
SubnetId = new ResourceIdentifier("/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/network1/subnets/subnet1"),
StaticIP = IPAddress.Parse("192.168.0.5"),
};
ArmOperation<RedisResource> lro = await collection.CreateOrUpdateAsync(WaitUntil.Completed, name, content);
RedisResource result = lro.Value;
// the variable result is a resource, you could call other operations on this instance as well
// but just for demo, we get its data from this resource instance
RedisData resourceData = result.Data;
// for demo we just print out the id
Console.WriteLine($"Succeeded on id: {resourceData.Id}");
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
Respuesta de muestra
{
"id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cache/Redis/cache1",
"location": "East US",
"zones": [
"1"
],
"name": "cache1",
"type": "Microsoft.Cache/Redis",
"tags": {},
"properties": {
"accessKeys": {
"primaryKey": "<primaryKey>",
"secondaryKey": "<secondaryKey>"
},
"provisioningState": "Succeeded",
"redisVersion": "6.0.14",
"sku": {
"name": "Premium",
"family": "P",
"capacity": 1
},
"enableNonSslPort": false,
"replicasPerMaster": 2,
"replicasPerPrimary": 2,
"updateChannel": "Stable",
"zonalAllocationPolicy": "UserDefined",
"redisConfiguration": {
"maxmemory-policy": "allkeys-lru"
},
"hostName": "cache1.redis.cache.windows.net",
"port": 6379,
"sslPort": 6380,
"minimumTlsVersion": "1.2",
"instances": [
{
"sslPort": 15000,
"nonSslPort": 13000,
"zone": "1",
"shardId": 0,
"isMaster": true,
"isPrimary": true
},
{
"sslPort": 15001,
"nonSslPort": 13001,
"zone": "1",
"shardId": 0,
"isMaster": false,
"isPrimary": false
},
{
"sslPort": 15002,
"nonSslPort": 13002,
"zone": "1",
"shardId": 0,
"isMaster": false,
"isPrimary": false
},
{
"sslPort": 15003,
"nonSslPort": 13003,
"zone": "1",
"shardId": 1,
"isMaster": true,
"isPrimary": true
},
{
"sslPort": 15004,
"nonSslPort": 13004,
"zone": "1",
"shardId": 1,
"isMaster": false,
"isPrimary": false
},
{
"sslPort": 15005,
"nonSslPort": 13005,
"zone": "1",
"shardId": 1,
"isMaster": false,
"isPrimary": false
}
]
}
}
{
"id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cache/Redis/cache1",
"location": "East US",
"zones": [
"1"
],
"name": "cache1",
"type": "Microsoft.Cache/Redis",
"tags": {},
"properties": {
"accessKeys": {
"primaryKey": "<primaryKey>",
"secondaryKey": "<secondaryKey>"
},
"provisioningState": "Succeeded",
"redisVersion": "6.0.14",
"sku": {
"name": "Premium",
"family": "P",
"capacity": 1
},
"enableNonSslPort": false,
"replicasPerMaster": 2,
"replicasPerPrimary": 2,
"updateChannel": "Stable",
"zonalAllocationPolicy": "UserDefined",
"redisConfiguration": {
"maxclients": "1000",
"maxmemory-reserved": "50",
"maxmemory-delta": "50"
},
"hostName": "cache1.redis.cache.windows.net",
"port": 6379,
"sslPort": 6380,
"minimumTlsVersion": "1.2",
"instances": [
{
"sslPort": 15000,
"nonSslPort": 13000,
"zone": "1",
"shardId": 0,
"isMaster": true,
"isPrimary": true
},
{
"sslPort": 15001,
"nonSslPort": 13001,
"zone": "1",
"shardId": 0,
"isMaster": false,
"isPrimary": false
},
{
"sslPort": 15002,
"nonSslPort": 13002,
"zone": "1",
"shardId": 0,
"isMaster": false,
"isPrimary": false
},
{
"sslPort": 15003,
"nonSslPort": 13003,
"zone": "1",
"shardId": 1,
"isMaster": true,
"isPrimary": true
},
{
"sslPort": 15004,
"nonSslPort": 13004,
"zone": "1",
"shardId": 1,
"isMaster": false,
"isPrimary": false
},
{
"sslPort": 15005,
"nonSslPort": 13005,
"zone": "1",
"shardId": 1,
"isMaster": false,
"isPrimary": false
}
]
}
}
Definiciones
Nombre |
Description |
ErrorAdditionalInfo
|
Información adicional sobre el error de administración de recursos.
|
ErrorDetail
|
Detalle del error.
|
ErrorResponse
|
Respuesta de error
|
ManagedServiceIdentity
|
Identidad de servicio administrada (identidades asignadas por el sistema o asignadas por el usuario)
|
ManagedServiceIdentityType
|
Tipo de identidad de servicio administrada (donde se permiten los tipos SystemAssigned y UserAssigned).
|
PrivateEndpoint
|
El recurso Punto de conexión privado.
|
PrivateEndpointConnection
|
El recurso Conexión de punto de conexión privado.
|
PrivateEndpointConnectionProvisioningState
|
Estado de aprovisionamiento actual.
|
PrivateEndpointServiceConnectionStatus
|
Estado de conexión del punto de conexión privado.
|
PrivateLinkServiceConnectionState
|
Colección de información sobre el estado de la conexión entre el consumidor del servicio y el proveedor.
|
ProvisioningState
|
Estado de aprovisionamiento de instancias de Redis.
|
PublicNetworkAccess
|
Indica si se permite o no el acceso al punto de conexión público para esta memoria caché. El valor es opcional, pero si se pasa, debe ser "Habilitado" o "Deshabilitado". Si es "Deshabilitado", los puntos de conexión privados son el método de acceso exclusivo. El valor predeterminado es "Enabled"
|
RedisAccessKeys
|
Claves de acceso de Redis Cache.
|
RedisConfiguration
|
Toda la configuración de Redis. Pocas claves posibles: rdb-backup-enabled,rdb-storage-connection-string,rdb-backup-frequency,maxmemory-delta, maxmemory-policy,notify-keyspace-events, aof-backup-enabled, aof-storage-connection-string-0, aof-storage-connection-string-1, etc.
|
RedisCreateParameters
|
Parámetros proporcionados a la operación Crear redis.
|
RedisInstanceDetails
|
Detalles de una sola instancia de redis.
|
RedisLinkedServer
|
Identificador del servidor vinculado
|
RedisResource
|
Un único elemento de Redis en List or Get Operation.
|
Sku
|
Parámetros de SKU proporcionados para la operación de creación de Redis.
|
SkuFamily
|
Familia de SKU que se va a usar. Valores válidos: (C, P). (C = Básico/Estándar, P = Premium).
|
SkuName
|
Tipo de caché de Redis que se va a implementar. Valores válidos: (Básico, Estándar, Premium)
|
TlsVersion
|
Opcional: requiere que los clientes usen una versión TLS especificada (o superior) para conectarse (por ejemplo, "1.0", "1.1", "1.2")
|
UpdateChannel
|
Opcional: especifica el canal de actualización para las actualizaciones mensuales de Redis que recibirá la instancia de Redis Cache. Las memorias caché que usan el canal de actualización "Versión preliminar" obtienen las actualizaciones más recientes de Redis al menos 4 semanas antes de las cachés de canales "estables". El valor predeterminado es "Estable".
|
UserAssignedIdentity
|
Propiedades de identidad asignadas por el usuario
|
ZonalAllocationPolicy
|
Opcional: especifica cómo se asignan las zonas de disponibilidad a la caché de Redis. "Automático" permite la redundancia de zona y Azure seleccionará automáticamente las zonas en función de la disponibilidad y capacidad regionales. "UserDefined" seleccionará las zonas de disponibilidad pasadas mediante el parámetro "zones". "NoZones" generará una caché no zonal. Si no se pasa "zonalAllocationPolicy", se establecerá en "UserDefined" cuando se pasen las zonas; de lo contrario, se establecerá en "Automático" en regiones donde se admiten zonas y "NoZones" en regiones donde no se admiten zonas.
|
ErrorAdditionalInfo
Object
Información adicional sobre el error de administración de recursos.
Nombre |
Tipo |
Description |
info
|
object
|
Información adicional.
|
type
|
string
|
Tipo de información adicional.
|
ErrorDetail
Object
Detalle del error.
Nombre |
Tipo |
Description |
additionalInfo
|
ErrorAdditionalInfo[]
|
Información adicional del error.
|
code
|
string
|
Código de error.
|
details
|
ErrorDetail[]
|
Detalles del error.
|
message
|
string
|
Mensaje de error.
|
target
|
string
|
Destino del error.
|
ErrorResponse
Object
Respuesta de error
Nombre |
Tipo |
Description |
error
|
ErrorDetail
|
Objeto de error.
|
ManagedServiceIdentity
Object
Identidad de servicio administrada (identidades asignadas por el sistema o asignadas por el usuario)
Nombre |
Tipo |
Description |
principalId
|
string
|
Identificador de entidad de servicio de la identidad asignada por el sistema. Esta propiedad solo se proporcionará para una identidad asignada por el sistema.
|
tenantId
|
string
|
Identificador de inquilino de la identidad asignada por el sistema. Esta propiedad solo se proporcionará para una identidad asignada por el sistema.
|
type
|
ManagedServiceIdentityType
|
Tipo de identidad de servicio administrada (donde se permiten los tipos SystemAssigned y UserAssigned).
|
userAssignedIdentities
|
<string,
UserAssignedIdentity>
|
identidades de User-Assigned
Conjunto de identidades asignadas por el usuario asociadas al recurso. Las claves de diccionario userAssignedIdentities serán identificadores de recursos de ARM con el formato: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}. Los valores del diccionario pueden ser objetos vacíos ({}) en las solicitudes.
|
ManagedServiceIdentityType
Enumeration
Tipo de identidad de servicio administrada (donde se permiten los tipos SystemAssigned y UserAssigned).
Valor |
Description |
None
|
|
SystemAssigned
|
|
SystemAssigned, UserAssigned
|
|
UserAssigned
|
|
PrivateEndpoint
Object
El recurso Punto de conexión privado.
Nombre |
Tipo |
Description |
id
|
string
|
Identificador de ARM para punto de conexión privado
|
PrivateEndpointConnection
Object
El recurso Conexión de punto de conexión privado.
Nombre |
Tipo |
Description |
id
|
string
|
Identificador de recurso completo para el recurso. Por ejemplo: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}
|
name
|
string
|
Nombre del recurso
|
properties.privateEndpoint
|
PrivateEndpoint
|
Recurso del punto de conexión privado.
|
properties.privateLinkServiceConnectionState
|
PrivateLinkServiceConnectionState
|
Colección de información sobre el estado de la conexión entre el consumidor del servicio y el proveedor.
|
properties.provisioningState
|
PrivateEndpointConnectionProvisioningState
|
Estado de aprovisionamiento del recurso de conexión de punto de conexión privado.
|
type
|
string
|
Tipo del recurso. Por ejemplo, "Microsoft.Compute/virtualMachines" o "Microsoft.Storage/storageAccounts"
|
PrivateEndpointConnectionProvisioningState
Enumeration
Estado de aprovisionamiento actual.
Valor |
Description |
Creating
|
|
Deleting
|
|
Failed
|
|
Succeeded
|
|
PrivateEndpointServiceConnectionStatus
Enumeration
Estado de conexión del punto de conexión privado.
Valor |
Description |
Approved
|
|
Pending
|
|
Rejected
|
|
PrivateLinkServiceConnectionState
Object
Colección de información sobre el estado de la conexión entre el consumidor del servicio y el proveedor.
Nombre |
Tipo |
Description |
actionsRequired
|
string
|
Mensaje que indica si los cambios en el proveedor de servicios requieren actualizaciones en el consumidor.
|
description
|
string
|
Motivo de aprobación o rechazo de la conexión.
|
status
|
PrivateEndpointServiceConnectionStatus
|
Indica si el propietario del servicio ha aprobado o rechazado o eliminado la conexión.
|
ProvisioningState
Enumeration
Estado de aprovisionamiento de instancias de Redis.
Valor |
Description |
ConfiguringAAD
|
|
Creating
|
|
Deleting
|
|
Disabled
|
|
Failed
|
|
Linking
|
|
Provisioning
|
|
RecoveringScaleFailure
|
|
Scaling
|
|
Succeeded
|
|
Unlinking
|
|
Unprovisioning
|
|
Updating
|
|
PublicNetworkAccess
Enumeration
Indica si se permite o no el acceso al punto de conexión público para esta memoria caché. El valor es opcional, pero si se pasa, debe ser "Habilitado" o "Deshabilitado". Si es "Deshabilitado", los puntos de conexión privados son el método de acceso exclusivo. El valor predeterminado es "Enabled"
Valor |
Description |
Disabled
|
|
Enabled
|
|
RedisAccessKeys
Object
Claves de acceso de Redis Cache.
Nombre |
Tipo |
Description |
primaryKey
|
string
|
Clave principal actual que los clientes pueden usar para autenticarse con Redis Cache.
|
secondaryKey
|
string
|
La clave secundaria actual que los clientes pueden usar para autenticarse con Redis Cache.
|
RedisConfiguration
Object
Toda la configuración de Redis. Pocas claves posibles: rdb-backup-enabled,rdb-storage-connection-string,rdb-backup-frequency,maxmemory-delta, maxmemory-policy,notify-keyspace-events, aof-backup-enabled, aof-storage-connection-string-0, aof-storage-connection-string-1, etc.
Nombre |
Tipo |
Description |
aad-enabled
|
string
|
Especifica si la autenticación basada en AAD se ha habilitado o deshabilitado para la caché.
|
aof-backup-enabled
|
string
|
Especifica si la copia de seguridad de aof está habilitada.
|
aof-storage-connection-string-0
|
string
|
Primera cadena de conexión de la cuenta de almacenamiento
|
aof-storage-connection-string-1
|
string
|
Segunda cadena de conexión de la cuenta de almacenamiento
|
authnotrequired
|
string
|
Especifica si la autenticación está deshabilitada. No se recomienda establecer esta propiedad desde el punto de vista de seguridad.
|
maxclients
|
string
|
Configuración máxima de clientes
|
maxfragmentationmemory-reserved
|
string
|
Valor en megabytes reservados para la fragmentación por partición
|
maxmemory-delta
|
string
|
Valor en megabytes reservado para el uso de no caché por partición, por ejemplo, conmutación por error.
|
maxmemory-policy
|
string
|
La estrategia de expulsión que se usa cuando los datos no se ajusten a su límite de memoria.
|
maxmemory-reserved
|
string
|
Valor en megabytes reservado para el uso de no caché por partición, por ejemplo, conmutación por error.
|
notify-keyspace-events
|
string
|
Eventos de espacio de claves que se deben supervisar.
|
preferred-data-archive-auth-method
|
string
|
Método de autenticación preferido para comunicarse con la cuenta de almacenamiento usada para el archivo de datos, especificar SAS o ManagedIdentity, el valor predeterminado es SAS.
|
preferred-data-persistence-auth-method
|
string
|
Método de autenticación preferido para comunicarse con la cuenta de almacenamiento usada para la persistencia de datos, especificar SAS o ManagedIdentity, el valor predeterminado es SAS.
|
rdb-backup-enabled
|
string
|
Especifica si la copia de seguridad de rdb está habilitada.
|
rdb-backup-frequency
|
string
|
Especifica la frecuencia de creación de copias de seguridad de rdb en minutos. Valores válidos: (15, 30, 60, 360, 720, 1440)
|
rdb-backup-max-snapshot-count
|
string
|
Especifica el número máximo de instantáneas para la copia de seguridad rdb.
|
rdb-storage-connection-string
|
string
|
Cadena de conexión de la cuenta de almacenamiento para almacenar el archivo rdb
|
storage-subscription-id
|
string
|
SubscriptionId de la cuenta de almacenamiento para la persistencia (aof/rdb) mediante ManagedIdentity.
|
zonal-configuration
|
string
|
Configuración zonal
|
RedisCreateParameters
Object
Parámetros proporcionados a la operación Crear redis.
Nombre |
Tipo |
Valor predeterminado |
Description |
identity
|
ManagedServiceIdentity
|
|
Identidad del recurso.
|
location
|
string
|
|
Ubicación geográfica donde reside el recurso
|
properties.disableAccessKeyAuthentication
|
boolean
|
False
|
La autenticación en Redis mediante claves de acceso está deshabilitada cuando se establece como true. El valor predeterminado es false.
|
properties.enableNonSslPort
|
boolean
|
False
|
Especifica si el puerto de servidor redis no ssl (6379) está habilitado.
|
properties.minimumTlsVersion
|
TlsVersion
|
|
Opcional: requiere que los clientes usen una versión TLS especificada (o superior) para conectarse (por ejemplo, "1.0", "1.1", "1.2")
|
properties.publicNetworkAccess
|
PublicNetworkAccess
|
Enabled
|
Indica si se permite o no el acceso al punto de conexión público para esta memoria caché. El valor es opcional, pero si se pasa, debe ser "Habilitado" o "Deshabilitado". Si es "Deshabilitado", los puntos de conexión privados son el método de acceso exclusivo. El valor predeterminado es "Enabled"
|
properties.redisConfiguration
|
RedisConfiguration
|
|
Toda la configuración de Redis. Pocas claves posibles: rdb-backup-enabled,rdb-storage-connection-string,rdb-backup-frequency,maxmemory-delta, maxmemory-policy,notify-keyspace-events, aof-backup-enabled, aof-storage-connection-string-0, aof-storage-connection-string-1, etc.
|
properties.redisVersion
|
string
|
|
Versión de Redis. Debe tener el formato "major[.minor]" (solo se requiere "major") o el valor "latest", que hace referencia a la versión estable más reciente de Redis que está disponible. Versiones compatibles: 4.0, 6.0 (más reciente). El valor predeterminado es "latest".
|
properties.replicasPerMaster
|
integer
|
|
Número de réplicas que se van a crear por principal.
|
properties.replicasPerPrimary
|
integer
|
|
Número de réplicas que se van a crear por principal.
|
properties.shardCount
|
integer
|
|
Número de particiones que se van a crear en una caché de clúster premium.
|
properties.sku
|
Sku
|
|
SKU de la caché de Redis que se va a implementar.
|
properties.staticIP
|
string
|
|
Dirección IP estática. Opcionalmente, se puede especificar al implementar una caché de Redis dentro de una instancia de Azure Virtual Network existente; asignado automáticamente de forma predeterminada.
|
properties.subnetId
|
string
|
|
Identificador de recurso completo de una subred de una red virtual en la que se va a implementar la caché de Redis. Formato de ejemplo: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/Microsoft. {Network|ClassicNetwork}/VirtualNetworks/vnet1/subnets/subnet1
|
properties.tenantSettings
|
object
|
|
Diccionario de la configuración del inquilino
|
properties.updateChannel
|
UpdateChannel
|
|
Opcional: especifica el canal de actualización para las actualizaciones mensuales de Redis que recibirá la instancia de Redis Cache. Las memorias caché que usan el canal de actualización "Versión preliminar" obtienen las actualizaciones más recientes de Redis al menos 4 semanas antes de las cachés de canales "estables". El valor predeterminado es "Estable".
|
properties.zonalAllocationPolicy
|
ZonalAllocationPolicy
|
|
Opcional: especifica cómo se asignan las zonas de disponibilidad a la caché de Redis. "Automático" permite la redundancia de zona y Azure seleccionará automáticamente las zonas en función de la disponibilidad y capacidad regionales. "UserDefined" seleccionará las zonas de disponibilidad pasadas mediante el parámetro "zones". "NoZones" generará una caché no zonal. Si no se pasa "zonalAllocationPolicy", se establecerá en "UserDefined" cuando se pasen las zonas; de lo contrario, se establecerá en "Automático" en regiones donde se admiten zonas y "NoZones" en regiones donde no se admiten zonas.
|
tags
|
object
|
|
Etiquetas de recursos.
|
zones
|
string[]
|
|
Lista de zonas de disponibilidad de las que se indica dónde debe proceder el recurso.
|
RedisInstanceDetails
Object
Detalles de una sola instancia de redis.
Nombre |
Tipo |
Description |
isMaster
|
boolean
|
Especifica si la instancia es un nodo principal.
|
isPrimary
|
boolean
|
Especifica si la instancia es un nodo principal.
|
nonSslPort
|
integer
|
Si enableNonSslPort es true, proporciona el puerto no SSL de la instancia de Redis.
|
shardId
|
integer
|
Si la agrupación en clústeres está habilitada, el identificador de partición de la instancia de Redis
|
sslPort
|
integer
|
Puerto SSL de instancia de Redis.
|
zone
|
string
|
Si la memoria caché usa zonas de disponibilidad, especifica la zona de disponibilidad donde se encuentra esta instancia.
|
RedisLinkedServer
Object
Identificador del servidor vinculado
Nombre |
Tipo |
Description |
id
|
string
|
Identificador del servidor vinculado.
|
RedisResource
Object
Un único elemento de Redis en List or Get Operation.
Nombre |
Tipo |
Valor predeterminado |
Description |
disableAccessKeyAuthentication
|
boolean
|
False
|
La autenticación en Redis mediante claves de acceso está deshabilitada cuando se establece como true. El valor predeterminado es false.
|
enableNonSslPort
|
boolean
|
False
|
Especifica si el puerto de servidor redis no ssl (6379) está habilitado.
|
id
|
string
|
|
Identificador de recurso completo para el recurso. Por ejemplo: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}
|
identity
|
ManagedServiceIdentity
|
|
Identidad del recurso.
|
location
|
string
|
|
Ubicación geográfica donde reside el recurso
|
minimumTlsVersion
|
TlsVersion
|
|
Opcional: requiere que los clientes usen una versión TLS especificada (o superior) para conectarse (por ejemplo, "1.0", "1.1", "1.2")
|
name
|
string
|
|
Nombre del recurso
|
properties.accessKeys
|
RedisAccessKeys
|
|
Las claves de la caché de Redis, no se establecen si este objeto no es la respuesta a Create or Update redis cache
|
properties.hostName
|
string
|
|
Nombre de host de Redis.
|
properties.instances
|
RedisInstanceDetails[]
|
|
Lista de las instancias de Redis asociadas a la caché
|
properties.linkedServers
|
RedisLinkedServer[]
|
|
Lista de los servidores vinculados asociados a la memoria caché
|
properties.port
|
integer
|
|
Puerto no SSL de Redis.
|
properties.privateEndpointConnections
|
PrivateEndpointConnection[]
|
|
Lista de conexiones de punto de conexión privado asociadas a la caché de Redis especificada
|
properties.provisioningState
|
ProvisioningState
|
|
Estado de aprovisionamiento de instancias de Redis.
|
properties.sku
|
Sku
|
|
SKU de la caché de Redis que se va a implementar.
|
properties.sslPort
|
integer
|
|
Puerto SSL de Redis.
|
properties.staticIP
|
string
|
|
Dirección IP estática. Opcionalmente, se puede especificar al implementar una caché de Redis dentro de una instancia de Azure Virtual Network existente; asignado automáticamente de forma predeterminada.
|
properties.subnetId
|
string
|
|
Identificador de recurso completo de una subred de una red virtual en la que se va a implementar la caché de Redis. Formato de ejemplo: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/Microsoft. {Network|ClassicNetwork}/VirtualNetworks/vnet1/subnets/subnet1
|
publicNetworkAccess
|
PublicNetworkAccess
|
Enabled
|
Indica si se permite o no el acceso al punto de conexión público para esta memoria caché. El valor es opcional, pero si se pasa, debe ser "Habilitado" o "Deshabilitado". Si es "Deshabilitado", los puntos de conexión privados son el método de acceso exclusivo. El valor predeterminado es "Enabled"
|
redisConfiguration
|
RedisConfiguration
|
|
Toda la configuración de Redis. Pocas claves posibles: rdb-backup-enabled,rdb-storage-connection-string,rdb-backup-frequency,maxmemory-delta, maxmemory-policy,notify-keyspace-events, aof-backup-enabled, aof-storage-connection-string-0, aof-storage-connection-string-1, etc.
|
redisVersion
|
string
|
|
Versión de Redis. Debe tener el formato "major[.minor]" (solo se requiere "major") o el valor "latest", que hace referencia a la versión estable más reciente de Redis que está disponible. Versiones compatibles: 4.0, 6.0 (más reciente). El valor predeterminado es "latest".
|
replicasPerMaster
|
integer
|
|
Número de réplicas que se van a crear por principal.
|
replicasPerPrimary
|
integer
|
|
Número de réplicas que se van a crear por principal.
|
shardCount
|
integer
|
|
Número de particiones que se van a crear en una caché de clúster premium.
|
tags
|
object
|
|
Etiquetas de recursos.
|
tenantSettings
|
object
|
|
Diccionario de la configuración del inquilino
|
type
|
string
|
|
Tipo del recurso. Por ejemplo, "Microsoft.Compute/virtualMachines" o "Microsoft.Storage/storageAccounts"
|
updateChannel
|
UpdateChannel
|
|
Opcional: especifica el canal de actualización para las actualizaciones mensuales de Redis que recibirá la instancia de Redis Cache. Las memorias caché que usan el canal de actualización "Versión preliminar" obtienen las actualizaciones más recientes de Redis al menos 4 semanas antes de las cachés de canales "estables". El valor predeterminado es "Estable".
|
zonalAllocationPolicy
|
ZonalAllocationPolicy
|
|
Opcional: especifica cómo se asignan las zonas de disponibilidad a la caché de Redis. "Automático" permite la redundancia de zona y Azure seleccionará automáticamente las zonas en función de la disponibilidad y capacidad regionales. "UserDefined" seleccionará las zonas de disponibilidad pasadas mediante el parámetro "zones". "NoZones" generará una caché no zonal. Si no se pasa "zonalAllocationPolicy", se establecerá en "UserDefined" cuando se pasen las zonas; de lo contrario, se establecerá en "Automático" en regiones donde se admiten zonas y "NoZones" en regiones donde no se admiten zonas.
|
zones
|
string[]
|
|
Lista de zonas de disponibilidad de las que se indica dónde debe proceder el recurso.
|
Sku
Object
Parámetros de SKU proporcionados para la operación de creación de Redis.
Nombre |
Tipo |
Description |
capacity
|
integer
|
Tamaño de la caché de Redis que se va a implementar. Valores válidos: para la familia C (Básico/Estándar) (0, 1, 2, 3, 4, 5, 6), para la familia P (Premium) (1, 2, 3, 4).
|
family
|
SkuFamily
|
Familia de SKU que se va a usar. Valores válidos: (C, P). (C = Básico/Estándar, P = Premium).
|
name
|
SkuName
|
Tipo de caché de Redis que se va a implementar. Valores válidos: (Básico, Estándar, Premium)
|
SkuFamily
Enumeration
Familia de SKU que se va a usar. Valores válidos: (C, P). (C = Básico/Estándar, P = Premium).
SkuName
Enumeration
Tipo de caché de Redis que se va a implementar. Valores válidos: (Básico, Estándar, Premium)
Valor |
Description |
Basic
|
|
Premium
|
|
Standard
|
|
TlsVersion
Enumeration
Opcional: requiere que los clientes usen una versión TLS especificada (o superior) para conectarse (por ejemplo, "1.0", "1.1", "1.2")
Valor |
Description |
1.0
|
|
1.1
|
|
1.2
|
|
UpdateChannel
Enumeration
Opcional: especifica el canal de actualización para las actualizaciones mensuales de Redis que recibirá la instancia de Redis Cache. Las memorias caché que usan el canal de actualización "Versión preliminar" obtienen las actualizaciones más recientes de Redis al menos 4 semanas antes de las cachés de canales "estables". El valor predeterminado es "Estable".
Valor |
Description |
Preview
|
|
Stable
|
|
UserAssignedIdentity
Object
Propiedades de identidad asignadas por el usuario
Nombre |
Tipo |
Description |
clientId
|
string
|
Identificador de cliente de la identidad asignada.
|
principalId
|
string
|
Identificador de entidad de seguridad de la identidad asignada.
|
ZonalAllocationPolicy
Enumeration
Opcional: especifica cómo se asignan las zonas de disponibilidad a la caché de Redis. "Automático" permite la redundancia de zona y Azure seleccionará automáticamente las zonas en función de la disponibilidad y capacidad regionales. "UserDefined" seleccionará las zonas de disponibilidad pasadas mediante el parámetro "zones". "NoZones" generará una caché no zonal. Si no se pasa "zonalAllocationPolicy", se establecerá en "UserDefined" cuando se pasen las zonas; de lo contrario, se establecerá en "Automático" en regiones donde se admiten zonas y "NoZones" en regiones donde no se admiten zonas.
Valor |
Description |
Automatic
|
|
NoZones
|
|
UserDefined
|
|