Windows Server

Active Directory ve Distributed File System DFS Birlikte Çalışma Senaryoları – Bölüm 2

Makalemin ilk bölümünde temel anlamda DFS konusuna değindim. Ek olarak ilk bölümde DFS namespaces kavramını detaylandırdım. DFS ile ilgili olarak bu makaleme aşağıdaki link üzerinden ulaşabilirsiniz.

Bölüm1

Bu bölümde ise DFS’ in replikasyon özelliğinden bahsedeceğim.

Introduction to DFS Replication

DFS replikasyon hakkındaki temel bilgileri aşağıdaki gibi özetleyebiliriz;

DFS replikasyonu multimaster bir mimariye sahip olup, üyelerden herhangi birinde bir değişiklik olması halinde diğer tüm üyeler bu güncellemeyi alır.

DFS replikasyonu update sequence number (USN) ismini verdiğimiz güncellik numarası ile takip eder.

DFS bir dosyayı replike etmeden önce staging folder ismini verdiğimiz özel bir klasörde işler ve ardından replike eder. Bu konuda ilerleyen bölümlerde detaylı bilgi veriyor olacağım.

Replike olacak verileri tespit etmek için version vector exchange protkolünü kullanır. Bu protokol dosya başına 1KB den daha düşük bir eşitleme verisi göndererek süreci yönetir.

Değişiklikleri RDC protkolü sayesinde sıkıştırarak ve sadece değişen blokları transfer ederek gerçekleştirir.

clip_image001

Replikasyonda çakışmaları engellemek için “last-writer wins”  yöntemi kullanırlar. Bu yöntem içinde makalemin ilerleyen bölümlerinde detaylı bilgi vereceğim.

Replikasyon sistemi otomatik olarak USN journal wraps, USN journal kayıpları veya DFS Replication veri tabanının kaybolması gibi durumlar için hazırlıklıdır ki bu konudaki detaylı açıklamaları makalemin ilk bölümünde yapmıştım.

DFS replikasyonu, DFS replikasyon servisi hakkında bilgi toplamak ve durumunu izlemek için Windows Management Instrumentation (WMI) kullanmaktadır.

 

Replication groups and replicated folders

 

 

clip_image002

 

Gördüğünüz gibi bir Replication Group dediğimiz replike olan iki server ve onların içerisindeki klasörleri görüyoruz. Bunlara aslında bu replikasyon için üye olan sunucularda diyebiliriz. Yine bu sunucuların altında ise bu replikasyon grubu için bir veya birden çok olabilen klasörleri görebiliyoruz.

Şeklimize bakacak olursak iki tane replicated Folders görebiliyoruz. Bunlar “Project” ve “Proposals” isimlerindeki klasörlerdir.

Herhangi bir değişik olması halinde otomatik olarak bu değişiklik üyeler arasında güncellenmektedir.

Bir replikasyon grubu içerisinde pek çok replike klasör oluşturma imkânımız vardır. Çünkü biz her bir replikasyon klasörü için ayrı ayrı zamanlama, bant genişliği yönetimi veya filtreleme gibi özellikleri kullanabiliyoruz.

Replike klasörleri farklı sunucular üzerinde aynı dizinde bulunmak zorunda değildir. Ayrıca yine paylaştırılmış olması veya DFS namespace’ in bir parçası olmak zorunda değildir. DFS Management aracı üzerinden rahatlıkla replike klasörleri oluşturabiliriz.

Replikasyonda RDC kullanılır. Burada yatan temel mantık sadece değişen bloklar ve bu değişikliğinde network üzerinden transfer edilirken sıkıştırılmasıdır.

Örneğin 10mb’ lık bir sunum dosyasında siz sadece 1mb lık bir değişim yaparsanız toplam %90 oranında gereksiz bir veri trafiğini önlemiş olursunuz ki bunun içerisinde sıkıştırma oranı yoktur.

RDC 64KB dan küçük dosyalar için kullanılamaz. Ayrıca yüksek bant genişliği olan ve yine bu bant genişliği dolu olmayan networkler içinde bir yarar sağlamayacaktır.

Bu protokolün bir diğer özelliği ise cross-file RDC dir.

Replikasyonda bir önemli konu ise zamanlama ve bant genişliği limitidir.

Replication group schedule

Replikasyon grubundaki tüm bağlantıları etkiler. Zamanlama olarak günün 24 saatini ve haftanın 7 gününü kullanabilirsiniz. Zaman aralıkları ise 15dk lık parçalar halinde ayarlanmaktadır.

Custom connection schedule

Bu ise tek bir bağlantı için zamanlama yapmak istediğiniz zaman kullanabileceğiniz bir özelliktir. Bu daha çok time zone farklı olan ofisler arasındaki bağlantılarda tercih edilir.

Burada önemli bir nokta, zamanlama konusundaki değişiklikler anında uygulanmaz. Öncelikle bu yeni değişiklik tüm domain controller makinelerin arasında replike olmalıdır. Bundan sonra ise replikasyon grubu içerisindeki her bir üyenin de bu bilgiyi alması zaman alır. Normal şartlarda bu ortalama 60dk sürebilir.

Bandwidth usage

Bant genişliği kullanımı konusunda ise, zamanladığınız her bir aralık için ( interval ) bir değer verebiliyorsunuz. Bu değer aralıkları ise aşağıdaki gibidir;

Değer olarak en az 16 kilobits per second (Kbps), en fazla 256 megabits per second (Mbps) veya full (unlimited) seçebiliyoruz.

Replikasyonda ki bir önemli nokta ise kullanılan topolojidir.

3 tane temel topolojimiz vardır;

Hub and spoke

Bu topoloji için en az 3 üye gerekmektedir. Bu üyelerden bir tanesi master olup diğerleri ile iki yönlü bir replikasyon gerçekleştirmektedir.

clip_image003

 

Bu topoloji için ortadaki makineye Hub, diğerlerine ise spoke ismini veriyoruz.

Hub sunucudaki bir sorunda topoloji zarar göreceği için opsiyonel hub ekleme şansımız vardır.

Full Mesh

Bu topolojide ise tüm üyeler birbirleri ile replike olmaktadır. Bir replikasyon grubunda 10 veya daha az üye var ise bu model kullanılabilir. Ancak 10 ve üstü üye var ise bu modeli kullanmamanız tavsiye edilmektedir.

clip_image005

No topology

Topolojiye henüz karar vermemişseniz ve bu sihirbazı kapattıktan sonra değişiklik yapmak istiyorsanız bunu seçebilirsiniz.

Server 2012 R2 ile beraber gelen DFS Replikasyon yenilikleri ise aşağıdaki gibidir;

·         Windows PowerShell module for DFS Replication

·         DFS Replication Windows Management Infrastructure provider

·         Database cloning for initial sync

·         Database corruption recovery

·         Cross-file RDC disable

·         File staging tuning

·         Preserved file restoration

·         Unexpected shutdown database recovery improvements

·         Membership disabling improvements

·         Support for Data Deduplication volumes

 

Windows Powershell module for DFS Namespaces

DFS Replication modülü bize artık işlerimizde Powershell kullanmamıza imkân sunmaktadır. Bu sayede mevcut işler için PS gücünü kullanabileceğimiz gibi bu bize ek esnekliklerde sunmaktadır.

Yani artık yönetim için DFS Management veya DFS Replication command-line araçları yanında Powershell de kullanabiliyoruz.

Yeni komut setleri için aşağıdaki linkleri inceleyebilirsiniz

DFS Namespace (DFSN) Cmdlets in Windows PowerShell

http://technet.microsoft.com/en-us/library/jj884270.aspx

Introducing DFS Namespaces Windows PowerShell Cmdlets

http://blogs.technet.com/b/filecab/archive/2012/10/19/introducing-dfs-namespaces-windows-powershell-cmdlets.aspx

Windows Management Infrastructure provider

Server 2012 R2 bir takım yeni Windows Management Infrastructure WMI özelliklerine sahiptir ki bunu biz WMI v2 olarak ta görebiliyoruz. Bu yeni özellik sayesinde yönetim programları WMI üzerinden DFS yönetimi yapabilmektedir.

 

Database cloning for initial sync

Bu özellik sayesinde siz var olan yapıya replike olması için yeni bir klasör eklediğinizde veya bir sunucu değiştirdiğinizde veya disaster vb kaynaklı bir geri dönüş yaptığınız zaman replikasyon başlangıç trafiğinin hızlanmasını sağlamaktadır. Bir nevi “initial replication” bölümünü bypass etmek için kullanılabilir.

Eskiden büyük veri tabanlarının söz konusu olduğu ortamlar için bu süre belki günler veya haftalar sürebilmekteyken artık bu bekleme süresi %99 oranında düşürülmüştür.

Database corruption recovery

DFS replikasyonu veri tabanında bir bozulma tespit eder ise bunu hemen onarır ve replikasyon trafiğinin bundan etkilenmesine izin vermez.

Bundan önceki sürümlerde ise ver tabanı bozulduğunda siliniyor ve “nonauthoritative initial sync” dediğimiz süreç başlıyordu. Bu da tabiki bir takım dosya çakışmaları ve benzeri sorunları beraberinde getirmekteydi.

Preserved file restoration

DFS replikasyonu 2012 R2 ile beraber artık çakışan, silinen veya önceden var olan (conflicted, deleted, and preexisting ) klasör veya dosyaları orjinal lokasyonuna veya başka bir yere almaya izin vermektedir. Bunun için aşağıdaki iki powershell komutunu kullanabilirsiniz

Get-DfsrPreservedFiles ve Restore-DfsrPreservedFiles

Unexpected shutdown database recovery improvements

DFS Replication beklenmedik bir şekilde veri tabanın kapanması durumunda ( sunucu kapanması veya servis bazlı sorunlar nedeni ile olabilir ) veri tabanı ile dosya sistemini otomatik olarak doğrular ve replikasyona devam eder.

Membership disabling improvements

Bundan önceki sürümlerde member bir makineyi üyelikten çıkarmanız durumunda kritik klasörler anında silinmekteydi (DfsrPrivate, Staging, ConflictAndDeleted, PreExisting).

2012 R2 ile beraber artık grup üyeliği kapatılan bir sunucudaki DfsrPrivate klasörü silinmektedir. Bu sayede buradaki dosyaları kurtarma şansımız bulunmaktadır. Tabiki burada unutulmaması gereken bir ayrıntıda, bu klasör eğer bu sunucu DFS replikasyonuna tekrar üye olur ise silinmektedir.

Site awareness for DirectAccess clients

Direct Access ile şirket network yapısına bağlanan kişinin bulunduğu yere en yakın site içerisinden çalışması için destek sağlanmaktadır. Direct Access ile bir istemci ( Windows 7 veya Server 2008 R2 ) bağlandığı zaman ip adresi şirket dışından bir ip olmaktadır. Bu ip bilgisi de AD üzerinde bir site ile ilişkisi olmadığı için random olarak bir liste alır.

Bu yeni özellikte ise istemci bir Windows 8 veya Server 2012 olması durumunda bilgisayar site bilgisi de verdiği için Server 2012 üzerinde çalışan namespace server bu site için en yakın sunucu listesini verecektir.

DFS Replication: Support for Data Deduplication volumes

Server 2012 üzerinde Dedup desteği sayesinde artık replike olan veriler içinde yerden kazanım sağlanacaktır.

Bir diğer önemli kavram ise DFS Replication kavramıdır.

DFS Replication

Aslında DFS namespace özelliği olarak anlattığımız birden çok sunucunun tek bir ortak klasör sunuyormuş gibi davranmasını sağlayan özellik DFS Replikasyon özelliğidir.

Bu özellik sayesinde farklı sunucular arasında Remote Differential Compression RDC dediğimiz sıkıştırma algoritması ile tüm dosya yerine sadece değişen blokların replikasyonu sağlanır.

 

Peki, buraya kadar temel olarak DFS konusundan bahsettik. Peki, 2012 R2 ile bize sunulan yenilikler nelerdir?

Bu yenilikler sırası ile aşağıdaki gibidir;

 

Windows Powershell module for DFS Replication

DFS Replication modülü bize artık işlerimizde Powershell kullanmamıza imkân sunmaktadır. Bu sayede mevcut işler için PS gücünü kullanabileceğimiz gibi bu bize ek esnekliklerde sunmaktadır.

Yani artık yönetim için DFS Management veya DFS Replication command-line araçları yanında Powershell de kullanabiliyoruz.

DFS Replication Windows Management Infrastructure provider

Server 2012 R2 bir takım yeni Windows Management Infrastructure WMI özelliklerine sahiptir ki bunu biz WMI v2 olarak ta görebiliyoruz. Bu yeni özellik sayesinde yönetim programları WMI üzerinden DFS yönetimi yapabilmektedir.

Database cloning for initial sync

Bu özellik sayesinde siz var olan yapıya replike olması için yeni bir klasör eklediğinizde veya bir sunucu değiştirdiğinizde veya disaster vb kaynaklı bir geri dönüş yaptığınız zaman replikasyon başlangıç trafiğinin hızlanmasını sağlamaktadır. Bir nevi “initial replication” bölümünü bypass etmek için kullanılabilir.

Eskiden büyük veri tabanlarının söz konusu olduğu ortamlar için bu süre belki günler veya haftalar sürebilmekteyken artık bu bekleme süresi %99 oranında düşürülmüştür.

clip_image006

 

Bu konuda uygulama örnekleri için aşağıdaki linki inceleyebilirsiniz

http://technet.microsoft.com/en-us/library/dn482443.aspx

 

Database corruption recovery

DFS replikasyonu veri tabanında bir bozulma tespit eder ise bunu hemen onarız ve replikasyon trafiğinin bundan etkilenmesine izin vermez.

Bundan önceki sürümlerde ise ver tabanı bozulduğunda siliniyor ve “nonauthoritative initial sync” dediğimiz süreç başlıyordu. Bu da tabiki bir takım dosya çakışmaları ve benzeri sorunları beraberinde getirmekteydi.

File staging tuning

DFS her replicated folder için bir “staging” klasörü oluşturur. Bu klasör içerisinde her iki server arasında taşınan dosyalar tanzim edilir. Bu sayede replikasyon sırasında bir kesilme riskine karşı önlem alınmış olunur. Bu konuda ayrı bir makale bölümü olarak sizlere detay vereceğim.

 

Preserved file restoration

DFS replikasyonu 2012 R2 ile beraber artık çakışan, silinen veya önceden var olan (conflicted, deleted, and preexisting ) klasör veya dosyaları orjinal lokasyonuna veya başka bir yere almaya izin vermektedir. Bunun için aşağıdaki iki powershell komutunu kullanabilirsiniz

Get-DfsrPreservedFiles ve Restore-DfsrPreservedFiles

Unexpected shutdown database recovery improvements

DFS Replication beklenmedik bir şekilde veri tabanın kapanması durumunda ( sunucu kapanması veya servis bazlı sorunlar nedeni ile olabilir ) veri tabanı ile dosya sistemini otomatik olarak doğrular ve replikasyona devam eder.

Membership disabling improvements

Bundan önceki sürümlerde member bir makineyi üyelikten çıkarmanız durumunda kritik klasörler anında silinmekteydi (DfsrPrivate, Staging, ConflictAndDeleted, PreExisting).

2012 R2 ile beraber artık grup üyeliği kapatılan bir sunucudaki DfsrPrivate klasörü silinmektedir. Bu sayede buradaki dosyaları kurtarma şansımız bulunmaktadır. Tabiki burada unutulmaması gereken bir ayrıntıda, bu klasör eğer bu sunucu DFS replikasyonuna tekrar üye olur ise silinmektedir.

Support for Data Deduplication volumes

 

 

Makalemin bu bölümünün sonuna geldik, bir sonraki bölümde görüşmek üzere.

 

Makalemin bu bölümünün sonuna geldik, bir sonraki bölümde görüşmek dileği ile esen kalın.

 

Kaynaklar

http://blogs.technet.com/b/filecab/archive/2013/07/31/dfs-replication-in-windows-server-2012-r2-revenge-of-the-sync.aspx

http://technet.microsoft.com/en-us/library/cc787066(v=ws.10).aspx

http://blogs.technet.com/b/askds/archive/2011/07/13/how-to-determine-the-minimum-staging-area-dfsr-needs-for-a-replicated-folder.aspx

Hakan Uzuner

2002 yılından beri aktif olarak bilişim sektöründe çalışmaktayım. Bu süreç içerisinde özellikle profesyonel olarak Microsoft teknolojileri üzerinde çalıştım. Profesyonel kariyerim içerisinde eğitmenlik, danışmanlık ve yöneticilik yaptım. Özellikle danışmanlık ve eğitmenlik tecrübelerimden kaynaklı pek çok farklı firmanın alt yapısının kurulum, yönetimi ve bakımında bulundum. Aynı zamanda ÇözümPark Bilişim Portalı nın Kurucusu olarak portal üzerinde aktif olarak rol almaktayım. Profesyonel kariyerime ITSTACK Bilgi Sistemlerinde Profesyonel Hizmetler Direktörü olarak devam etmekteyim.

İlgili Makaleler

Bir yanıt yazın

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

Başa dön tuşu