Active Directory (AD) Microsoft’un dizin hizmeti altyapısında belirli görevlerin tek bir etki alanı denetleyicisi (Domain Controller – DC) tarafından yönetilmesi gerekir.
Bu görevler FSMO (Flexible Single Master Operations) rolleri olarak adlandırılır.
FSMO rolleri kritik öneme sahiptir çünkü şema değişiklikleri, domain ekleme, RID dağıtımı, parola senkronizasyonu gibi işlemler tek bir DC üzerinde yönetilir. Bu nedenle rolleri başka bir DC’ye planlı bir şekilde taşımak gerekir.
PowerShell bu işlemi hem daha güvenli hem de daha hızlı yapmamıza imkân verir.
Aşağıdaki örnekte tüm FSMO rollerini tek adımda VM-W2022DC adlı DC’ye taşıyacağız.
Import-Module ActiveDirectory
# Hedef DC adı:
$target = "VM-W2022DC"
# Tüm FSMO rollerini taşı (Schema, DomainNaming, PDC, RID, Infrastructure)
Move-ADDirectoryServerOperationMasterRole -Identity $target `
-OperationMasterRole SchemaMaster, DomainNamingMaster, PDCEmulator, RIDMaster, InfrastructureMaster `
-Confirm:$false
FSMO Rolleri Nedir?
FSMO rolleri toplamda 5 adettir:
- Schema Master (Forest)
- Şema (Active Directory’nin veri yapısı) üzerinde değişiklik yapabilen tek roldür.
- Örnek: Yeni bir Exchange kurulumu sırasında şemaya yeni öznitelikler eklenir.
- Domain Naming Master (Forest)
- Orman içine yeni domain ekleme/silme yetkisi yalnızca bu roldedir.
- Örnek: Yeni bir child domain oluşturmak istediğinizde kontrol buradan yapılır.
- PDC Emulator (Domain)
- Parola değişikliklerini anlık senkronize eder.
- Kerberos ve NTLM oturum açmalarında başvuru noktasıdır.
- Tüm domain için zaman kaynağıdır.
- RID Master (Domain)
- Nesneler için benzersiz Security Identifier (SID) numaraları üretir.
- Yeni kullanıcı/nesne oluşturulduğunda RID havuzlarını dağıtır.
- Infrastructure Master (Domain)
- Domainler arası nesne başvurularını güncel tutar.
- Tek domainli yapılarda veya tüm DC’ler Global Catalog (GC) ise kritik değildir.
FSMO Rolleri Neden Taşınır?
FSMO rollerinin taşınma sebeplerine örnekler:
- Eski donanıma sahip DC’nin emekliye ayrılması
- Yeni, daha güçlü bir DC’nin devreye alınması
- Eski FSMO sahibi DC’nin sık sık hataya düşmesi
- Disaster Recovery veya veri merkezi taşınması senaryoları
Ön Hazırlıklar
Yetki Kontrolü
- Forest rollerini (Schema, Domain Naming) taşımak için: Enterprise Admins ve Schema Admins
- Domain rollerini (PDC, RID, Infra) taşımak için: Domain Admins üyesi olmalısınız.
Sağlık Kontrolleri
Taşıma işleminden önce DC’lerin sorunsuz çalıştığından emin olun:
repadmin /replsummary
repadmin /showrepl
dcdiag /v
- Replikasyon hatası olmamalı
- DNS kayıtları doğru olmalı
- Saat farkı 5 dakikadan fazla olmamalı (Kerberos için kritik)
Bakım Zamanı
FSMO rolleri taşıma sırasında servis kesintisi yaratmaz, fakat GPO işleme, parola doğrulama, RID dağıtımı gibi kritik işlevler etkileneceği için düşük yoğunluklu saatlerde yapılması önerilir.
PowerShell ile FSMO Rolleri Taşıma
Active Directory Modülünü Yükleyin
Import-Module ActiveDirectory
Hedef DC’yi Belirleyin
$target = "VM-W2022DC"
Tüm Rolleri Tek Komutla Taşıyın
Move-ADDirectoryServerOperationMasterRole -Identity $target `
-OperationMasterRole SchemaMaster, DomainNamingMaster, PDCEmulator, RIDMaster, InfrastructureMaster `
-Confirm:$false
Burada -Confirm:$false
parametresi sayesinde işlem onay istemeden gerçekleşir.
Örnek Senaryolar
Senaryo 1: Sadece PDC Emulator Rolünü Taşımak
Move-ADDirectoryServerOperationMasterRole -Identity "VM-W2022DC" -OperationMasterRole PDCEmulator -Confirm:$false
Senaryo 2: Kaynak DC Erişilemiyor (Seize İşlemi)
Kaynak FSMO sahibi DC kalıcı olarak erişilemiyorsa:
Move-ADDirectoryServerOperationMasterRole -Identity $target `
-OperationMasterRole SchemaMaster, DomainNamingMaster, PDCEmulator, RIDMaster, InfrastructureMaster `
-Force -Confirm:$false
Uyarı: Seize işlemi yapıldıktan sonra eski DC’yi tekrar ağa kesinlikle katmayın. Önce metadata temizliği yapılmalı.
Taşıma Sonrası Kontroller
PowerShell ile Kontrol
Get-ADForest | Select-Object SchemaMaster, DomainNamingMaster
Get-ADDomain | Select-Object PDCEmulator, RIDMaster, InfrastructureMaster
Netdom ile Kontrol
netdom query fsmo
Replikasyon Senkronizasyonu
repadmin /syncall /AdeP
Zaman Senkronizasyonu (Yeni PDC İçin)
w32tm /config /manualpeerlist:"ntp1.ntp.org ntp2.ntp.org" /syncfromflags:manual /reliable:yes /update
net stop w32time && net start w32time
w32tm /resync
En İyi Uygulamalar
- FSMO rollerini tek DC üzerinde toplamak yönetimi kolaylaştırır, ancak donanım arızasında risk büyüktür. Büyük yapılarda rolleri dağıtmak daha güvenlidir.
- GC – Infra Master ilişkisini unutmayın. Eğer tüm DC’ler GC ise sorun olmaz.
- İşlemi yaptıktan sonra Olay Günlüklerini (Event Viewer) kontrol edin. Özellikle Directory Service ve System günlüklerini izleyin.
- Her işlem sonrası sonuçları dokümante edin (tarih, saat, kim tarafından yapıldığı, çıktı raporları).