Create user in Azure AD and give him read rights over subscription and Site recovery contributor role over Azure Recovery Vault
Encrypt password file and install Azure module:
$username = "user@example.com" $pwdTxt = Get-Content "C:\ExportedPassword.txt" $securePwd = $pwdTxt | ConvertTo-SecureString $cred = new-object -typename System.Management.Automation.PSCredential ` -argumentlist $username, $securePwd Login-AzureRmAccount -Credential $cred | out-null $vault = Get-AzureRmRecoveryServicesVault -Name "Vault" $VaultFileLocation = Get-AzureRmRecoveryServicesVaultSettingsFile -SiteRecovery -Vault $vault Import-AzureRmRecoveryServicesAsrVaultSettingsFile -Path $VaultFileLocation.FilePath $Fabrics = Get-AzureRmRecoveryServicesAsrFabric $Containers = Get-AzureRmRecoveryServicesAsrProtectionContainer -Fabric $Fabrics $items = Get-AzureRmRecoveryServicesAsrReplicationProtectedItem -ProtectionContainer $Containers $filename = "C:\trapper.imports"; write-host $filename; foreach ($item in $items) { '"{0}" {1}' -f "server",'replication['+$item.RecoveryAzureVMName+']',""""+$item.ReplicationHealth+"""" | Add-Content -LiteralPath $filename -Encoding "Default" -Force; } cd "C:\Program Files\Zabbix Agent\bin\win64" .\zabbix_sender.exe -z zabbix_server -p 10051 -c "C:\Program Files\Zabbix Agent\conf\zabbix_agentd.win.conf" -i $filename -vv rm -Path $VaultFileLocation.FilePath rm -Path $filename
Create zabbix item:
Name/key:replication[VM01]
Type:trapper
Type of infomation:Text
Create Trigger:
{server:replication[VM1].str(“Critical”)}=1 or {server:replication[VM01].nodata(180m)}=1
Schedule it by Task Scheduler:
Program/Script: C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe
Add argument: (Optional): “C:\azure_replication.ps1”
Strart in (Optional): C:\