你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

New-AzRedisCache

创建 Redis 缓存。

语法

New-AzRedisCache
   -ResourceGroupName <String>
   -Name <String>
   -Location <String>
   [-Size <String>]
   [-Sku <String>]
   [-RedisConfiguration <Hashtable>]
   [-EnableNonSslPort <Boolean>]
   [-TenantSettings <Hashtable>]
   [-ShardCount <Int32>]
   [-MinimumTlsVersion <String>]
   [-DisableAccessKeyAuthentication <Boolean>]
   [-SubnetId <String>]
   [-StaticIP <String>]
   [-Tag <Hashtable>]
   [-Zone <String[]>]
   [-RedisVersion <String>]
   [-UpdateChannel <String>]
   [-IdentityType <String>]
   [-UserAssignedIdentity <String[]>]
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]

说明

New-AzRedisCache cmdlet 创建 Azure Redis 缓存。

示例

示例 1:创建 Redis 缓存

New-AzRedisCache -ResourceGroupName "MyGroup" -Name "MyCache" -Location "North Central US"

PrimaryKey         : ******
          SecondaryKey       : ******
          ResourceGroupName  : MyGroup
          Id                 : /subscriptions/a559b6fd-3a84-40bb-a450-b0db5ed37dfe/resourceGroups/mygroup/providers/Microsoft.Cache/Redis/mycache
          Location           : North Central US
          Name               : MyCache
          Type               : Microsoft.Cache/Redis
          HostName           : mycache.redis.cache.windows.net
          Port               : 6379
          ProvisioningState  : creating
          SslPort            : 6380
          RedisConfiguration : {}
          EnableNonSslPort   : False
          RedisVersion       : 2.8
          Size               : 1GB
          Sku                : Standard
          Tag                : {}
          Zone               : []

此命令创建 Redis 缓存。

示例 2:创建标准 SKU Redis 缓存

New-AzRedisCache -ResourceGroupName "MyGroup" -Name "MyCache" -Location "North Central US" -Size 250MB -Sku "Standard" -RedisConfiguration @{"maxmemory-policy" = "allkeys-random"}

PrimaryKey         : ******
          SecondaryKey       : ******
          ResourceGroupName  : MyGroup
          Id                 : /subscriptions/a559b6fd-3a84-40bb-a450-b0db5ed37dfe/resourceGroups/mygroup/providers/Microsoft.Cache/Redis/MyCache
          Location           : North Central US
          Name               : mycache
          Type               : Microsoft.Cache/Redis
          HostName           : mycache.redis.cache.windows.net
          Port               : 6379
          ProvisioningState  : creating
          SslPort            : 6380
          RedisConfiguration : {[maxmemory-policy, allkeys-random]}
          EnableNonSslPort   : False
          RedisVersion       : 2.8
          Size               : 250MB
          Sku                : Standard
          Tag                : {}
          Zone               : []

此 cmdlet 使用 Azure Redis 缓存创建缓存。

示例 3:创建区域冗余缓存

New-AzRedisCache -ResourceGroupName "MyGroup" -Name "MyCache" -Location "Central US" -Size P1 -Sku "Premium" -Zone @("1","2")

PrimaryKey         : ******
          SecondaryKey       : ******
          ResourceGroupName  : MyGroup
          Id                 : /subscriptions/a559b6fd-3a84-40bb-a450-b0db5ed37dfe/resourceGroups/mygroup/providers/Microsoft.Cache/Redis/MyCache
          Location           : Central US
          Name               : mycache
          Type               : Microsoft.Cache/Redis
          HostName           : mycache.redis.cache.windows.net
          Port               : 6379
          ProvisioningState  : creating
          SslPort            : 6380
          RedisConfiguration : {[maxmemory-policy, allkeys-random], [maxclients, 7500], [maxmemory-reserved, 200],
                                [maxfragmentationmemory-reserved, 300]...}
          EnableNonSslPort   : False
          RedisVersion       : 4.0.14
          Size               : 6GB
          Sku                : Premium
          Tag                : {}
          Zone               : {1, 2}

此命令在 mutliple 区域中为 Redis 实例创建 Azure 缓存。

示例 4:创建启用缓存的虚拟网络

创建虚拟网络启用缓存的要求。

  1. 在要在其中创建 redis 缓存的同一资源组中创建虚拟网络。 可以从 New-AzVirtualNetwork powershell 命令创建虚拟网络
  2. 需要为 VNET 启用缓存提供 SubnetID。 下面提供了 SubnetID 的语法。

SubnetID 的格式:/subscriptions/{subid}/resourceGroups/{resourceGroupName}/providers/Microsoft.ClassicNetwork/VirtualNetworks/{vnetName}/subnets/{subnetName}

New-AzRedisCache -ResourceGroupName "MyGroup" -Name "MyCache" -Location "Central US" -Size P1 -Sku "Premium" -SubnetId "/subscriptions/a559b6fd-3a84-40bb-a450-b0db5ed37dfe/resourceGroups/mygroup/providers/Microsoft.Network/virtualNetworks/MyNet/subnets/MySubnet"

PrimaryKey         : ******
          SecondaryKey       : ******
          ResourceGroupName  : MyGroup
          Id                 : /subscriptions/a559b6fd-3a84-40bb-a450-b0db5ed37dfe/resourceGroups/mygroup/providers/Microsoft.Cache/Redis/MyCache
          Location           : Central US
          Name               : mycache
          Type               : Microsoft.Cache/Redis
          HostName           : mycache.redis.cache.windows.net
          Port               : 6379
          ProvisioningState  : creating
          SslPort            : 6380
          RedisConfiguration : {[maxmemory-policy, allkeys-random], [maxclients, 7500], [maxmemory-reserved, 200],
                                [maxfragmentationmemory-reserved, 300]...}
          EnableNonSslPort   : False
          RedisVersion       : 4.0.14
          Size               : 6GB
          Sku                : Premium
          SubnetId           : /subscriptions/a559b6fd-3a84-40bb-a450-b0db5ed37dfe/resourceGroups/mygroup/providers/Microsoft.Network/virtualNetworks/MyNet/subnets/MySubnet
          StaticIP           : 10.0.0.4
          Tag                : {}
          Zone               : []

示例 5:为高级 Azure Redis 缓存配置数据持久性

暂留将 Redis 数据写入你拥有和管理的 Azure 存储帐户。 因此,在配置数据持久性之前,需要在同一资源组中具有 存储帐户 。 选择与缓存位于同一区域和订阅的存储帐户。建议选择“高级存储”帐户,因为高级存储的吞吐量较高。

创建存储帐户后,使用此过程获取存储帐户连接字符串。

  1. 在 powershell 中运行以下命令 Get-AzStorageAccountKey -ResourceGroupName $resourceGroupName -Name $storageAccountName
  2. 从上述输出中,复制任何密钥。
  3. 将存储帐户密钥和存储帐户名称的格式设置为下面的格式,以获取存储帐户的连接字符串。

连接字符串格式 :- “DefaultEndpointsProtocol=https;AccountName={storageAccountName};AccountKey={storageAccountKey};EndpointSuffix=mySuffix”

必须具有特定的 Redis 配置设置才能启用数据持久性。

启用 RDB 备份

  • 已启用 rdb-backup-enabled (设置 true 或 false)
  • rdb-storage-connection-string (以上述格式提供连接字符串。
  • rdb-backup-frequency (以分钟为单位设置备份间隔)。只能选择 - 15、30、60、360、720 和 1440 分钟。
New-AzRedisCache -ResourceGroupName "MyGroup" -Name "MyCache" -Location "Central US" -Size P1 -Sku "Premium" -RedisConfiguration @{"rdb-backup-enabled" = "true"; "rdb-storage-connection-string" = "DefaultEndpointsProtocol=https;AccountName=mystorageaccount;AccountKey=******;EndpointSuffix=mySuffix"; "rdb-backup-frequency" = "30"}

PrimaryKey         : ******
          SecondaryKey       : ******
          ResourceGroupName  : MyGroup
          Id                 : /subscriptions/a559b6fd-3a84-40bb-a450-b0db5ed37dfe/resourceGroups/mygroup/providers/Microsoft.Cache/Redis/MyCache
          Location           : Central US
          Name               : mycache
          Type               : Microsoft.Cache/Redis
          HostName           : mycache.redis.cache.windows.net
          Port               : 6379
          ProvisioningState  : creating
          SslPort            : 6380
          RedisConfiguration : {[maxmemory-policy, allkeys-random], [maxclients, 7500], [maxmemory-reserved, 200],
                                [maxfragmentationmemory-reserved, 300], [rdb-backup-enabled, true]....}
          EnableNonSslPort   : False
          RedisVersion       : 4.0.14
          Size               : 6GB
          Sku                : Premium
          Tag                : {}
          Zone               : []

示例 6:为高级 Azure Redis 缓存配置数据持久性 - 已启用 AOF 备份

启用 AOF 备份。

  • aof-backup-enabled (设置为 true 或 false),
  • aof-storage-connection-string-0 (采用上述格式提供连接字符串)。
  • aof-storage-connection-string-1(可以选择配置另一个存储帐户。如果配置了第二个存储帐户,则对副本缓存的写入写入将写入到第二个存储帐户。
New-AzRedisCache -ResourceGroupName "MyGroup" -Name "MyCache" -Location "Central US" -Size P1 -Sku "Premium" -RedisConfiguration @{"aof-backup-enabled" = "true"; "aof-storage-connection-string-0" = "DefaultEndpointsProtocol=https;AccountName=mystorageaccount;AccountKey=******;EndpointSuffix=mySuffix"}

PrimaryKey         : ******
          SecondaryKey       : ******
          ResourceGroupName  : MyGroup
          Id                 : /subscriptions/a559b6fd-3a84-40bb-a450-b0db5ed37dfe/resourceGroups/mygroup/providers/Microsoft.Cache/Redis/MyCache
          Location           : Central US
          Name               : mycache
          Type               : Microsoft.Cache/Redis
          HostName           : mycache.redis.cache.windows.net
          Port               : 6379
          ProvisioningState  : creating
          SslPort            : 6380
          RedisConfiguration : {[maxmemory-policy, allkeys-random], [maxclients, 7500], [maxmemory-reserved, 200],
                                [maxfragmentationmemory-reserved, 300], [aof-backup-enabled, true]...}
          EnableNonSslPort   : False
          RedisVersion       : 4.0.14
          Size               : 6GB
          Sku                : Premium
          Tag                : {}
          Zone               : []

参数

-Confirm

提示你在运行 cmdlet 之前进行确认。

类型:SwitchParameter
别名:cf
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-DefaultProfile

用于与 Azure 通信的凭据、帐户、租户和订阅。

类型:IAzureContextContainer
别名:AzContext, AzureRmContext, AzureCredential
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-DisableAccessKeyAuthentication

可选:如果设置为 true,则会禁用通过访问密钥向 Redis 进行身份验证。 默认值为 false。

类型:String
Position:Named
默认值:false
必需:False
接受管道输入:True
接受通配符:False

-EnableNonSslPort

指出是否启用非 SSL 端口。 默认值为$False(禁用非 SSL 端口)。

类型:Nullable<T>[Boolean]
Position:Named
默认值:None
必需:False
接受管道输入:True
接受通配符:False

-IdentityType

指定用于 Azure Redis 缓存的标识类型。 有效值:“SystemAssigned”或“UserAssigned”或“SystemAssignedUserAssigned”或“None”

类型:String
Position:Named
默认值:None
必需:False
接受管道输入:True
接受通配符:False

-Location

指定要在其中创建 Redis 缓存的位置。 有效值为:

  • 美国中北部
  • 美国中南部
  • 美国中部
  • 西欧
  • 北欧
  • 美国西部
  • 美国东部
  • 美国东部 2
  • 日本东部
  • 日本西部
  • Brazil South
  • 东南亚
  • 东亚
  • 澳大利亚东部
  • 澳大利亚东南部
类型:String
Position:Named
默认值:None
必需:True
接受管道输入:True
接受通配符:False

-MinimumTlsVersion

指定客户端连接到缓存所需的 TLS 版本。

类型:String
Position:Named
默认值:None
必需:False
接受管道输入:True
接受通配符:False

-Name

指定要创建的 Redis 缓存的名称。

类型:String
Position:Named
默认值:None
必需:True
接受管道输入:True
接受通配符:False

-RedisConfiguration

指定 Redis 配置设置。 此参数的可接受值为:

  • 已启用 rdb-backup-enabled。 指定已启用 Redis 数据持久性。 仅限高级层。
  • rdb-storage-connection-string。 指定 Redis 数据持久性存储帐户的连接字符串。 仅限高级层。
  • rdb-backup-frequency。 指定 Redis 数据持久性的备份频率。 仅限高级层。
  • maxmemory-reserved。 配置为非缓存进程保留的内存。 标准和高级层。
  • maxmemory-policy。 配置缓存的逐出策略。 所有定价层。
  • notify-keyspace-events。 配置密钥空间通知。 标准和高级层。
  • hash-max-ziplist-entries。 为小型聚合数据类型配置内存优化。 标准和高级层。
  • hash-max-ziplist-value。 为小型聚合数据类型配置内存优化。 标准和高级层。
  • set-max-intset-entries。 为小型聚合数据类型配置内存优化。 标准和高级层。
  • zset-max-ziplist-entries。 为小型聚合数据类型配置内存优化。 标准和高级层。
  • zset-max-ziplist-value。 为小型聚合数据类型配置内存优化。 标准和高级层。
  • 数据库。 配置数据库的数目。 该属性只能在创建缓存时配置。 标准和高级层。 有关详细信息,请参阅使用 Azure PowerShellhttp://go.microsoft.com/fwlink/?LinkId=800051 管理 Azure Redis 缓存(http://go.microsoft.com/fwlink/?LinkId=800051)。
  • preferred-data-archive-auth-method Preferred auth 方法,用于与用于数据存档的存储帐户通信,指定 SAS 或 ManagedIdentity,默认值为 SAS
  • preferred-data-persistence-auth-method Preferred auth 方法,用于与用于数据暂留的存储帐户通信,指定 SAS 或 ManagedIdentity,默认值为 SAS
类型:Hashtable
Position:Named
默认值:None
必需:False
接受管道输入:True
接受通配符:False

-RedisVersion

Redis 版本。 这应采用“major[.minor]”(仅需要“major”)或值“latest”,该值引用可用的最新稳定 Redis 版本。 支持的版本:4.0、6.0(最新版)。 默认值为“latest”。

类型:String
Position:Named
默认值:None
必需:False
接受管道输入:True
接受通配符:False

-ResourceGroupName

指定要在其中创建 Redis 缓存的资源组的名称。

类型:String
Position:Named
默认值:None
必需:True
接受管道输入:True
接受通配符:False

-ShardCount

指定要在高级群集缓存上创建的分片数。 此参数的可接受值为:

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
类型:Nullable<T>[Int32]
Position:Named
默认值:None
必需:False
接受管道输入:True
接受通配符:False

-Size

指定 Redis 缓存的大小。 有效值为:

  • P1
  • P2
  • P3
  • P4
  • P5
  • C0
  • C1
  • C2
  • C3
  • C4
  • C5
  • C6
  • 250MB
  • 1GB
  • 2.5GB
  • 6GB
  • 13GB
  • 26GB
  • 53GB 默认值为 1GB 或 C1。
类型:String
Position:Named
默认值:None
必需:False
接受管道输入:True
接受通配符:False

-Sku

指定要创建的 Redis 缓存的 SKU。 有效值为:

  • 基本
  • Standard
  • 高级默认值为 Standard。
类型:String
接受的值:Basic, Standard, Premium
Position:Named
默认值:None
必需:False
接受管道输入:True
接受通配符:False

-StaticIP

指定 Redis 缓存子网中的唯一 IP 地址。 如果未为此参数指定值,此 cmdlet 将从子网中选择 IP 地址。

类型:String
Position:Named
默认值:None
必需:False
接受管道输入:True
接受通配符:False

-SubnetId

要在其中部署 Azure Redis 缓存的虚拟网络中子网的完整资源 ID。 示例格式:/subscriptions/{subid}/resourceGroups/{resourceGroupName}/Microsoft。{Network|ClassicNetwork}/VirtualNetworks/{vnetName}/subnets/{subnetName}

类型:String
Position:Named
默认值:None
必需:False
接受管道输入:True
接受通配符:False

-Tag

表示标记的哈希表。

类型:Hashtable
Position:Named
默认值:None
必需:False
接受管道输入:True
接受通配符:False

-TenantSettings

此参数已弃用。

类型:Hashtable
Position:Named
默认值:None
必需:False
接受管道输入:True
接受通配符:False

-UpdateChannel

可选:指定 Redis 缓存将接收的每月 Redis 更新的更新通道。 使用“预览”更新通道的缓存在“稳定”通道缓存之前至少提前 4 周获取最新的 Redis 更新。 默认值为“Stable”。 可能的值包括:“Stable”、“Preview”

类型:String
Position:Named
默认值:Stable
必需:False
接受管道输入:True
接受通配符:False

-UserAssignedIdentity

指定要与 Azure Redis 缓存关联的一个或多个逗号分隔的用户标识。 用户标识引用的格式为 ARM 资源 ID:“/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/identities/{identityName}”

类型:String[]
Position:Named
默认值:None
必需:False
接受管道输入:True
接受通配符:False

-WhatIf

显示运行该 cmdlet 时会发生什么情况。 cmdlet 未运行。

类型:SwitchParameter
别名:wi
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-Zone

具有 可用性区域的 Azure 区域列表。

类型:String[]
Position:Named
默认值:None
必需:False
接受管道输入:True
接受通配符:False

输入

String

Hashtable

Nullable<T>[[System.Boolean, System.Private.CoreLib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]]

Nullable<T>[[System.Int32, System.Private.CoreLib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]]

String[]

输出

RedisCacheAttributesWithAccessKeys