azure - 如何使用PowerShell检查Azure虚拟机上是否启用了备份
问题描述
如何使用 PowerShell 检查是否在 Azure 虚拟机上启用了备份?
我知道查询所有虚拟机,然后与在恢复服务保管库下配置的虚拟机进行比较。
有没有办法从虚拟机对象中提取信息?或者比我已经拥有的更简单的方法?
解决方案
#change the below values
$ResourceGroupName= "spfarm" #all the VMs in this Resource Group will be checked for Vault specified below
$VaultName = "vault595"
Get-AzureRmRecoveryServicesVault -Name $VaultName -ResourceGroupName $ResourceGroupName | Set-AzureRmRecoveryServicesVaultContext
$fnames = Get-AzureRmRecoveryServicesBackupContainer -ContainerType "AzureVM" -Status "Registered" | select -ExpandProperty friendlyname
$vaultVMs=@()
foreach ($name in $fnames)
{
$nameContainer = Get-AzureRmRecoveryServicesBackupContainer -ContainerType "AzureVM" -Status "Registered" -FriendlyName $name
$vaultVMs += Get-AzureRmRecoveryServicesBackupItem -Container $nameContainer -WorkloadType "AzureVM" | select VirtualMachineId
}
$vms = Get-AzureRmVM -ResourceGroupName $ResourceGroupName
foreach ($vm in $vms)
{
$j = 0;
for ($i=0; $i -lt $vaultVMs.Count; $i++)
{
if ($vm.id -eq $vaultVMs[$i].VirtualMachineId)
{
$j++
}
}
if ($j -eq 0)
{
Write-Host "$($vm.name) is not backed up in this vault"
}
else
{
Write-Host "$($vm.Name) is backed up in this vault"
}
}
推荐阅读
- html - 工具提示不是从 slickgrid 单元格中出来的。有什么财产可以拿出来吗?
- python - CSV到字典,将标题作为键,其余行作为Python中的字符串(值)列表
- java - SharedIndexInformer (Fabric8 kubernetes-client) 在集群中运行时只监视自己命名空间的 pod
- spring - java.lang.IllegalStateException:错误处理 org.springframework.boot.autoconfigure.web.client.RestTemplateAutoConfiguration.restTemplateBuilder
- angular - 如何在 ng-charts 上创建动态数据集
- python - python将时间戳添加到控制台输出
- php - 在 Ubuntu 18.04 上使用作曲家将 Drupal 9.0.3 更新到 9.0.6 的问题
- python - 如何将 python 模块从不同的目录导入到 jupyter notebook
- python - Python 矩阵类型
- python - 如何从文本中提取所有类型的日期格式