31 Ekim 2008 Cuma

VMware ESXi nin Yapısı

Oldukça uzun bir aradan sonra tekrar yazabilmenin mutluluğu içerisindeyim. Bu arada sitemi takip edenler ve her seferinde olduğu gibi durduğunu görenlerden de özür diliyorum.

Günümüzün en gözde işlerinden biriside sanallaştırma. Bu sektörde eskiden beri VMware firmasının yazılımları kullanılarak bir şeyler yapılabiliyordu. Ancak bu da oldukça maliyetli oluyordu. Ancak ne olduysa bir anda VMware ESX isimli meşhur sanallaştırma sisteminin ücretsiz bir versiyonunu (ESXi 3.5 Update 2) son hali çıkartmaya karar verdi. Bunda Windows un Hyper-V ile yaptığı ciddi atağın ve lisanslama konusunda ki bazı avantajlarının neden olduğunu söyleyebiliriz. Bunlara ilerleyen yazılarımda değineceğim. VMware in bu ücretsiz sanallaştırma yazılımını http://www.vmware.com/products/vi/esx/esx3i.html adresinden önce üye olarak (Ürün anahtarı üye olunarak alınabiliyor) indirebilirsiniz. Sanallaştırma destekleyen bir sunucunun üzerine deneme sürümü olarak kurduktan sonra bize verilen ürün anahtarı ile sorunsuz bir şekilde kullanmaya başlayabiliriz. Kurulum ve üzerinde sanal makinelerin oluşturulması işlemleri de sonraki yazımın konularını oluşturuyorlar. Bu yazımda ise sizlere ESXi 3.5 in yapısından ve özelliklerinden bahsetmek istiyorum.

VMware ESXi ESX ile aynı fonksiyonelliği ve performansı sunmaktadır. Bunun yanında bir takım farklılıkları da vardır. Özellikle Linux tabanlı servis konsolu ESXi de kaldırılmıştır. Bunun sebebi olarak ESX inin OEM firmaların sunucularını ön kurulumlu olarak dağıtabilmelerine olanak tanımaktır. Ancak yine ayrı olarak CD ile de kurulup kullanılabilmektedir. Böylece ESX ile 2 Gb olan kurulum boyutu 32 Mb gibi inanılmaz bir rakama indirilebilmiştir (Microsoft Hyper-V de bu rakam ServerCore kurulumu yapıldığında dahi 2.6 Gb dır. Ancak buna daha sonra değineceğiz). Çıkarılan Linux tabanlı servis konsolunun yerine uzaktan kullanılan komut satırı ortamı konulmuştur. Bu komut satırına çok da ihtiyaç duymadan VMware Infrastructure Client ile görsel olarak neredeyse tüm işlemlerimizi yapabiliriz.

ESXi, VMware Infrastructure 3 yapısını desteklemektedir. Bu yapı VMware Virtual Machine File System, Virtual SMP, Virtual Center, VMotion, VMware Distrubuted Resource Scheduler, VMware High Availability, VMware Update Manager ve VMware Consolidated Backup sistemlerini de içermektedir. Bunlara kısaca değinmek gerekirse;

· VMware Virtual Machine File System (VMFS): ESX ya da ESXi Server da bulunan sanal makinelerin bulunduğpu disklerin dosya sistemi

· Virtual SMP (VMware Virtual Symmetric Multi-Processing): Bu özellik ile sanal bir makinenin birden fazla fiziksel işlemciyi kullanabilmesi sağlanır.

· VMotion ve Storage VMotion: Vmotion ile çalışan sanal makinelerin bir fiziksel sunucudan diğerine kesinti olmaksızın taşınabilmesi sağlanır. Storage VMotion ile de sanal makinelerin dosyalarının bir storage ünitesinden diğerine sanal makinede herhangi bir kesinti olmaksızın taşınması sağlanır.

· VMware Distrubuted Resource Scheduler: Sistemin ihtiyacı olan donanımsal isteğin dinamik olarak hesaplanması ve çıkan sonuca göre yeterli miktarda donanımın alıkonması ve bu sanal makineye aktarılmasını sağlar.

· VMware Consolidated Backup: Sanal makinelerin üzerinde agent çalışmasına gerek kalmadan yedekleme yapılabilmesini ve ESX ya da ESXi üzerine tekrar yüklenebilmesini sağlar.

· VMware High Availability: Gerçek High-Availability de olduğu gibi bir sanal makine de sorun ortaya çıktığında ve çalışması durduğunda diğer sunucularda bulunan sanal makinelerin otomatik olarak başlatılması sağlanır.

ESX inin altyapısı işletim sisteminden bağımsız ve işletim sisteminin altında çalışan bir yapıdır. Bu özellik VMKernel ile sağlanmaktadır. VMKernel sistemde ki tüm proseslerin (uygulamaların ve ajanların) çalıştırılması, sanal makinelerin çalıştırılması, donanımların kontrolünün ve ihtiyaçlarının (sürücülerin ayarlanması ya da I/O kontrolü gibi) yönetimi gibi işleri yerine getirmektedir. VMKernel de çalıştırılan önemli prosesler şunlardır;

a) Direct Console User Interface (DCUI): Server da ki konsoldan erişilip ayarların yapılabilmesini sağlayan ayar ve yönetim arayüzüdür.

b) Virtual Machine Monitor: Sanal makinelerin çalışma ortamını oluşturan sistemdir. Aynı zamanda VMX in yardımcı işlevidir. Çalışan her sanal makinenin bir VMM i ve bir VMX i vardır. VMX sanal makinelerin yapılandırma ayarlarının saklandığı metin dosyasıdır. Bu dosyada değişiklik yapılmak istenirse bir metin editörü ile dosya açılarak yapılabilir. VMM ise Virtual Machine Manager ın kısaltılmış halidir ve adında anlaşılacağı üzere sanal makineyi yönetmekle yükümlüdür.

c) Agents: VMware Infrastructure Management yapısının uzak programlar tarafından kullanılmasını sağlar.

d) The Common Interface Model (CIM): Standart API ler kullanılarak uzak yazılımlar ile donanım seviyesinde yönetime olanak sağlar.

Sistem Dosyaları ve Amaçları:

Sistem ilk açıldığında VMKernel donanımları tarar ve uygun sürücüleri yükler. Ayrıca yerel diskleri kontrol eder ve diskle boş ise onları sanal makinelerin tutulmaları için VMFS dosya sistemi ile formatlar. Sistem boot sırasında VMKernel varsayılan değerleri ile bir yapılandırma dosyası oluşturur. Bu yapılandırma dosyasına konsoldan ya da diğer VMware araçlarından ulaşılarak istenilen değişiklikler yapılabilir. Bu yapılandırma dosyası memory modülünde saklanır ve sistem yeniden başladığında yapılandırma ayarları buradan okunur.

ESXi nin konfigürasyon dosyası /etc/vmware in altında, log dosyaları da /var/log/vmware in altında bulunur. Güncellemelerde /tmp nin altına indirilirlerve buradan kurulurlar. Ancak bu dosya sistemi VMFS dosya sisteminden farklıdır. VMFS dosya sistemi sanal makinelerin barındırılması için kullanılır. VMFS dosya sistemi ESX de olduğu gibi yerel disk üzerinde tutulabileceği gibi paylaşılan bir depolama ünitesinde de (SAN) bulunabilir. Dolayısıyla ESXi yerel diski olmayan sunucularda dahi çalışabilmektedir.

ESXi nin firmware üzerinde yüklü bulunan modellerinde bu firmware in bir kısmı hafızadaki yapılandırma dosyalarının firmware e yazılabilmesini sağlar. Böylece elektrik kesilse ya da disk arızalansa dahi sistem açıldığında bu kısımdan okunarak çalışır duruma gelir. Dosyalar bu kısımdan yedeklemek amacıyla çekilebilir. Bu sayede hem yedek alınmış olur hem de aynı yapılandırma ayarları başka bir ESXi sunucusunda kullanılarak benzer sistemler oluşturulabilir. Böylece bir sunucu arızalandığında aynı yapılandırma ayaralarına sahip diğer bir sunucu ile çalışmaya devam edilebilir.

Firmware e gömülü sistemlerde yama yada güncelleme işlemleri yapıldığında ikiye ayrılmış firmware bölümünden birisine halihazırda çalışır sistem sürümü yazılır diğerine de yeni sürüm yazılır ve sistem yeniden başlatılır. Eğer sistemin yeniden başlatılması sırasında bir sorun oluşursa otomatik olarak yeniden başlatılır ve sistem yedeği alınmış çalışır durumdaki sürümden açılır. Bunu günümüzde anakartların kullandığı çift bios çipi gibi düşünebiliriz.

Uzak komut satırı ortamı ile ya da VMware Infrastructure Client ile görsel olarak memory, file system ve VMFS veri depolama kısmına ulaşılabilinir. Bu sistem sunucu üzerinde oluşturularak kullanıcı ve gruplara gerekli yetkilerin verilmesi içinde kullanılabilmektedir. Kullanıcı ve grupların tanımlamalarının olduğu dosyalar /etc/passwd, /etc/shadow ve /etc/group klasörlerinde diğer işletim sistemlerinde olduğu gibi kriptolanarak saklanmaktadır.

ESXi de swap dosyası eğer var ise (otomatik olarak) yerel disk üzerinde oluşturulan VFAT dosya sisteminde saklanır. Ancak yerel disk yok ise paylaşılan bir depolama birimi (SAN) üzerinde de swap dosyası saklanabilir. Bu da VMFS dosya sistemli bir disk alanı olacaktır.

Konsol Kullanıcı Arabirimi:

Bu arayüz BIOS ekranı görünümlü ESXi üzerinde çalışan bir arabirimdir. Sanal sunucumuzun kurulumundan sonra karşımıza çıkacaktır. Oldukça basit olarak tasarlanmış olan bu arabirimden;

· Root parolası belirlenebilir,

· Network ayarları yapılabilir,

· Basit network testleri yapılabilir,

· Loglar görülebilir,

· Agent lar yeniden başlatılabilir,

· Tüm ayarlar ilk haline getirilebilir,

Bu arabirimin kullanılabilmesi için root kullanıcısı seviyesinde kullanıcı hakları ile girilmelidir. İlk kurulumda root kullanıcısının parolası boştur. Dolayısıyla ilk kullanımda bunun değiştirilmesi çok önemlidir.

ESXi üzerinde sistem ile iletişim kurulabilmesi amacıyla bazı portlar açık olarak gelir. Bunlar;

· 80 numaralı port ki kendi bilgisayarımızdan sisteme http://esxiipadresi/ adresinden erişip gerekli yazılımları sistemimize çekebileceğiz,

· 443 numaralı port istenirse yukarıda ki işlemin SSL üzerinden yapılabilmesini sağlamak amacıyla kullanılır,

· 427 numaralı port Service Location Protocol e ulaşmak için kullanılır,

· 5989 numaralı port ile 3. Parti yönetim araçlarının sistemle haberleşebilmeleri için kullanılır,

· 902 numaralı port ile de eski VIM API lerini desteklemek için kullanılır,

Bir sonraki yazımda görüşmek üzere hoşçakalın;

M. Hakan CAN