Active Directory Domain Controller makineleri üzerinde tuttuğumuz FSMO rollerini farklı amaçlar için yer geldiğinde taşımak zorunda kalabiliriz. Performans nedeni ile veya migration nedeni ile bu rolleri taşımak zorunda kaldığımız zaman MMC konsolu ( Active Directory Users and Computers, Domain and Trust ve Schema yönetim konsolu ) üzerinden bu 5 rolü taşıyabileceğimiz gibi, istersek ntdsutil cmd komut setini de kullanabiliriz.
Ben ise bu makalemde bunlara ek olarak bu taşıma işini powershell ile nasıl yaparız onu anlatacağım.
Kullanacağımız PS aşağıdaki gibidir;
Move-ADDirectoryServerOperationMasterRole
Tabiki pek çok parametresi olan bu komut seti ile basit bir şekilde taşıma işlemini nasıl gerçekleştireceğimizi görelim.
Tam olarak komut seti için parametreler aşağıdaki gibidir;
Move-ADDirectoryServerOperationMasterRole [-Identity] <ADDirectoryServer> [-OperationMasterRole] <ADOperationMasterRole[]> [-AuthType {<Negotiate> | <Basic>}] [-Credential <PSCredential>] [-Force] [-PassThru] [-Server <string>] [-Confirm] [-WhatIf] [<CommonParameters>]
Sırası ile bu komut setinin parametrelerini görelim.
Identity
Bu parametre ile rolleri alacak olan sunucuyu tanımlıyoruz. Bu sunucu tanımı yaparken bir den farklı değer kullanabiliyoruz.
Name of the server object (name)
Örneğin DC001
Distinguished Name (DN) of the NTDS Settings object
Örneğin
CN=NTDS Settings,CN=DC001,CN=Servers,CN=NA-CAN-BC,CN=Sites,CN=Configuration,DC=corp,DC=contoso
Distinguished Name (DN) of the server object that represents the directory server
Örneğin
CN=DC001,CN=Servers,CN=NA-CAN-QBC,CN=Sites,CN=Configuration,DC=corp,DC=contoso,DC=com
GUID (objectGUID) of server object under the configuration partition
Örneğin
599c3d2e-f72d-4d20-8a88-030d99495f20
GUID (objectGUID) of NTDS settings object under the configuration partition
Örneğin
768c44de-f72d-66e0-8a88-0523ca495f20
OperationMasterRole
Bu ise bildiğimiz 5 role olup aşağıdaki gibi yazabiliriz;
PDCEmulator veya 0
RIDMaster veya 1
InfrastructureMaster veya 2
SchemaMaster veya 3
DomainNamingMaster veya 4
Bir komut içerisinde birden çok yazmak için aşağıdaki gibi yan yana yazabiliriz;
PDCEmulator, RIDMaster, InfrastructureMaster, SchemaMaster, DomainNamingMaster
Veya bu şekilde
-OperationMasterRole SchemaMaster, 4
AuthType
İki seçeneğimiz var
Negotiate veya 0 yazabilirsiniz
Basic veya 1 yazabilirsiniz.
Bunu kullanmak zorunda değilsiniz, varsayılan olarak Negotiate kullanılır.
Basic seçmeniz halinde dahi SSL kullanmak gereklidir.
Credential
Bu parametreyi de kullanmak zorunda değiliz. Kullanmadığımız zaman varsayılan olarak PS’ I çalıştıran hesabın kullanıcı bilgileri geçerlidir. Kullanmak istiyor isek aşağıdaki gibi örnekleyebilirim;
-Credential hakan
Veya
-Credential cozumpark\hakan
Peki, uygulamaya geçmeden önce aşağıdaki gibi iki bilgi vermek istiyorum;
Bu komut seti RODC ve AD snaphot ortamlarında çalışmaz.
Örnek komutlar aşağıdaki gibidir;
Move-ADDirectoryServerOperationMasterRole "DC1" PDCEmulator
Bu komut sadece PDC rolünü alır.
Move-ADDirectoryServerOperationMasterRole -Identity "DC2" -OperationMasterRole PDCEmulator,SchemaMaster
Bu komut ise DC2 isimli sunucuya PDC ve Schema rolünü alır
Bütün rolleri taşımak istiyorsanız;
Move-ADDirectoryServerOperationMasterRole DC1 0,1,2,3,4
Sorulara Yes yanıtını vererek tüm rollerin geçişini sağlıyorum.
Son durumu ise netdom query fsmo ile kontrol ediyorum.
Bu değişiklikten sonra eğer ortamınızda bir den çok site var ise replikasyonu beklemeniz gerekmektedir. Bu tür değişiklikleri ayrıca DNS üzerinden kontrol edebilirsiniz.
Örneğin bu geçiş sonrası eskiden DC2003 de olan PDC rolü artık DC2012R2 üzerindedir.
DNS üzerinde SRV kayıtları içerisinde PDC bilgisini DC bazlı kontrol edebilirsiniz. Bildiğiniz gibi her DC kendi AD veri tabanında dns bilgilerini tutar ve bunların güncellenmesi önemlidir.
Replikasyonu tetiklemek için aşağıdaki komut setini kullanabilirsiniz
Repadmin /Syncall /Aed
Umarım faydalı bir makale olmuştur, bir sonraki makalemde görüşmek üzere.
Kaynak
https://technet.microsoft.com/en-us/library/ee617229.aspx