Sanallaştırma ile Maddi Yüklerden Kurtulmak Mümkün

Şirketlerin en önemli sorunları arasında sunucuların aniden çökmesi ve bu sunucuların getirdiği maliyet yükü yer alıyor. Sanallaştırma yöntemiyle sunucuları yedekleyebilen şirketler, fiziksel sunucuların getirdiği maddi yükten de kurtulabiliyorlar.

Sanallaştırma, mevcut bulunan fiziksel donanımın sanal makineler yardımıyla çok daha verimli kullanılabilmesini sağlayan, çeşitli yazılım ve donanım bağımlılıklarını ortadan kaldıran, bu sayede de yeni ürün ve servis geliştirme maliyetlerinde büyük tasarruflar sağlayan bir yazılım çözümüdür. Çözümde kullanılan sanal makinenin tanımını ilk defa Popek ve Goldberg yaptı. Onlara göre sanal makine “gerçek makinenin etkili, soyutlanmış bir kopyasıydı”.

Sanal makineler işlevlerine göre iki temel grupta incelenebilir:

• Sistem Sanal Makineleri: Bu tip sanal makineler kullandıkları fiziksel kaynağı (gerçek makine kaynaklarını) paylaşımlı olarak kullanırlar.

Her bir sanal makine kendi işletim sistemine sahiptir. Bir arayüz yardımı ile donanımsal paylaşımlar ayarlanır. Bu tip sanal makineler donanım seviyesinde çalışabileceği gibi mevcut bir işletim sisteminin üzerinde, işletim sistemi kaynakları üzerinden de çalışabilir. Bu makalede ele almayı planlanan VMware ürünleri de bu sınıfta değerlendirilebilir.

• Proses Sanal Makinesi: Herhangi bir işletim sistemi üzerinde modül olarak çalışır ve  tek bir prosesin işletilmesine olanak sağlar. Kullanılmasındaki amaç platform bağımsız bir ortam sağlayarak üzerinde çalışacak programcıkların donanım ya da işletim sistemi limitlerine göre yeniden dizayn edilmesinin önüne geçmektir.

Bu sanal makineyi aslında JAVA ve .NET platformlarından tanıyoruz. Java uygulamaları JVM (Java Virtual Machine), .NET uygulamaları ise CLR (Common Language Runtime) kullanırlar. Örneğin bizim yazdığımız bir java kodu derlendikten sonra hangi işletim sisteminde olduğuna bakılmaksızın konak işletim sistemi üzerinde kurulu olan JVM modülü tarafından çalıştırılır. Bu sayede yazılımcı Linux tabanlı makinelerde ayrı, Windows tabanlı makinelerde ayrı çalışacak uygulamalar yazmak zorunda bırakılmaz.

Sanallaştırma yazılımı, üzerinde yüklü olduğu donanımı, sanal makinaların sanal kaynakları olarak organize eder ve paylaştırır. İşte sanallaştırma yazılımları bu paylaşımı ne kadar etkin, akıllı ve sorunsuz yapabilirlerse o derece başarılı sayılırlar.

sanallaştırma

Genel Sanallaştırma Mimarisi

Sanal makine kullanımı küçük, orta ya da büyük, her ölçekte şirket için oldukça önemli  imkanlar sağlamaktadır. Bunların önemli birkaç tanesinden aşağıda bahsedilmiştir.

1- Sunucu kapasitesini yüksek verimle kullanma imkanı sağlar.

2- İhtiyaç duyulduğunda çok hızlı bir şekilde yeni sunucu oluşturulabilir.

3- Kuruluşun ölçeğine göre donanım maliyetlerinde %50 ye varan düşüş sağlanır.

4- İhtiyaç olduğu anda test veya yazılım geliştirme için yeni sunucular oluşturma olanağı sağlanmış olur.

5- Operasyonel kurulum ve bakım maliyetlerinde %80 e varan azalma görülür.

6- Herhangi bir problem anında, sanal sunucuları çok hızlı bir şekilde yeniden çalışır duruma getirebilme imkanı vardır.

7- Merkezi yönetim ile tüm sunucuları tek bir merkezden izleme ve raporlama imkânı sağlanır.

8- Sanal işletim sistemine kurulmuş olan herhangi bir uygulamayı, yeni bir ana bilgisayara geçilirken sanal işletim sistemini durdurup, işletim sistemi dosyasını yeni bilgisayara taşıdıktan sonra tekrar çalıştırarak kalınan yerden devam etme kolaylığı sağlanmış olur.

9- Windows altında eski sürüm Windows, Linux, Mac veya Linux altında Windows, Mac ( vs vs … ) çalıştırılabilmiş olur.

sanallaştırma

Sanallaştırmada Kullanılabilecek Yazılımlar

Yukarıda da bahsedildiği gibi bu makalenin objektifi sanal makine kavramına giriş yapmak ve  VMware ürünleri hakkında genel bir fikir sahibi olmaktır. Bu sebeple bu makalede proses

3 sanal makinesi ele alınmamıştır. “Sistem sanal makineleri” açık kaynak kodlu olanlar ve  olmayanlar olarak iki gruba ayırabilir.

1) Açık Kaynak Kodlu Sanal Makina Yazılımları: Açık kaynak kod mantığı ve lisansı ile dağıtılan bu yazılımlar başlıca VirtualBox, Xen, Bochs, CoLinux, FAUmachine, Hercules emulator , KVM, LilyVM, QEMU, SheepShaver olarak sıralanabilir.

2) Ticari Sanal Makina Yazılımları: Ticari anlamda başlıca kullanılan yazılımlar arasında VMware, Microsoft Virtual PC, VM/CMS, Parallels Workstation, vThere, Parallels Desktop for Mac, SVISTA, Trango, Virtual Iron Software gösterilebilir.

3) VMware Sanal Makinesi: Sanal makine çözümleri incelediğinde küçük, orta ve büyük her seviyeden şirket ve organizasyonun sanallaştırma ihtiyaçlarını en iyi karşılayabilecek çözümlerin başında VMware ticari çözümleri olduğu görülür. VMware şirketi 1998 yılında ABD merkezli olarak  kuruldu. İlk çözümlerini pazara 1999 yılında çıkaran şirket şu an pazarı yönlendiren birkaç  kuruluştan birisi olarak göze çarpmaktadır.

VMware topolojisinin hedeflediği yapı “sanal altyapı” (Virtual Infrastructure) olarak adlandırılır. Altyapı genel olarak 3 bileşenden oluşmaktadır:

• Herbir x86 makinanın tam sanallaştırmasını sağlayacak yönetim yazılımı

• Sanallaştırma temelli kaynak planlamasını sağlayacak planlama yazılımları

• Yıkım onarımı (disaster recovery) gibi IT süreçlerinin başarılması için gereken otomasyon çözümleri

Hem masaüstü, hem iş istasyonu ve sunucu hem de mainframe ölçeğinde ürünler barındıran firma geliştirdiği çözüme göre de farklı stratejiler sağlayabilmektedir. Örneğin desktop ve  sunucu/iş istasyonu ürünleri olan VMware Workstation ve GSX ürünleri bir işletim sisteminin üzerinde çalışan yazılım programları iken daha “enterprise level” denebilecek ESX ürünü doğrudan fiziksel donanım üzerinde çalışacağı için üzerinde çalışacağı bir işletim sistemine gerek duymamaktadır. Bu sayede çok büyük ölçekli topolojide VMware’in performansı muadili rakiplerinin çok üzerine çıktığı görülmektedir.

Bunun yanında VMware, üzerine kurulan işletim sistemleri için tamamen sanal donanım sürücüleri sağlar. Video, ağ ve hard disk için tamamen sanal sürücüler; USB, seri ve paralel portlar için de yarı-sanal sürücüler sağlanır. Bu sayede taşınabilirlik bütünüyle başarılmış olur.

Günümüzde UNIX/RISC ve x86 makinalarda “Barındırılan” (hosted) ve “gözetleyici” (hypervisor) adında 2 çeşit sanallaştırma mimarisi kullanılmaktadır. Hosted yaklaşım işletim sisteminin en üst seviyesinde barındırılan bir bölmeleme (partition) sistemi yardımı ile geniş bir donanım yelpazesini destekler. Gözetleyici sistemi ise x86 bir makinanın donanımı üzerinde bulunan ilk tabakadır ve donanım kaynaklarına direkt erişimi mümkündür. İşte bu sebeptendir ki VMware yazılımının da kullandığı bu yaklaşım donanımın çok daha etkin  kullanılabilmesi olanağını sağlar ve çok daha yüksek performansla işler.

sanallaştırma

CPU komutu çalıştırma mantığında yenilik: VMware Workstation, ESX ve Server emülatör tipi (Bochs gibi) sanal makinalara göre sanal istekleri karşılama işini çok daha etkin bir yolla çözer. Sanal makinaların her bir CPU komutunu simule eder, makine komutları ilk kez çalıştırılırken bunları dinamik derleme ile derler ve yeniden kullanımlarında derlenmiş parçaları kullanır. Bu sayede kaynak tüketimini  azaltır, hızı artırmış olur. (Microsoft Virtual PC, MAC OS X de bunu kullanır)

Ancak bu derlemeleri her fiziksel makine ortamında çalışacak şekilde derlemez. Bu yüzden sanal makinanın çok farklı fiziksel donanım yapılarında çalıştırılması esnasında sıkıntılar yaşanabilir. Esasen bir handikap gibi görülen bu özellik VMware’in performans artışında önemli bir yer tutar.

Derlenmiş parçaların yeniden kullanımının getirdiği performans artışının yanında VMware, komutların çalıştırılış zamanının fiziksel donanımdaki bağımlılıklarca kısıtlanmasının da önüne geçer. VMware ürünleri CPU komutların hangi zamanda olursa olsun çalıştırmaya çalışır. (Örneğin usermode ya da sanal 8086 modu kodlarını x86 da çalıştırırken) Bunu da şu yolla gerçekler: Komutlar CPU üzerinde doğrudan çalıştırılamadığı zamanlar VMwarekomutları “binary çevrim” olarak adlandırdığı bir yöntem ile yeniden yazar ve bu çevirilmiş kod belleğin kullanılmayan bir bölümünde saklanır. Uygun vakit geldiğinde bu kod kullanılır  ve performansta ciddi anlamda kazanım sağlanmış olur. Bu yol sayesinde o denli bir  performans artışı sağlanır ki ölçümlere göre sanal işletim sisteminin gerçekten makine  üzerinde kurulu olması ile sağlanacak performansın %80 – 85 leri oranında bir başarıyla işlem yapılmış olur.

Yeni Çözümler ve Donanımsal Destekler

Günümüzde VMWare’e ek olarak Microsoft’un HyperV çözümü de kullanılıyor. Intel ve AMD’nin sanallaştırmayı donanımsal olarak da desteklemesi, artık sanal bilgisayarlardaki performansı son derece artırmış durumda.

Günümüzde 1 fiziksel sunucudan, yüksek işlem gücü ve yazılım alt yapısındaki gelişmeler neticesinde 4 – 5 belki daha fazla sanal sunucu elde edip, maaliyetleri çok daha düşük seviyeye çekebiliyoruz.

Leave a Reply

Your email address will not be published.