Ana içeriğe atla

Sanallaştırma 2.0: Nested Virtualization

İlk tohumları yıllar önce atılmasına rağmen son 10 yılda Vmware ile pek çoğumuzun hayatına giren , sonrasında Microsoft'un HyperV'si , açık kaynak kökleri olan Citrix XEN ve Linux kernel ile tamamen açık kod KVM'nin gelişimleriyle artık iyice yaygınlaşan sunucu sanallaştırma  bilişim sektöründe en büyüğünden en küçüğüne herkesin vazgeçilmez konusu durumunda. 

Bir tarafta sunucu sanallaştırma sayesinde artık tek bir fiziksel sunucu üzerinde onlarca, her biri diğerinden farklı olabilen işletim sistemlerine sahip, sanal makine çalıştırmak oldukça kolay bir iş. Bu sayede enerji tasarrufundan yönetim kolaylığına , sunucu taşınabilirliğinden felaketten kurtarma kolaylığına kadar pek çok özelliğe ve güzelliği de sahip oluyoruz. 

Diğer tarafta ise Amazon Web Services ile başlayan , Rackspace Cloud , Gogrid , IBM SmartCloud (SoftLayer), Microsoft Azure v.b. ile firma ürün çeşitliliği kazanan, temel çıkış noktası ilk yatırım maliyetini azaltmak , kullandığın kadar öde prensibini temel prensibi yapan  public cloud (genel bulut) anlayışı, sanallaştırma teknolojilerini kullanarak bilişim kaynaklarını bir hizmet olarak sunarak ciddi bir talep görüyor ve gelişmesini sürdürüyor.

Bu iki tarafı "kabaca" private cloud (özel bulut - kurum içi host edilen Vmware ESX , MS HyperV, Xen ve KVM v.b. yapılar) 'a karşı public cloud ( genel bulut - kullandığın kadar benzeri modeller sunan AWS, Azure v.b. yapılar) niteleyebiliriz. 

Aslında bu iki kavram (ya da bulut çeşiti diyelim) birbirlerine rakip olmaktan ziyade, birbirlerini tamamlayarak farklı ihtiyaçlara yönelik çözümler olarak konumlandırılarak maksimum fayda sağlanabilir. Özellikle bu amaçla hem public cloud sağlayıcılar hem de sanallaştırma platformu sağlayan firmalar hybrid (karma) cloud kavramıyla bu iki cloud u birbiriyle haberleştirip entegre eden çözümler sunuyorlar.

Ancak her ne kadar bir entegrasyon çabası varsa da on-premise dediğimiz kendi yerlerimizde tuttuğumuz bilişim altyapılarını bulut ortamlarına taşımak ciddi zorluklar taşıyor. Örneğin: Public Cloud sağlayıcıları, doğal olarak hypervisor erişimi vermedikleri için özellikle taşıma işlemlerinde işimizi çok kolaylaştıracak aynı veya farklı hypervisorler arası hypervisor tabanlı çözümlerden mahrum kalıyoruz. Ağ yapılarımızı taşırken kendi IP yapımızı genelde koruyamıyor, public cloud sağlayıcının bize sunduğu sınırlı ağ yapısı ve VPN ile ciddi bir şekilde sınırlanıyoruz ve ek tasarım ve konfigürasyon sürecine katlanmak zorunda kalıyoruz.

Peki hem public cloud'un getirdiği nimetlerden faydalanırken hem de kendimize ait hypervisor rahatlığında çalışmak için ne gerekli ? Bunun cevabı: çok yeni gelişmeye başlamasına rağmen nested hypervisor ( hypervisor üzeri bağımsız hypervisor) teknolojisi gibi görünüyor. 




Düşünelim bir kere: Vmware ESX altyapımızı neredeyse hiç değiştirmeden hedef tarafta fiziksel bir makineye ihtiyaç duymadan ağ altyapısı , sanal makineler ve diğer ayarlar ile kolayca public bir cloud sağlayıcıya taşıyabilmek ne kadar da iyi olurdu değil mi ?  Public cloud'un getirdiği elastikiyet , kullandığın kadar öde avantajı v.b. alıştığımız altyapı ve yönetim yapısıyla. Kulağa oldukça hoş geliyor :) .

Aslında Nested Hypervisor teknolojsine kısmen aşinayız diyebilirim. Vmware Workstation üzerinde ESX Server ve HyperV Server çalıştırmak , ESX server üzerinde ESX Server ve HyperV çalıştırmak daha önce denediğimiz ya da denemeyi aklımıza getirdiğimiz en bilindik uygulamaları.

Teknik olarak Nested Hypervisor kavramı: seviyenlendirme yaparak Type0 bir HyperVisor üzerinde değiştirilmemiş bir Type1 ( örneğin KVM üzerinde KVM) çalıştırma tekniği olarak tanımlanabilir. Bu tekniğin uygulanması CPU ların sanallaştırma uzantı komutlaının gelişmesiyle uygulanabilir hale gelmiştir. Şu anda bu alanda ciddi anlamda test ve geliştirmeler olmasına rağmen henüz production ortamlarında kullanılabilecek stabiliteye sahip değil, ancak yakın bir zamanda özellikle Intel'in Haswell mimarisinde gelen özellikler ile hızlıca bazı production uygulamalarına hazır hale geleceğini düşünüyorum.

Sonuç olarak productiona hazır bir nested virtualization çözümü ile:


  • Tam kullanıcı kontrollü hypevisorler
  • Sanal makineler üzerinde Openstack ve Cloudstack uygulamaları
  • Test ve demolar için kolayca sanallaştırma ortamı hazırlamak
  • Hypervisorler arası live migration, vmotion
gibi kolaylıkların hayatımıza girmesi mümkün olacak.








Yorumlar

Bu blogdaki popüler yayınlar

Vista Güvenliği Üzerine İlginç Bir Deneyim

Dün sabah , uzun süredir Vista kullanan bir iş arkadaşımda (müdürüm oluyor kendisi) ,admin olarak sisteme login olamama gibi bir sorun ortaya çıktı. Kısa bir araştırmadan sonra anladık ki makinası bir arkadaş tarafından (bu ben oluyorum) domainden silinmiş böylece daha önce olduğu gibi domain admin olarak sisteme erişemiyor ,üstüne bir de yerel admin hesabı Vista'da güvenlik! nedeniyle kapalı gelmiyormuymuş:). Elimizdeki sadece sınırlı yetkili bir user hesabıyla domaine tekrar dahil etmek gibi bir işlemi de yapamıyoruz. Tam bu nokta da aklımıza Vista'yı yeniden yükleme fikri iyiden iyi yeretmeye başlamışken aklıma birden McafeeLabs Blog'unda rastladığım ilginç bir Vista açığını kullanmak geldi. Kabaca erişilebilirlik amacıyla kullanılan yapışkan tuşları çalıştıran exe (5 kez shift tuşuna basınca çalışıyor) gerekli doğrulama yapılmadan sadece dosyanın adına bakılarak çağrılıyor. Bu da istediğiniz dosyayı system kullanıcı yetkisi ile çalıştırmanızı sağlıyor. Peki biz bunu nas

Bilişim Güvenliğinin 10 Değişmez Kuralı

Geçenlerde Google da bilişim güvenliği kuralları hakkında bir araştırma yaparken MS Security Response yöneticisi Scott Culp , tarafından yazılmış ilginç ve hoş bir makaleye rastladım.. Scott Culp Makalesinde gerçekten basit ve önemli konulara değinmiş.. Özetle : Kural #1: Eğer kötü niyetli birisi size bilgisayrınızda bir programı çalıştırmaya ikna ederse bilgisayarınız artık sizin değildir. Kontrol artık o programdadır.. Kural #2: Eğer kötü niyetli birisi bilgisayarınızın işletim sisteminin dosyalarını veya yapısını değiştirebilirse, bilgisayarınız artık sizin değildir. Kural #3: Eğer kötü niyetli birisi bilgisayarınıza fiziksel olarak kolayca erişebilrse, bilgisayarınız artık sizin değildir Kural#4: Eğer kötü niyetli birisine web sitenize bir program yada dosya yükleme yetkisi vermişseniz web siteniz artık sizin değildir. Kural#5: Zayıf şifreler sağlam güvenliğinizi altetmek için önemli bir kozdur.. Kural#6: Bir bilgisayar ancak güvenilir ve yetkin bir admin ile güvenl

Antivirüsler Öldü mü?

Son zamanlarda pek çok yerde görmeye ve duymaya başladığım antivirüsler in öldüğü ile ilgili haberler ve görüşler üzerine uzun zamandır yazmak istiyorum ancak bir türlü toparlayıp yazamıyordum. Bu konuda genelde söylenen özetle ; "Zararlı kodlar her geçen gün inanılmaz bir hızla çeşitlenerek ve artarak yayılıyor. Bu şartlar altında artık antivirüsler imza üretmekde çaresiz kalıyorlar". Bu görüş kısmen doğru olmak ile birlikte gözden kaçırılan bir nokta var ki burada bahsedilen antivirüs, geleneksel imza tabanlı antvirüs yazılımları ve şu an piyasada sırf bu yöntemi kullanan bir antivirüs yok benim bildiğim. Neredeyse tüm antivirüs yazılımları heuristics (sezgisel tespit) , sandboxing (sanal makinalar), harekat analizi (behavioural analysis) , jenerik imzalar v.b. yöntemlerle geleneksel imzaları birlikte kullanıyorlar. Böylece virüslere karşı zor olan mücadelerinde oldukça başarılı işler çıkarıyorlar. "Antivirüsler öldü" iddiasını ortaya atanların sunduğu alterna