You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在PowerShell中定义AWS.Tools.Drs的PitPolicy <PITPolicyRule[]>?

解决AWS.Tools.Drs中New-EDRSReplicationConfigurationTemplate的PitPolicy参数构造问题

在使用AWS.Tools.Drs模块的New-EDRSReplicationConfigurationTemplate cmdlet时,-PitPolicy参数要求传入**Amazon.Drs.Model.PITPolicyRule[]类型的数组**,而非PSCustomObject[]。你需要直接创建AWS SDK定义的强类型对象,而非自定义对象,具体步骤如下:

构造单个PITPolicyRule对象

首先通过New-Object创建Amazon.Drs.Model.PITPolicyRule实例,并设置所需属性:

$pitRule = New-Object Amazon.Drs.Model.PITPolicyRule
$pitRule.Interval = 4
$pitRule.RetentionDuration = 168
$pitRule.Units = "HOUR"
$pitRule.Enabled = $true # 必填布尔属性,需明确设置

组成数组并传递给cmdlet

将单个规则对象包装成数组,直接传入-PitPolicy参数:

New-EDRSReplicationConfigurationTemplate `
    -PitPolicy @($pitRule) `
    -ReplicationServerInstanceType "t3.medium" ` # 示例必填参数,根据实际需求替换
    -StagingAreaSubnetId "subnet-xxxxxx" `       # 示例必填参数,根据实际需求替换
    -DefaultLargeStagingDiskType "GP2"           # 示例必填参数,根据实际需求替换

更简洁的写法

也可以直接在数组中创建对象,减少代码行数:

$pitPolicy = @(
    (New-Object Amazon.Drs.Model.PITPolicyRule -Property @{
        Interval = 4
        RetentionDuration = 168
        Units = "HOUR"
        Enabled = $true
    })
)

New-EDRSReplicationConfigurationTemplate -PitPolicy $pitPolicy <其他必填参数>

关键注意点:

  • 必须使用AWS SDK原生的Amazon.Drs.Model.PITPolicyRule类型,cmdlet不接受自定义的PSCustomObject转换
  • Enabled是必填属性,必须显式设置布尔值($true或$false)

内容的提问来源于stack exchange,提问作者Matt

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.21 23:32:43