Aracılığıyla paylaş


Azure İzleyici ile sanal makineleri izleme: Uyarılar

Bu makale, Azure İzleyici'de sanal makineleri ve bunların iş yüklerini izleme kılavuzunun bir parçasıdır. Azure İzleyici'deki uyarılar, izleme verilerinizdeki ilginç veriler ve desenler hakkında sizi proaktif olarak bilgilendirir. Sanal makineler için önceden yapılandırılmış uyarı kuralı yoktur, ancak Azure İzleyici Aracısı'ndan topladığınız verileri temel alarak kendi uyarı kurallarınızı oluşturabilirsiniz. Bu makalede, sanal makinelere özgü uyarı kavramları ve diğer Azure İzleyici müşterileri tarafından kullanılan yaygın uyarı kuralları sunulur.

Bu senaryoda, Azure ve hibrit sanal makine ortamınızın tam izlemesinin nasıl uygulandığı açıklanmaktadır:

Önemli

Çoğu uyarı kuralının maliyeti kuralın türüne, kaç boyut içerdiğine ve ne sıklıkta çalıştırıldığından bağımsızdır. Herhangi bir uyarı kuralı oluşturmadan önce Azure İzleyici fiyatlandırması bölümündeki Uyarı kuralları bölümüne bakın.

Veri toplama

Uyarı kuralları, Azure İzleyici'de zaten toplanmış olan verileri inceler. Uyarı kuralı oluşturabilmeniz için önce belirli bir senaryo için verilerin toplandığından emin olmanız gerekir. Bu makaledeki tüm uyarı kuralları dahil olmak üzere çeşitli senaryolar için veri toplamayı yapılandırma yönergeleri için bkz . Azure İzleyici ile sanal makineleri izleme: Veri toplama .

Azure İzleyici, herhangi bir Azure sanal makinesi için hızla etkinleştirebileceğiniz bir dizi önerilen uyarı kuralı sağlar. Bu kurallar temel izleme için harika bir başlangıç noktasıdır. Ancak tek başına, aşağıdaki nedenlerle çoğu kurumsal uygulama için yeterli uyarı sağlamaz:

  • Önerilen uyarılar karma makineler için değil yalnızca Azure sanal makineleri için geçerlidir.
  • Önerilen uyarılar yalnızca host ölçümlerini içerir ve konuk ölçümlerini veya günlüklerini içermez. Bu ölçümler makinenin sistem durumunu izlemek için kullanışlıdır. Ancak bunlar size makinede çalışan iş yükleri ve uygulamalar hakkında en az görünürlük sağlar.
  • Önerilen uyarılar, aşırı sayıda uyarı kuralı oluşturan tek tek makinelerle ilişkilendirilir. Her makine için bu yönteme güvenmek yerine bkz . Birden çok makine için en az sayıda uyarı kuralı kullanma stratejileri için uyarı kurallarını ölçeklendirme .

Uyarı türleri

Azure İzleyici'deki en yaygın uyarı kuralları türleri ölçüm uyarıları ve günlük araması uyarıları'dır. Belirli bir senaryo için oluşturduğunuz uyarı kuralının türü, uyarıda bulunduğunuz verilerin bulunduğu yere bağlıdır.

Belirli bir uyarı senaryosuna ait verilerin hem Ölçümlerde hem de Günlüklerde kullanılabildiği durumlar olabilir. Öyleyse, hangi kural türünün kullanılacağını belirlemeniz gerekir. Ayrıca, belirli verileri toplama ve uyarı kuralı türü kararınızın veri toplama yöntemine ilişkin kararınızı yönlendirmesine izin verme konusunda da esnekliğiniz olabilir.

Ölçüm uyarıları

Ölçüm uyarıları için yaygın kullanımlar:

  • Belirli bir ölçüm eşiği aştığında uyarır. Örneğin, bir makinenin CPU'sunun yüksek çalışmasıdır.

Ölçüm uyarıları için veri kaynakları:

  • Azure sanal makineleri için otomatik olarak toplanan ana bilgisayar ölçümleri
  • Konuk işletim sisteminden Azure İzleyici Aracısı tarafından toplanan ölçümler

Kayıt araması uyarıları

Kayıt arama uyarıları için yaygın kullanımlar:

  • Windows olay günlüğü veya Syslog'dan belirli bir olay veya olay deseni bulunduğunda uyarır. Bu uyarı kuralları genellikle sorgudan döndürülen tablo satırlarını ölçer.
  • Birden çok makinede sayısal verilerin hesaplanması temelinde uyarı. Bu uyarı kuralları genellikle sorgu sonuçlarında sayısal bir sütunun hesaplamasını ölçer.

Günlük araması uyarıları için veri kaynakları:

  • Log Analytics çalışma alanında toplanan tüm veriler

Uyarı kurallarını ölçeklendirme

Aynı izleme gerektiren birçok sanal makineniz olabileceğinden, her biri için ayrı ayrı uyarı kuralları oluşturmak zorunda kalmak istemezsiniz. Kuralın türüne bağlı olarak, yönetmeniz gereken uyarı kurallarının sayısını sınırlamak için farklı stratejiler olduğundan da emin olmak istiyorsunuz. Bu stratejilerin her biri uyarı kuralının hedef kaynağını anlamaya bağlıdır.

Ölçüm uyarı kuralları

Sanal makineler, Birden çok kaynağı izleme bölümünde açıklandığı gibi birden çok kaynak ölçümü uyarı kuralını destekler. Bu özellik, aynı bölgedeki bir kaynak grubu veya abonelikteki tüm sanal makineler için geçerli olan tek bir ölçüm uyarı kuralı oluşturmanıza olanak tanır.

Önerilen uyarılarla başlayın ve hedef kaynak olarak aboneliğinizi veya kaynak grubunu kullanarak her birine karşılık gelen bir kural oluşturun. Birden çok bölgede makineniz varsa her bölge için yinelenen kurallar oluşturmanız gerekir.

Daha fazla ölçüm uyarı kuralı gereksinimlerini tanımlarken, hedef kaynak olarak bir abonelik veya kaynak grubu kullanarak aynı stratejiyi izleyin:

  • Yönetmeniz gereken uyarı kurallarının sayısını en aza indirin.
  • Tüm yeni makinelere otomatik olarak uygulandığından emin olun.

Kayıt araması uyarı kuralları

Günlük araması uyarı kuralının hedef kaynağını belirli bir makineye ayarlarsanız, sorgular bu makineyle ilişkili verilerle sınırlıdır ve bu da size tek tek uyarılar verir. Bu düzenleme, her makine için ayrı bir uyarı kuralı gerektirir.

Günlük araması uyarı kuralının hedef kaynağını Log Analytics çalışma alanına ayarlarsanız, bu çalışma alanında bulunan tüm verilere erişebilirsiniz. Bu nedenle, tek bir kuralla çalışma grubundaki tüm makinelerden gelen veriler hakkında uyarı alabilirsiniz. Bu düzenleme size tüm makineler için tek bir uyarı oluşturma seçeneği sunar. Ardından boyutları kullanarak her makine için ayrı bir uyarı oluşturabilirsiniz.

Örneğin, herhangi bir makine tarafından Windows olay günlüğünde bir hata olayı oluşturulduğunda uyarı vermek isteyebilirsiniz. Bu olayları Log Analytics çalışma alanında tabloya göndermek için önce Azure İzleyici AracısıEventgibi bir veri toplama kuralı oluşturmanız gerekir. Ardından, çalışma alanını hedef kaynak olarak ve aşağıdaki görüntüde gösterilen koşulu kullanarak bu tabloyu sorgulayan bir uyarı kuralı oluşturursunuz.

Sorgu, herhangi bir makinedeki hata iletileri için bir kayıt döndürür. Boyutlara göre böl seçeneğini kullanın ve sonuçlarda birden çok makine döndürülürse kuralın her makine için bir uyarı oluşturmasını bildirmek için _ResourceId belirtin.

Boyutlara göre bölünmüş yeni bir günlük araması uyarı kuralını gösteren ekran görüntüsü.

Boyutlar

Uyarıya eklemek istediğiniz bilgilere bağlı olarak, farklı boyutlar kullanarak bölmeniz gerekebilir. Bu durumda, proje veya genişletme işlecini kullanarak sorguda gerekli boyutların yansıtıldığından emin olun. Kaynak Kimliği sütunu alanını Ayırma olarak ayarlayın ve tüm anlamlı boyutları listeye ekleyin. Sorgudan döndürülen tüm değerlerin dahil olması için Gelecekteki tüm değerleri ekle'nin seçili olduğundan emin olun.

Birden çok boyuta bölünmüş yeni bir günlük araması uyarı kuralını gösteren ekran görüntüsü.

Dinamik eşikler

Günlük araması uyarı kurallarını kullanmanın bir diğer avantajı da eşik değerini belirlemek için sorguya karmaşık mantık ekleyebilme özelliğidir. Eşiği sabit kodlayabilir, tüm kaynaklara uygulayabilir veya bir alana veya hesaplanan değere göre dinamik olarak hesaplayabilirsiniz. Eşik yalnızca belirli koşullara göre kaynaklara uygulanır. Örneğin, kullanılabilir belleği temel alan ancak yalnızca belirli miktarda toplam belleğe sahip makineler için bir uyarı oluşturabilirsiniz.

Ortak uyarı kuralları

Aşağıdaki bölümde Azure İzleyici'deki sanal makineler için yaygın uyarı kuralları listelenmektedir. Metrik uyarıları ve günlük araması uyarılarının ayrıntıları her biri için sağlanır. Kullanılacak uyarı türü hakkında yönergeler için bkz . Uyarı türleri. Azure İzleyici'de uyarı kuralları oluşturma işlemini bilmiyorsanız yeni uyarı kuralı oluşturma yönergelerine bakın.

Not

Burada sağlanan günlük arama uyarılarının ayrıntıları, istemci işletim sistemi için bir dizi ortak performans sayacı sağlayan VM Insights kullanılarak toplanan verilerin kullanılmasıyla sunulmaktadır. Bu ad, işletim sistemi türünden bağımsızdır.

Makine kullanılabilirliği

Sanal makine için en yaygın izleme gereksinimlerinden biri çalışmayı durdurursa bir uyarı oluşturmaktır. En iyi yöntem, VM kullanılabilirlik ölçümünü kullanarak Azure İzleyici'de bir ölçüm uyarısı kuralı oluşturmaktır. Bu ölçümle ilgili bir kılavuz için bkz. Azure sanal makine için kullanılabilirlik uyarısı kuralı oluşturma.

Uyarı kuralı bir etkinlik günlüğü sinyaliyle sınırlıdır. Bu nedenle her koşul için bir uyarı kuralı oluşturulmalıdır. Örneğin, "sanal makineyi başlatır veya durdurur" iki uyarı kuralı gerektirir. Ancak, VM yeniden başlatıldığında uyarı almak için yalnızca bir uyarı kuralı gerekir.

Uyarı kurallarını ölçeklendirme bölümünde açıklandığı gibi, hedef kaynak olarak bir abonelik veya kaynak grubu kullanarak bir kullanılabilirlik uyarısı kuralı oluşturun. Kural, uyarı kuralından sonra oluşturduğunuz yeni makineler de dahil olmak üzere birden çok sanal makine için geçerlidir.

Aracı kalp atışı

Aracın kalp atışı, Azure İzleyici Aracısı sinyal göndermek için kullanıldığından, makinenin kullanılamıyor uyarısından biraz farklıdır. Ajan kalp atışı, makine çalışıyorsa ama ajan yanıt vermiyorsa, sizi uyarabilir.

Ölçüm uyarı kuralları

Her Log Analytics çalışma alanına "Heartbeat" adlı bir ölçüm eklenir. Bu çalışma alanına bağlı her sanal makine dakikada bir kalp atış ölçüm değeri gönderir. Bilgisayar, metrik üzerindeki bir boyut olduğundan, herhangi bir bilgisayar hayati sinyali gönderemediğinde bir uyarı tetikleyebilirsiniz. Toplama türünü Sayı olarak, Eşik değerini de Değerlendirme ayrıntı düzeyiyle eşleşecek şekilde ayarlayın.

Kayıt araması uyarı kuralları

Günlük araması uyarıları, her makineden dakikada bir beklenen sinyal kaydını içermesi gereken Sinyal tablosunu kullanır.

Aşağıdaki sorguyla bir kural kullanın:

Heartbeat
| summarize TimeGenerated=max(TimeGenerated) by Computer, _ResourceId
| extend Duration = datetime_diff('minute',now(),TimeGenerated)
| summarize MinutesSinceLastHeartbeat = min(Duration) by Computer, bin(TimeGenerated,5m), _ResourceId

CPU uyarıları

Bu bölümde CPU uyarıları açıklanmaktadır.

Ölçüm uyarı kuralları

Hedef Metrik
Ana Makine CPU yüzdesi (önerilen uyarılara dahildir)
Windows misafir işletim sistemi \İşlemci Bilgileri(_Total)% İşlemci Süresi
Linux konuğu cpu/aktif_kullanım

Kayıt araması uyarı kuralları

CPU kullanımı

InsightsMetrics
| where Origin == "vm.azm.ms"
| where Namespace == "Processor" and Name == "UtilizationPercentage"
| summarize CPUPercentageAverage = avg(Val) by bin(TimeGenerated, 15m), Computer, _ResourceId

Bellek uyarıları

Bu bölümde bellek uyarıları açıklanmaktadır.

Ölçüm uyarı kuralları

Hedef Metrik
Ana Makine Kullanılabilir Bellek Baytları (önizleme) (önerilen uyarılara dahildir)
Windows misafir işletim sistemi \Bellek% Kullanımda İşli Bayt Sayısı
\Bellek\Mevcut Baytlar
Linux konuğu mem/available
mem/kullanılabilir_yüzde

Kayıt araması uyarı kuralları

Not

Uyarıyı bir diske belirtmeniz gerekiyorsa bunu sorguya ekleyebilirsiniz: | where parse_json(Tags).["vm.azm.ms/mountId"] == "C:"MB cinsinden kullanılabilir bellek

InsightsMetrics
| where Origin == "vm.azm.ms"
| where Namespace == "Memory" and Name == "AvailableMB"
| summarize AvailableMemoryInMBAverage = avg(Val) by bin(TimeGenerated, 15m), Computer, _ResourceId

Yüzde cinsinden kullanılabilir bellek

InsightsMetrics
| where Origin == "vm.azm.ms"
| where Namespace == "Memory" and Name == "AvailableMB"
| extend TotalMemory = toreal(todynamic(Tags)["vm.azm.ms/memorySizeMB"]) | extend AvailableMemoryPercentage = (toreal(Val) / TotalMemory) * 100.0
| summarize AvailableMemoryInPercentageAverage = avg(AvailableMemoryPercentage) by bin(TimeGenerated, 15m), Computer, _ResourceId  

Disk uyarıları

Bu bölümde disk uyarıları açıklanmaktadır.

Ölçüm uyarı kuralları

Hedef Metrik
Windows misafir işletim sistemi \Mantıksal Disk(_Total)% Boş Alan
\Mantıksal Disk(_Total)\Boş Megabayt
Linux konuğu disk/ücretsiz
disk/boş_yüzde

Kayıt araması uyarı kuralları

Kullanılan mantıksal disk - her bilgisayardaki tüm diskler

InsightsMetrics
| where Origin == "vm.azm.ms"
| where Namespace == "LogicalDisk" and Name == "FreeSpacePercentage"
| summarize LogicalDiskSpacePercentageFreeAverage = avg(Val) by bin(TimeGenerated, 15m), Computer, _ResourceId 

Mantıksal disk kullanımı - ayrı ayrı diskler

InsightsMetrics
| where Origin == "vm.azm.ms"
| where Namespace == "LogicalDisk" and Name == "FreeSpacePercentage"
| extend Disk=tostring(todynamic(Tags)["vm.azm.ms/mountId"])
| summarize LogicalDiskSpacePercentageFreeAverage = avg(Val) by bin(TimeGenerated, 15m), Computer, _ResourceId, Disk 

Mantıksal disk IOPS

InsightsMetrics
| where Origin == "vm.azm.ms" 
| where Namespace == "LogicalDisk" and Name == "TransfersPerSecond"
| extend Disk=tostring(todynamic(Tags)["vm.azm.ms/mountId"])
| summarize DiskIOPSAverage = avg(Val) by bin(TimeGenerated, 15m), Computer, _ResourceId, Disk 

Mantıksal disk veri hızı

InsightsMetrics
| where Origin == "vm.azm.ms" 
| where Namespace == "LogicalDisk" and Name == "BytesPerSecond"
| extend Disk=tostring(todynamic(Tags)["vm.azm.ms/mountId"])
| summarize DiskBytesPerSecondAverage = avg(Val) by bin(TimeGenerated, 15m), Computer, _ResourceId, Disk 

Ağ uyarıları

Ölçüm uyarı kuralları

Hedef Metrik
Ana Makine Ağ Girişi Toplamı, Ağ Çıkışı Toplamı (önerilen uyarılara dahildir)
Windows misafir işletim sistemi \Ağ Arabirimi\Gönderilen Bayt/sn
\Mantıksal Disk(_Total)\Boş Megabayt
Linux konuğu disk/ücretsiz
disk/boş_yüzde

Kayıt araması uyarı kuralları

Alınan ağ arabirimleri baytları - tüm arabirimler

InsightsMetrics
| where Origin == "vm.azm.ms"
| where Namespace == "Network" and Name == "ReadBytesPerSecond"
| summarize BytesReceivedAverage = avg(Val) by bin(TimeGenerated, 15m), Computer, _ResourceId  

Alınan ağ arabirimleri baytları - tek tek arabirimler

InsightsMetrics
| where Origin == "vm.azm.ms"
| where Namespace == "Network" and Name == "ReadBytesPerSecond"
| extend NetworkInterface=tostring(todynamic(Tags)["vm.azm.ms/networkDeviceId"])
| summarize BytesReceievedAverage = avg(Val) by bin(TimeGenerated, 15m), Computer, _ResourceId, NetworkInterface 

Gönderilen ağ arabirimleri baytları - tüm arabirimler

InsightsMetrics
| where Origin == "vm.azm.ms"
| where Namespace == "Network" and Name == "WriteBytesPerSecond"
| summarize BytesSentAverage = avg(Val) by bin(TimeGenerated, 15m), Computer, _ResourceId 

Gönderilen ağ arabirimleri baytları - tek tek arabirimler

InsightsMetrics
| where Origin == "vm.azm.ms"
| where Namespace == "Network" and Name == "WriteBytesPerSecond"
| extend NetworkInterface=tostring(todynamic(Tags)["vm.azm.ms/networkDeviceId"])
| summarize BytesSentAverage = avg(Val) by bin(TimeGenerated, 15m), Computer, _ResourceId, NetworkInterface 

Windows ve Linux olayları

Aşağıdaki örnek, belirli bir Windows olayı oluşturulduğunda bir uyarı oluşturur. Her bilgisayar için ayrı bir uyarı oluşturmak amacıyla bir ölçüm metriği uyarı kuralı kullanır.

  • Belirli bir Windows olayında bir uyarı kuralı oluşturun. Bu örnekte Uygulama günlüğünde bir olay gösterilmektedir. 0 eşiğini ve 0'dan büyük ardışık ihlalleri belirtin.

    Event 
    | where EventLog == "Application"
    | where EventID == 123 
    | summarize NumberOfEvents = count() by Computer, bin(TimeGenerated, 15m)
    
  • Belirli bir önem derecesi olan Syslog olaylarında bir uyarı kuralı oluşturun. Aşağıdaki örnekte hata yetkilendirme olayları gösterilmektedir. 0 eşiğini ve 0'dan büyük ardışık ihlalleri belirtin.

    Syslog
    | where Facility == "auth"
    | where SeverityLevel == "err"
    | summarize NumberOfEvents = count() by Computer, bin(TimeGenerated, 15m)
    

Özel performans sayaçları

  • Sayacın en yüksek değeriyle ilgili bir uyarı oluşturun.

    Perf 
    | where CounterName == "My Counter" 
    | summarize AggregatedValue = max(CounterValue) by Computer
    
  • Sayacın ortalama değeriyle ilgili bir uyarı oluşturun.

    Perf 
    | where CounterName == "My Counter" 
    | summarize AggregatedValue = avg(CounterValue) by Computer
    

Sonraki adımlar

Sanal makineler için toplanan izleme verilerini analiz etme