Azure VM’lerde Console Output ve Screenshot

01.10.2015
0

Eylül ayı başında Azure VM’ler için 2 yeni hata ayıklama özelliği duyurulmuş. Duyurulmuş diyorum çünkü benim bundan ancak #AzureCon’da haberim oldu ve announcement etiketli bir slayt’ta görünce de aha sonunda! gibilerinden bir tepki verdim. Sonra bir an Azure’da boot olamayan imajlarımızı düzeltmek için telef olduğumuz yıllar geçti gözümün önünden… Özetle konu şu: Bundan böyle Azure üzerindeki v2 VM’lerin console output’larını ve anlık screenshot’ları Azure Portal üzerinden alabiliyoruz. Peki bu neden önemli?

Biz geçen dönemlerde Azure üzerinde Linux tabanlı IaaS projeleri de yaptık. Özellikle müşteri ortamındaki fiziksel Linux sunucuları önce on-prem Hyper-V imajlarına convert edip daha sonra bu imajları Azure’e import ederek VM’lere bağladık ve çalıştırmak istediğimizde boot sorunları yaşadığımız sunucular oldu. Veya benzer şekilde Hyper-V Replica ile Azure Site Recovery’e gönderdiğimiz yine özellikle Linux VM’lerde yaşanan boot problemlerinde gerçekten elimiz kolumuz bağlı durumda oluyordu. Çünkü düne kadar o non-bootable state’te bekleyen Linux VM’in konsolunda ne yazdığını görme şansımız yoktu. Böyle durumda eldeki tek seçenek şuydu: Azure Support’a case açmak ve bir support engineer’ın arka taraftan VM console log’u alıp bize göndermesini beklemek…

Bu gibi sorunlarda mail yazışmaları döner, döner, döner… Sonra bir support engineer size ulaşır. Hiç unutmam bir keresinde boot sorunu yaşayan bir replica Linux VM’in console output’unu alabilmek için önce support engineer’a SCVMM ve Hyper-V Replica öğretmek zorunda kalmıştık :) Uzun uğraşlar sonucu konuyu anlayınca on-prem VM’i Azure’a planned failover yaptık ve VM orada deploy olup başlamaya çalıştıktan sonra console output’u alıp bize gönderebildi. Sonra da sabrımız ve anlattıklarımız için teşekkür etti ve Hyper-V ya da SCVMM bilmediğini, uzmanlık alanının sadece Linux OS’ler olduğunu da ekledi. İşte bu gibi anlarda özellikle Linux VM console output’a ulaşmak debugging açısından oldukça hız kazandırıyor.

Bu konudaki sorunlardan bir diğer ise şu: Non-bootable state olsa dahi normal şartlarda bu gibi durumlarda herhangi bir teknik case açma hakkınız yok çünkü ücretli support satın almanız gerekiyor. Bence acilen değişmesi gereken bir politika çünkü problemin müşteriden kaynaklı olmadığı birçok sorun yaşanıyor ve insanlar çözümsüz kalabiliyor. Bu gibi durumlarda bile çözüme ulaşabilmek için her zaman ücretli support kanalı üzerinden iletişim kurmanız gerekiyor. Hatta bu case’lerden biri service site kaynaklıydı ki sonra bug report’a dönüştü ve fix’lendi. Yani bir noktada Azure service site’da hata düzelttik ve bir de para ödedik :) Özetle eğer ücretli support satın almadıysanız en ufak bir teknik case’i bile Azure’a aktarma şansınız olmuyor.

Bir Linux VM için on-prem Hyper-V üzerinde boot anından alınmış örnek bir console output aşağıdaki gibi:

linux-vm-console-output

Azure IaaS yapısında çalışan v2 Linux VM’ler için bu console output’u artık direkt Azure Portal üzerinden alabiliyorsunuz. Ayrıca hiç portal üzerinden ayrılmadan, aldığınız çıktı içerisinde arama gerçekleştirmeniz de mümkün. Bu sayede FAILED gibi bariz hata içeren kayıt satırlarına ulaşmak kolaylaşıyor.

azure-portal-console-output

Windows VM’ler için ise sadece screenshot alabiliyorsunuz çünkü yaygın Windows OS’ler bu amaçla kullanılan özel bir console output’a sahip değillr. Yine de işe yarayacak zamanlar olabilir. Ama Azure IaaS yapısında boot açısından Linux VM’lere göre göre daha sorunsuz olduklarını söyleyebilirim.

azure-vm-screenshot

Nasıl Kullanılır?

  • Console output veya screenshot almak istediğiniz VM’lerin v2 olması gerekiyor. Bu da Azure Resource Manager ile deploy edilmiş VM’ler demek.
  • Bu yeni debugging özelliklerini şimdilik sadece Azure Preview Portal üzerinde kullanabiliyorsunuz.
  • Monitoring enabled durumda olmalı. Ayrıca diagnostic file’ların depolanacağı storage account’u da belirtmiş olmanız gerekiyor ve çıktıların kapladığı alan sizin hanenize yazılıyor :)
  • Diagnostics > Boot diagnostics seçeneğinin aktif olması gerekiyor. VM başına ayarlanabilir.
  • Çıktıyı almak için Support & Troubleshooting > Boot Diagnostics altından tetikleyebilirsiniz.
  • Çıktıların Azure Portal’de görünmesi bazen 5dk’yı bulabiliyor.
  • Bu çıktı ekranları etkileşimli değildir. Yani sadece output verilir. Buradan herhangi bir input şansı yok.

Yorum Ekle

* Gerekli

* Gerekli

* Tercihen