Veeam Backup ve Slack Alarmları #1 Unprotected VMs
Veeam Backup & Replication üzerindeki istediğiniz bir komponentin mevcut bilgilerini ya da herhangi bir jobın son durum bilgilerini Slack webhooklarını kullanarak istediğiniz kanala iletebilmeniz mümkün. Günümüzde eğer büyük bir yapıya sahipseniz doğru analiz edilmemiş ve thresholdları default olarak bırakılmış alarmlar özellikle BT çalışanlarında malesef mail körlüğü oluşturabiliyor. Yaşanan alarm durumlarındaki farkındalığı arttırmak ve daha hızlı aksiyon alabilmek adına Slack, Teams gibi sürekli kullandığımız mesajlaşma uygulamaları ile bu alarm durumlarını anlık olarak ekip üyelerinin de bulunduğu ilgili kanallara iletebilir ve daha hızlı aksiyon alınmasını sağlayabilirsiniz.
Bir önceki makalede backup taglerimizi oluşturup bu tagleri Veeam Backup jobları ile ilişkilendirmiştik. Henüz vSphere Tag yapısı kullanmıyorsanız aşağıdaki makaleyi okumanızı tavsiye ederim.
Bu makalede sizlere hiçbir backup politikasına dahil olmayan ve NoBackup tagi atanmış olan sanal makineleri Slack kanalına alarm durumu olarak nasıl iletebileceğimizden bahsedeceğim. Önceki makalede bahsettiğim gibi NoBackup tagi atanmış sanal makinelerin önem derecesi ilerleyen zamanlarda artabileceğinden dolayı belli zaman aralıklarında bu sanal makinelerin listesini inceleyip backup süreçlerine dahil olması gereken sanal makineler varsa aksiyon almamız gerekebilir.
Aşağıdaki kod ile vSphere ortamınızda önceden oluşturmuş olduğunuz backup politikasına göre NoBackup Tagine sahip olan ve hiçbir backup politikası atanmamış sanal makineleri listeleyebilir ve Slack kanalına bu sanal makinelerin listesini iletebilirsiniz. Burada kullandığınız vSphere Taglerin backup job karşılığı eşlenik ve doğru olduğunu varsayıp ona göre alarm durumu oluşturuyoruz. Sanal makinelerin Veeam tarafında restore point sorgusunu gerçekleştirmiyoruz.
$noBackupTagVms = Get-VM | Where-Object { $_.Name -notlike "vCLS*" } | Get-TagAssignment -Category $backupCategory | Where-Object { $_.Tag.Name -eq $noBackupTag }
foreach ($vm in $noBackupTagVms) {
$vmNames += $vm.Entity.Name + " > virtual machine is not protected because it is tagged with " + $noBackupTag + " tag." + "`n"
}
$noBackupPolicyVms = Get-VM | Where-Object { $_.Name -notlike "vCLS*" } | ? { (Get-TagAssignment $_ -Category $backupCategory) -eq $null }
foreach ($vm in $noBackupPolicyVms) {
$vmNames += $vm.Name + " > virtual machine does not have any backup tag." + "`n"
}
Periyodik olarak bu scripti çalıştırabilir ve gözden kaçan ya da backup politikalarına dahil edilmesi gereken sanal makineleri tespit edip aksiyon alabilirsiniz.
You can access the scripts used in the article from my Github profile.