Windows Server

Windows Server 2012 & R2 Data Deduplication (Veri Tekilleştirme)

 

Sistem yöneticileri için çok sayıda özelliği beraberinde getiren Windows Server 2012 & R2 ile gelen önemli geliştirmelerden bir tanesi de Veri Tekilleştirme (Data Deduplication).  Veri tekilleştirme (data deduplication) özellikle depolama üniteleri, yedekleme yazılımları ve WAN optimizasyon cihazları ile son yıllarda öne çıkan ve kurum ve kuruluşlar için depolama alanından tasarruf sağlama ve eldeki kaynakları daha verimli kullanma gibi katma-değerleri ile önemli bir özellik olarak sunulan özelleştirilmiş bir veri sıkıştırma tekniğidir. Tekilleştirme analiz sürecinde benzersiz veri blokları ya da byte örnekleri tanımlanır ve tekilleştirme alanına depolanır. Veri Tekilleştirme sayesinde NTFS volume yapılarında çalışacak Windows Server 2012 & R2 sunucular üzerinde depolama alanlarından tasarruf sağlanabiliyor olacak. Windows Server 2012 & R2 üzerinde veri tekilleştirmeyi gerçekleştiren bir motor (engine) geliyor. Bu motor sayesinde veri tekilleştirmeyi NTFS-volume’ler üzerinde etkinleştirebiliyoruz.  Veri tekilleştirme farklı üreticilerin ürünlerinde farklı şekillerde çalışan bir özellik. Windows Server 2012 & R2 üzerinde işlem-sonrası tekilleştirme yapacak şekilde ve volume seviyesinde PowerShell komutları ile aktifleştirilebilecek ve tetiklenecek şekilde dizayn edilmiş durumda.

 

Windows tekilleştirmenin temel yapısına baktığımızda boyutu 32 KB ile 128 KB arasında değişken yığınlardan (chunk) oluşuyor. Yığınlar Windows tarafından yönetilen ve bir yığın deposunda toplanan kopyalardır ve diskin System Volume Bilgisi alanında saklanır. Yani bizim görmediğimiz bir şekilde arka planda tekilleştirme motoru işlevini yerine getirir.  Aşağıdaki şekilde Windows tarafından iki dosya üzerinde veri tekilleştirme durumu resmedilmiştir.

 

 

clip_image002

 

 

Şekilde görüldüğü gibi X,Y,Z veri blokları tekilleştirme için aday bloklardır. Tekilleştirme motoru çalıştığında, tekilleştirmeye aday dosya kendi tekilleştirme bloklarını yığın deposu alanına kopyalar. Bu alandaki dosya verilerinin iki boyutu vardır: benzersiz veri bölgesi ve tekilleştirilmiş veri bölgesi. Tekilleştirilmiş bölge yığın deposundaki ortak yığınların ya da tekilleştirilmiş verilerin erişimini sağlar. Tekilleştirme süreci Windows zamanlanmış görevleri ile çalıştırılabileceği gibi PowerShell komutları ile de interaktif olarak çalıştırılabilme,  volume seviyesinde tekilleştirme yüzdelerinin görüntülenmesi gibi işlevler gerçekleştirilebilir. Bu zamanlanmış görevlerle volume tekilleştirme süreci tetiklenir ve yığın deposuna taşımalar koordine edilir.

 

Windows Server 2012 & R2 veri tekilleştirmenin sistem ve boot sürücüsü olmasından dolayı C: sürücüsü üzerinde aktifleştirilmesi desteklenmiyor.

 

Yapılan testlerde görülen tekilleştirme deneyimlerinde; tamamen tekilleştirilen bir dosyanın diskte 4 KB yer kapladığı görülmüştür. Bu da zaten dosyaya ait metadata bilgileri ve tekilleştirme verilerinin saklandığı yığın deposu içerisindeki tekilleştirilmiş bölge bilgilerinden oluşmaktadır.

 

 

Veri tekilleştirme ile ilgili özellikleri sıralayacak olursak:

 

·         Volume seviyesinde uygulanabilir.

·         Sadece Windows Server 2012 & R2 işletim sisteminde destekleniyor. Şu anda Windows 8 client tarafında desteği yok.

·         Boot ve System Volume’ler üzerinde etkinleştirilemez.

·         Sadece NTFS dosya sistemi ile formatlanmış volume’lerde kullanılabilir.

·         Windows Server 2012’de Clustered Shared Volume (CSV) yapısında çalışan Hyper-V yapılarında desteklenmez. Windows Server 2012’de  CSV kullanmayan Hyper-V konfigürasyonlarında ise desteklenmektedir.

·         Windows Server 2012  R2’de Clustered Shared Volume (CSV) yapısında çalışan Hyper-V yapılarında da desteklenmektedir. Windows Server 2012 R2’de yine CSV kullanmayan Hyper-V konfigürasyonlarında da desteklenmektedir.

·         Veri tekilleştirme kriptolanmış dosyalarda desteklenmez.

·         Veri tekilleştirme arka plan modunda çalıştırılabileceği gibi, zamanlanmış görevlerle de çalıştırılabilir. Yapacağınız seçime göre de I/O etkisi 2 kata kadar fark etmektedir.

 

Veri tekilleştirme özelliği GUI arayüzünden etkinleştirilebildiği gibi, komut satırından Windows Server 2012 & R2 ile beraber gelen PowerShell 3.0 komutları kullanılarak da etkinleştirilmesi, devre dışı bırakılması ve yönetilmesi sağlanabilir.

 

Data Deduplication Feature Kurulumu

 

Data deduplication özelliğini kullanabilmek için öncelikle kullanacağınız dosya sunucuları (file servers) ya da Hyper-V host sunucularınız üzerine Data Deduplication özelliğinin yüklenmesi gerekir. Bu kurulumu da yine GUI-grafiksel arayüzden Server Manager konsolunu kullanarak “Add Roles and Features” seçeneği ile yükleyebileceğiniz gibi, PowerShell 3.0 komut satırından da yüklenmesini tetikleyebilirsiniz.

 

Grafiksel Arayüzden Data Deduplication özelliğini eklemek için aşağıdaki adımları gerçekleştiriyoruz:

 

Server Manager konsolunu açıyoruz. Ve ister aşağıdaki şekilden de görüldüğü gibi dasbboard panosundan Add Roles kullanılarak isterseniz de sağ üst köşede gelen Manager menüsü içerisinden Add Roles and Features bağlantısına tıklayarak da kurulumu başlatabilirsiniz.

 

 

clip_image004

 

 

Before You Begin ekranını Next ile geçiyoruz.

 

 

clip_image006

 

 

Select Installation Type ekranında “Role-based or Feature-based Installation” seçeneği seçili iken Next ile devam ediyoruz.

 

 

clip_image008

 

 

Select Destination Server ekranında DataDeduplication özelliğini yükleyeceğiniz sunucuyu alttak sunucu havuzundan seçiyorsunuz.

 

 

clip_image010

 

 

Next İle sonraki adıma geçiyoruz.  Karşımıza gelen Select Server Roles ekranında rol listesinden File and Storage Services rolünü genişletip, altında Deduplication modülünü görüyoruz.

 

 

 

clip_image012

 

 

Deduplication kutucuğunu doldurup, bu ekranı Next ile devam ediyoruz.

 

 

clip_image014

 

 

Select features adımında herhangi bir ilave seçenek seçmeden Next ile sonraki adıma devam ediyoruz.

 

clip_image016

 

 

Confirm Installation Selections ekranında “Install” butonuna basarak kurulumu başlatıyoruz.

 

 

clip_image018

 

 

Installation Progress ekranında kurulumun tamamlanmasını bekleyebilir ya da Close ile kapatıp Server Manager konsolunda sağ üst kısımda Manage bağlantısının yanındaki arka plandaki yükleme görevlerini ve bunların ilerleyişini gösteren bayrak(flag) simgesine tıklayarak da kurulumu sürecinin hangi aşamada olduğunu ya da tamamlanıp tamamlanmadığını kontol edebilirsiniz.

 

 

clip_image020

 

 

Kurulum tamamlandıktan sonra artık DataDeduplication özelliğini kullanmak istediğimiz volume’ler üzerinde aktifleştirerek kullanabilirsiniz.

 

PowerShell komut satırını kullanarak Data Deduplication özelliğini yüklemek için aşağıdaki PowerShell komutunu çalıştırmanız yeterlidir:

 

“Add-WindowsFeature -name FS-Data-Deduplication”

 

DataDeduplication Özelliğinin Etkinleştirilmesi

 

Datadeduplication özelliğini yükledikten sonra bunu kullanabilmek için istediğiniz NTFS volume’ler üzerinde aktifleştirmeniz gerekir. Bu etkinleştirmeyi GUI arayüzünden yapabileceğiniz gibi, komut satırından da PowerShell komutları ile gerçekleştirebilirsiniz.

 

Grafiksel arayüzden veri tekilleştirme özelliğini aktifleştirmek için aşağıdaki adımları gerçekleştirmeniz gerekir:

 

Server Manager konsolunu açıp sol menüden File and Storage Services kısayoluna tıklıyoruz.

 

 

clip_image022

 

 

Karşımıza aşağıdaki şekilde gördüğünüz File Services kategorisindeki alt menü gelecektir.

 

 

clip_image024

 

 

Bu ekranda sağda açılan alt menüden Volumes tıklayarak sunucu üzerindeki volumelerin listesini göreceksiniz. Bu listeden deduplication(veri tekilleştirme) özelliğini hangi volume üzerinde aktifleştirecekseniz bunu seçili hale getirip sağ tuş “Configure Data Deduplication” tıklamanız gerekir.

 

 

clip_image026

 

 

Gelen ekranda Data Deduplication altından “General Purpose File Server” seçeneğini aktifleştirdikten sonra “Deduplicate files older than (in days)” seçeneği ile  kaç günden önceki dosyalar için veri tekilleştirme yapılacağını ayarlıyoruz. Biz oluşan her dosya için etkinleştirme hemen başlasın istediğimiz için “0” değerini belirtiyoruz.

 

 

clip_image028

 

 

“Custom file extensions to exclude” kısmına tekilleştirmeden (deduplication) hariç tutulmak istenen dosya uzantıları girilebilir. Böylece bu uzantıya sahip dosyalar tekilleştirilmez. Yine “To exclude selected folders” kısmında klasör seviyesinde de hariç tutmalar ayarlanabilir. Böylece belirtilen klasörler ve içerikleri de yine tekilleştirme yapılmazlar.

 

“Set Deduplication Schedule” butonu kullanılarak tekilleştirme görevinin çalışma takvimi ayarlanabilir.

 

 

clip_image030

 

 

OK ile işlemi onaylayarak tamamlamış oluyoruz.

 

Böylece grafiksel arayüzden volume’ler üzerinde datadeduplication özelliğini nasıl etkinleştirdiğimiz gördük.

 

Şimdi de bu özelliği PowerShell komut satırından nasıl devreye aldığımızı görelim:

 

PowerShell komut satısını açıyoruz.

“HELP DEDUP”  komutunu verirseniz veri tekilleştirme komutlarının listesini görebilirsiniz.

 

 

clip_image032

 

 

Benzer şekilde veri tekilleştirme komutlarının listesini Deduplication modülünü göstererek de alabilirsiniz.

 

 

clip_image034

 

 

Get-Command –Module Deduplication

Veri tekilleştirme komutlarını kullanabilmek  için Import-Module   Deduplication komutu ile veri tekilleştirme modülünü aktifleştiriyoruz.

 

 

clip_image036

 

 

Veri tekilleştirme özelliğini bir volume üzerinde aktifleştirmek için Enable-DedupVolume komutunu kullanıyoruz.

 

 

clip_image038

 

 

Enable-DedupVolume E:

 

Veri tekilleştirmeyi volume üzerinde etkinleştirildikten sonra sıra geldi tekilleştirme sürecini tetiklemeye. Bunun için de aşağıdaki komutu çalıştırmanız yeterlidir:

 

clip_image040

 

 

Start-DedupJob –Type Optimization –Volume E:

 

E volume üzerinde disk optimizasyonu modunda veri tekilleştirme görevini tetiklemiş olduk.

 

Bu aşamadan sonra tekilleştirmenin hangi oranda yapıldığını, tamamlanıp tamamlanmadığını ya da hangi volume üzerinde etkinleştirildiğinizi yine PowerShell komutları ile kontrol edebilirsiniz.

 

 

clip_image042

 

 

Get-DedupVolume komutu ile veri tekilleştirmenin hangi volume’ler üzerinde etkinleştirildiği ve disk alanından ne kadarlık tasarruf sağladığı bilgisini alabilirsiniz.

 

 

clip_image044

 

 

Get-DedupJob komutu ile arka planda çalıştırılmış bir tekilleştirme işinin olup olmadığı, çalışan bir tekilleştirme işi varsa bu işin ne kadarının tamamlandığı ve State kolonunda da durum bilgisini alabilirsiniz. Eğer arka planda çalışan bir veri tekilleştirme işi çalışmıyorsa herhangi bir çıktı gelmeyecektir.

 

 

clip_image046

 

 

Get-DedupMetadata komutu ile de veri tekilleştirme yapılmış volume’lere ait metadata bilgilerini detaylı olarak alabilirsiniz.

 

 

clip_image048

 

 

Get-DedupSchedule komutu ile de Windows Server 2012 & R2 üzerinde hazır olarak gelen tekilleştirme işlerine ait zamanlanmış görevlerin listesini almış olacaksınız. Bu varsayılan olarak gelen görevlerin dışında sizde kendiniz New-DedupSchedule komutu ile kendi zamanlanmış görevlerinizi oluşturmanız mümkün.

 

 

clip_image050

 

 

Update-DedupStatus komutu ile de önceden veri tekilleştirmenin etkinleştirildiği bir volume üzerinde (bizdeki örnekte E volume) tekilleştirme durum güncellemesi yaparak son durum ile ilgili bilgileri alabilirsiniz.

 

 

clip_image052

 

 

Disable-DedupVolume komutu ile veri tekilleştirmenin aktif olduğu bir volume üzerinde veri tekilleştirme özelliğini devre dışı bırakabilirsiniz.

 

LAB Uygulaması:

 

Yukarıdaki detaylı bilgilerden sonra şimdi de örnek bir uygulama ile adım adım deduplication özelliğinin nasıl kullanıldığını gösteriyor olacağız:

 

Öncelikle Disk Management konsolunu açıyoruz.

 

Bölümlenmemiş elimizdeki 10 GB kapasitesindeki alanı bir simple volume olarak NTFS formatında biçimlendiriyorum.

 

 

clip_image054

 

 

Bu 10 GB kapasitesindeki E: volume içerisinde bir tane 1 GB boyutunda bir sanal disk oluşturuyorum. Bunun için Action menüsünden “Create VHD” komutunu kullanmanız yeterlidir.

 

 

clip_image056

 

 

clip_image057

 

 

clip_image059

 

 

1 GB boyutunda bir sanal disk oluşturdum. Bu sanal diskten Copy-Paste yöntemi ile üç ilave kopya daha oluşturuyorum.

 

 

clip_image061

 

 

Böylece E: volume içerisinde toplamda 8 GB yer kaplamış olacaktır. Şu anda E: volume üzerinde veri tekilleştirme yani data deduplication henüz aktif değil.

 

 

clip_image063

 

 

clip_image065

 

 

Şimdi E: volume üzerinde veri tekilleştirmeyi aktifleştirmek için PowerShell komut satırına geçerek sırayla aşağıdaki komutları çalıştırıyoruz.

 

 

clip_image066

 

 

clip_image067

 

 

clip_image069

 

Bu aşamadan sonra tekilleştirmenin hangi oranda yapıldığını, tamamlanıp tamamlanmadığını aşağıdaki komutla öğrenebilirsiniz.

 

 

clip_image071

 

 

clip_image073

 

 

Tekilleştirme sürecinin tamamlandığını gördükten sonra volume üzerinde ne kadarlık kazanım sağladığını görmek için de aşağıdaki komutu çalıştırmanız yeterlidir.

 

 

clip_image075

 

 

clip_image077

 

 

Şimdi de kopya olarak oluşan VHDX sanal disklerden bir tanesinin Properties’ine girdiğimizde aşağıdaki ekran karşımıza gelecektir:

 

 

clip_image079

 

Görüldüğü gibi tekilleştirmeden sonraki kazanım net bir biçimde görülmektedir.

 

Sonuç Olarak;

 

Windows Server 2012 & R2 ile buluta giden yolda katma-değerli çok sayıda önemli yenilikler geliyor. Bu makalemizde de sizlerle bu yeniliklerden dosya sunucuları ve depolama alanında gelen Data-Deduplication (Veri-Tekilleştirme) özelliğini detaylarıyla inceledik. Bir başka makalemizde görüşmek üzere hoşçakalın.

Mesut ALADAĞ
Microsoft MVP, MCT

 

İlgili Makaleler

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Başa dön tuşu