Azure Key Vault Nedir?
Bulut bilişimde hassas verilerin güvenli bir şekilde saklanması ve yönetilm...
# İzlenecek sunucular ve hizmet adı $servers = "Server01", "Server02", "Server03" $serviceName = "FlightScheduler" foreach ($server in $servers) { try { # Uzak sunucuda hizmet durumunu sorgula $service = Invoke-Command -ComputerName $server -ScriptBlock { Get-Service -Name $using:serviceName -ErrorAction Stop } -ErrorAction Stop # Hizmet durumunu kontrol et if ($service.Status -eq "Running") { Write-Host "$server üzerinde $serviceName hizmeti aktif." -ForegroundColor Green } else { Write-Host "$server üzerinde $serviceName hizmeti durmuş!" -ForegroundColor Red # Alternatif işlem (örneğin, uyarı e-postası gönderme) Send-MailMessage -To "admin@airline.com" -From "monitor@airline.com" ` -Subject "Uyarı: Hizmet Durduruldu - $server" ` -Body "$serviceName hizmeti $server üzerinde çalışmıyor!" ` -SmtpServer "smtp.airline.com" } } catch { # Bağlantı veya hata durumlarını yakala Write-Host "$server üzerinde hizmet kontrolü başarısız: $($_.Exception.Message)" -ForegroundColor Yellow # Kritik hataları logla Write-EventLog -LogName "Application" -Source "ServiceMonitor" ` -EntryType Error -EventID 5001 ` -Message "Sunucu: $server | Hata: $($_.Exception.Message)" } } Invoke-Command ile Uzak Sunucu ErişimiInvoke-Command cmdlet'i, uzak sunucularda komut çalıştırmanızı sağlar.-ComputerName parametresiyle hedef sunucu belirlenir.using: değişkeni, yerel değişkenleri uzak komut bloğuna aktarır.-ErrorAction Stop ile İstisna TetiklemeGet-Service, hizmet bulunamadığında varsayılan olarak hata vermez (non-terminating error).-ErrorAction Stop ile bu tür hatalar istisna olarak tetiklenir ve catch bloğu tarafından yakalanabilir.Send-MailMessage ile Uyarı BildirimiWrite-EventLog ile Hata KaydıInvoke-Command için PowerShell Remoting (WinRM) yapılandırması yapılmalıdır.-ThrottleLimit parametresiyle aynı anda kaç sunucuya bağlanılacağını sınırlayın."Hizmet bulunamadı" yerine "FlightScheduler hizmeti Server01'de yok").| Hata | Açıklama | Çözüm |
|---|---|---|
Access is denied | Yetki eksikliği | Betiği yönetici haklarıyla çalıştırın veya Enter-PSSessionile kimlik doğrulaması yapın. |
The RPC server is unavailable | Sunucuya erişilemiyor | Ağ bağlantısını kontrol edin veya -ThrottleLimitazaltın. |
Service does not exist | Hizmet adı yanlış | Get-Servicekomutunu doğrulayın. |