Windows Server 2008 R2'de DFSR olay kimliği 2213

Bu makalede, Windows 2008 veya Windows 2012'de olay kimliği 2213'i tetikleyen bir sorun açıklanmaktadır.

Şunlar için geçerlidir: Windows Server 2008 R2 Service Pack 1
Özgün KB numarası: 2846759

Özet

Microsoft, düzeltme 2663685 aracılığıyla Windows Server 2008 R2 için DFS Çoğaltma (DFSR) hizmetine yeni işlevler getirmiştir. Windows Server 2008 R2'de düzeltme 2663685 veya sonraki bir Dfsrs.exe sürümünü yükledikten sonra, veritabanı kirli bir kapatmayla karşılaşıyorsa DFSR Hizmeti artık Genişletilebilir Depolama Altyapısı (ESE)) veritabanının otomatik kurtarmasını gerçekleştirmez. Bunun yerine, yeni DFSR davranışı tetiklendiğinde, olay kimliği 2213 DFSR günlüğüne kaydedilir. DFSR tarafından kirli kapatma algılandıktan sonra DFSR yöneticisinin çoğaltmayı el ile sürdürmesi gerekir.

Windows Server 2012 bu davranışı varsayılan olarak gösterir.

DFSR hizmeti, çoğaltılmış bir klasörü barındıran birimlerde birim başına bir ESE veritabanı tutar. DFSR, çoğaltılan klasördeki her dosya ve klasörle ilgili meta verileri depolamak için bu veritabanını kullanır. Hizmetin düzgün çalışmaya devam ettiğinden emin olmak için veritabanının bütünlüğü korunmalıdır.

DFSR'ye hizmetin kapatılması gerektiği bildirildiğinde, bekleyen tüm değişiklikleri ESE veritabanında işlemeye başlar. DFSR hizmeti kapatılmadan önce DFSR hizmeti bekleyen tüm değişiklikleri DSFR ESE veritabanına işleyemediğinde DFSR'de kirli kapatma gerçekleşir. Başlatma sırasında DFSR hizmeti veritabanının bütünlüğünü denetler.

Kirli kapatma kurtarma büyük kapsamlara neden olabilir ve bunlar da çoğaltma çakışmalarına neden olabilir. Bazı durumlarda, düzeltme 2780453 yayımlanmadan önce kazanan dosya son kullanıcının istediği sürüm olmayabilir. Kirli kapatma sırasında çoğaltmayı durdurma güncelleştirmesi, yöneticilerin çoğaltma sürdürülmeden önce son yedeklemeden bu yana değişimleri yakalamak için verileri yedeklemesine olanak tanıyan bir koruma olarak tasarlanmıştır.

Düzeltme 2780453 yükledikten sonra, artık kirli kapatma sırasında çoğaltmayı duraklatmak zorunda kalmazsınız. Düzeltme 2780453 düzeltmesi tüm Windows 2012 varsayılan medyasında yer alır.

En iyi uygulamalar

Sunucu rolü, işletim sistemi ve düzeltme eki düzeyine göre Otomatik Kurtarma için en iyi yöntemler:

Rol Windows Server 2008 R2 KB 2780453 yüklü Windows Server 2008 R2 Windows Server 2012
DC Açık Açık Açık
Küme Düğümü Açık Açık Açık
Yazılabilir DFSR Sunucusu Devre Dışı Açık Açık
Salt okunur DFSR Sunucusu Açık Açık Açık

Otomatik Kurtarma'da Çoğaltmayı Durdur işlevini devre dışı bırakma

Kirli veritabanı kapatma algılandığında DFSR'nin Otomatik Kurtarma gerçekleştirmesini sağlamak için, Windows Server 2008 R2'de düzeltme 2780453 yüklendikten sonra aşağıdaki kayıt defteri değerini düzenleyin. Bu değişikliği Windows Server 2012 tüm sürümlerine dağıtabilirsiniz. Değer yoksa, oluşturmanız gerekir.

  • Anahtar: HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\DFSR\Parameters
  • Değer: StopReplicationOnAutoRecovery
  • Tür: Dword
  • Veri: 0

Olay 2213 günlüğe kaydedildikten sonra çoğaltmayı sürdür

Olay 2213 günlüğe kaydedildikten sonra, çoğaltmayı sürdürmek için yöneticinin bir WMIC komutu çalıştırması gerekir. Komut özellikleri, olay kimliği 2213'ün metninde sağlanır.

1. Adım: DFSR sunucunuzda günlüğe kaydedilen Olay Kimliği 2213 için kurtarma adımları

  1. Birimdeki tüm çoğaltılan klasörlerdeki dosyaları yedekleyin. Bunun yapılmaması, çoğaltılan klasörlerin kurtarılması sırasında beklenmeyen çakışma çözümünden veri kaybına neden olabilir.

  2. Bu birimin çoğaltmasını sürdürmek için sınıfının WMI yöntemini DfsrVolumeConfig kullanınResumeReplication. Örneğin, yükseltilmiş bir komut isteminden aşağıdaki komutu çalıştırın:

wmic /namespace:\\root\microsoftdfs path dfsrVolumeConfig where volumeGuid="E18D8280-2379-11E2-A5A0-806E6F6E6963" call ResumeReplication

2. Adım: Olay Kimliği 2213 kurtarma adımlarında 2. adımdaki WMIC komutunu kopyalayın ve yükseltilmiş bir komut istemine yapıştırın

Komut başarıyla çalıştırıldığında aşağıdaki sonuçları döndürür:

wmic /namespace:\\root\microsoftdfs pathdfsrVolumeConfig where volumeGuid="F1CF316E-6A40-11E2-A826-00155D41C919" call ResumeReplication

Yürütme(file://ww2008r2dc1/root/microsoftdfs:DfsrVolumeConfig.VolumeGuid=%22F1CF316E-6A40-11E2-A826-00155D41C919%22)-%3EResumeReplication()">\WW2008R2DC1\root\microsoftdfs:DfsrVolumeConfig.VolumeGuid="F1CF316E-6A40-11E2-A826-00155D41C919")->ResumeReplication()
Yöntem yürütme başarılı. Out Parameters:instance of __PARAMETERS{ ReturnValue = 0;};

PowerShell kullanıcıları için, WMIC komutuna powershell'den çalıştırmak için aşağıdaki gibi tek tırnak işaretleri eklemeniz gerekir:

wmic /namespace:\\root\microsoftdfs pathdfsrVolumeConfig where 'volumeGuid="F1CF316E-6A40-11E2-A826-00155D41C919"' call ResumeReplication

3. Adım: 2212 ve 2214 olay kimliklerinin günlüğe kaydedilip kaydedilmediğini denetleyin

Çoğaltmayı sürdür komutunu çalıştırdığınız sunucuda 2212 ve 2214 olay kimliklerinin günlüğe kaydedilip kaydedilmediğini denetleyin. Kirli kapatma işleminden sonra çoğaltılmış bir klasörü yeniden başlatmanız (veya ilk eşitlemeyi gerçekleştirmeniz) gerekiyorsa kurtarmayla ilgili ek not aşağıdaki adımları izleyin:

  1. Çoğaltılan klasörü devre dışı bırakın.
  2. DFSR sunucunuzda günlüğe kaydedilen Olay Kimliği 2213 için önceki Kurtarma adımlarında yer alan adımları kullanarak çoğaltmayı etkinleştirin.
  3. Çoğaltılan klasörü etkinleştirin.

WMIC komutunu çalıştırmadan önce çoğaltılan klasörü devre dışı bırakır ve etkinleştirirseniz, birim yöneticisi çevrimdışı olduğundan ilk eşitleme gerçekleşmez.

Kirli kapatma olasılığını azaltma adımları

Windows'ta bir hizmetin kapatma bildirimi aldıktan sonra kapanması için 30 saniye vardır. 30 saniye sonra, Hizmet Denetim Yöneticisi hizmeti kapanmaya zorlar. DFSR hizmeti söz konusu olduğunda, meşgul hub sunucusunun veritabanında bekleyen değişiklikleri işlemesi için 30 saniyeden fazla zaman gerekebilir. DFSR hizmeti, Hizmet Denetim Yöneticisi tarafından ayrılan 30 saniye içinde tüm değişiklikleri işlemezse, hizmet zorla kapatılır ve bu da kirli bir kapatma kurtarmasını tetikler.

Güç kesintileri veya DFSR sunucusunun başka bir sabit yeniden başlatılması da kirli bir kapatma kurtarma işlemini tetikleyebilir. Kirli kapatma olasılığını azaltmak için DFSR sunucularınızın düzgün bir şekilde kapanmasına izin vermek için kesintisiz bir güç kaynağına (UPS) bağlı olduğundan emin olun.

Hizmet kapatma sürelerini uzatma

Kapatılması 30 saniyeden fazla gerektiren DFSR sunucularında WaitToKillServiceTimeout değerini kullanarak tüm hizmetlerin kapanmasına izin verilen süreyi uzatabilirsiniz.

Kapatmak için daha fazla zamana ihtiyaç duyan bir DSFR sunucusu genellikle hizmetin çoğu sunucu yeniden başlatma veya yeniden başlatmalarında 2212 ve 2214 olaylarını günlüğe kaydeder. Veya kirli bir kapatmadan Otomatik Kurtarma etkinleştirilirse, DFSR hizmetinin her sunucu yeniden başlatması veya yeniden başlatılmasında olay 2213 günlüğe kaydedilir.

  • Yolu: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control
  • Değer: WaitToKillServiceTimeout
  • Tür: Dize
  • Veri: 300000

Bu değer milisaniye cinsindendir. Bu örnekte beş dakikalık kapatma süresi görüntülenir. Değer gerektiğinde artırılabilir veya azaltılabilir. Bu değer yalnızca DFSR'yi değil tüm hizmetleri etkiler. Bu değeri DFSR'nin temiz bir şekilde kapatılması için yeterli süre veren en düşük değere ayarlamanızı öneririz. DFSR hizmetinizin ne kadar süreyle kapatılması gerektiğini belirlemek için aşağıdaki işlemi kullanın:

  1. WaitToKillServiceTimeout kayıt defteri değerini 300000 milisaniye (5 dakika) ayarıyla ekleyin. Ayarı etkinleştirmek için sunucuyu yeniden başlatın.

  2. DFSR olayları 1006 (DFSR durduruluyor) ve 1008 (DFSR Durduruldu) için sunucunun sonraki birkaç yeniden başlatmasını izleyin. 1006 ve 1008 olayları arasında geçen süreyi not edin.

  3. WaitToKillServiceTimeout değerini düzelterek kapatmaya izin verilen süreyi, DSFR'nin temiz bir şekilde kapatılması için gereken gerçek zamanı daha yakından yansıtacak şekilde ayarlayın.

WaitToKillServiceTimeOut hakkında notlar

  • Sunucuyu yeniden başlatmak veya DFSR'yi arka arkaya birkaç kez yeniden başlatmak, DFSR'nin kapatılması gereken sürenin yeterli bir örneğini sağlamaz. Bekleyen veritabanı işlemlerini biriktirmek için hizmet süresinin bir süre çalışmasına izin vermelisiniz.

  • WaitToKillServiceTimeout ayarı en fazla bir saat değerine sahiptir. Ayar bir saati aşarsa SCM, hizmetin kapatılması için varsayılan 30 saniye ayarına geri döner.

  • WaitToKillServiceTimeout ayarı söz konusu olduğunda SCM'nin doğru çalıştığından emin olmak için, Windows Server 2008 R2'de düzeltme 2549760 yüklendiğinden emin olun.