我正在尝试构建一个脚本来自动化/简化实施 Azure Site Recovery 的任务。
这很困难,因为所有 Microsoft Docs 的文档大多都不正确,而且 cmdlet 大多已过时并被标记为已弃用。
到目前为止,我可以完成以下步骤:
-创建存储帐户
- 创建虚拟网络
- 创建资源组
- 创建 Vault 并导入 FileSettings
- 创建网站
-安装提供者和代理
-创建复制策略
(所有这一切都由 PowerShell 完成,经过努力,已经有了新的 cmdlet 和模块)
现在我在将复制策略与保护容器相关联时遇到了一些问题。
我的 Cmdlet 如下:
#Associate Protection Container With Replication Policy
$PolicyRslt=Get-AzureRmRecoveryServicesAsrPolicy -Name $PolicyName
$AssJob=Start-AzureRmSiteRecoveryPolicyAssociationJob -Policy $PolicyRslt -PrimaryProtectionContainer $Container
我得到了错误:
Start-AzureRmSiteRecoveryPolicyAssociationJob : Cannot bind parameter 'Policy'. Cannot convert the "Microsoft.Azure.Commands.RecoveryServices.SiteRecovery.ASRPolicy" value of
type "Microsoft.Azure.Commands.RecoveryServices.SiteRecovery.ASRPolicy" to type "Microsoft.Azure.Commands.SiteRecovery.ASRPolicy".
At line:1 char:63
+ ... t-AzureRmSiteRecoveryPolicyAssociationJob -Policy $PolicyRslt -Primar ...
+ ~~~~~~~~~~~
+ CategoryInfo : InvalidArgument: (:) [Start-AzureRmSi...yAssociationJob], ParameterBindingException
+ FullyQualifiedErrorId : CannotConvertArgumentNoMessage,Microsoft.Azure.Commands.SiteRecovery.StartAzureSiteRecoveryPolicyAssociationJob
可以请任何人帮助我吗?我无法将 JOB 与恢复服务模块相关联,也无法通过 Cmdlet Get-AzureRmSiteRecoveryPolicy 获取策略,因为它已经过时
提前感谢大家!