1. 程式人生 > >Windows Server 2016-Active Directory復制概念(一)

Windows Server 2016-Active Directory復制概念(一)

Active Directory AD復制 域控復制概念 域同步復制 Windows Server 2016

停更十余天後,從今天開始繼續為大家帶來Windows Server 2016 Active Directory系列更新,本章為大家介紹有關Active Directory復制相關概念內容,有關Active Directory概念性內容不管是老版本2000還是2016基礎概念還是一致的,本章概念介紹中以Windows 2000 Active Directory為例介紹,有關Windows 2016 Active Directory新增功能請參考(http://blog.51cto.com/wenzhongxiang/2071659), 希望可以幫到大家。

概念

目錄服務是一種分布式數據庫,用於存儲與網絡資源有關的信息,以便於查找和管理。Microsoft Active Directory 是用於 Windows 2000的最新目錄服務實現。涉及目錄服務的基本問題圍繞著可以將哪些信息存儲在數據庫中,存儲的方式是什麽,如何查詢特定的信息,以及如何對結果進行處理。Active Directory 包含目錄服務本身,以及允許訪問支持 X.500 命名規則的數據庫的從屬服務。

可以使用某個用戶名來查詢目錄,以獲取相關信息,如用戶的電話號碼或者電子郵件地址。目錄服務也是非常靈活的,可以進行歸納查詢("打印機在什麽位置?"或"服務器的名稱是什麽?"),以查看可用打印機或服務器的歸納列表。

目錄服務還具有給用戶提供到整個企業網絡的單個入口點的優點。用戶可以查找和使用整個網絡資源,而無需了解資源的確切名稱或位置。也可以使用統一的網絡組織及其資源邏輯視圖來管理整個網絡。

為確保設計出最有效、最可靠的 Active Directory,必須了解網絡的邏輯結構和物理結構。研究和了解組織的業務結構和操作也是非常重要的。Active Directory 將域的邏輯結構從實際物理結構中獨立出來。

邏輯結構:

網絡的邏輯結構是由無形的項目組成的,如對象、域、目錄樹和目錄林。

Active Directory 的基本結構塊是對象,這是一個代表網絡資源的已命名特定屬性集。對象屬性是目錄中對象的特征。對象也可以按類進行分組,類是對象的邏輯分組。用戶、組和計算機是不同對象類的例子。

在最低一層,某些對象代表網絡上的單個實體,如用戶或計算機。這些實體稱為葉對象,它們不能包含其它對象。但是,為了簡化目錄的管理和組織,可以將葉對象放在其它對象(稱為容器對象)內部。容器對象也可以采用嵌套(或層次)形式包含其它容器。

容器對象最常用的類型是組織單元 (OU)。可以使用 OU 將對象進行分類,並將域變成某種類型的邏輯管理分組。尤其要註意的是,域中 OU 的結構和層次與任何其它域的結構無關。

所有網絡對象只能在一個域中存在(無論是葉對象還是容器對象)。為反映組織網絡的特點,可以使用域將相關對象分成一組。每個創建的域僅存儲所包含對象的信息,而不存儲其它對象的信息。目前,在域中可維護的對象數量的上限為一百萬。

每個域表示一個安全邊界。對每個域中對象的訪問是由訪問控制項 (ACE) 控制的,後者包含在訪問控制列表 (ACL) 中。這些安全設置並不跨越域邊界。在 Active Directory 中,域也可以稱為"分區"。因為域是 Active Directory 數據庫的物理分區,所以您既可以按照業務功能(人力資源、銷售或財務),也可以按照位置(地理或相對)建立其結構。

當將相關域分成一組以便共享全局資源時,您就創建了"目錄樹"。盡管目錄樹可以只包含一個域,但是您可以將層次結構中相同名稱空間的多個域合並在一起。可以使用基於 Kerberos 的安全功能,通過雙向信任關系將目錄樹中的域透明地連接在一起。這些信任關系可以是永久性的(不能被刪除),也可以是暫時的。換句話說,如果域 A 信任域 B,而域 B 信任域 C,則域 A 信任域 C。

目錄樹中的所有域共享所有對象類型的正式定義(稱為"架構")。此外,任何給定目錄樹中的所有域還共享全局編錄 (GC)。GC 是目錄樹中對象的中央儲存庫。

每個目錄樹也可以由鄰接的名稱空間表示。例如,如果公司的根域為"azureyun.com",則可以給銷售和技術支持部門創建單獨的域,它們的域名分別為"sales.azureyun.com"和"support.azureyun.com"。這些域稱為子域。與 Windows NT 4.0 不同,每個域自動生成信任關系。

在最高一級,可以將單獨的目錄樹分成一組形成"目錄林"。可使用目錄林,將組織中的不同部門,甚至不同組織組合到一起。這些部門不必共享相同的命名架構並且獨立運作,但彼此之間可以進行通信。目錄林中的所有目錄樹共享相同的架構、全局編錄和配置容器。再者,基於 Kerberos 的安全功能在目錄樹之間提供了信任關系。

Windows 2000 目錄服務的另一個優點是,無需重新安裝整個服務器操作系統,即可卸載 Active Directory。要想使一個成員服務器成為 DC,您只需運行 DCPROMO 工具來添加 Active Directory 服務器即可。要想刪除 Active Directory 服務器,您同樣只需運行 DCPROMO 工具即可。

物理結構:

域控制器和站點是處理局域網配置物理結構的兩個基本組件。

與 Windows NT 4.0 不同,僅由運行 Windows 2000 的計算機組成的網絡沒有主域控制器 (PDC) 和備份域控制器 (BDC)。在 Windows 2000環境中,將所有參與網絡管理的服務器均看作是域控制器。域控制器 (DC) 存儲目錄數據庫的復制副本,並且域中控制器之間的復制是自動完成的。

對於跨多個地理位置的企業網絡,要了解目錄數據庫復制對域控制器和網絡性能的影響,了解廣域網設計和結構的含義是非常重要的。

名稱空間:

名稱空間是有特定邊界的指定區域,可以在此處解析分配給計算機的邏輯名稱。名稱空間的主要用途是組織資源的說明,使用戶按其特性或屬性來查找資源。可以使用給定名稱空間的目錄數據庫找到某個對象,而無需知道它的名稱。如果用戶知道某個資源的名稱,就可以查詢有關該對象的有用信息。

尤其要註意的是,名稱空間的設計最終決定了:隨著目錄數據庫的增長,它對用戶到底有多大用處。排序和搜索算法不能解決邏輯目錄設計中的缺陷

在邏輯層次上,Windows 2000 Active Directory 只不過是另一個名稱空間。在 Active Directory 中,兩個主要信息類型存儲:

  • 對象的邏輯位置。

  • 有關該對象的屬性列表。

可以給這些對象分配屬性(如電話號碼、房間位置等等),並可用這些屬性查找目錄數據庫中對象的位置。隨著 Active Directory 架構的擴大(修改),使用屬性進行搜索就變得越來越重要了。當將對象、對象類和/或這些對象的屬性添加到目錄數據庫中時,對於目錄用戶而言,它們的結構決定了它們的用途。

目錄樹中的每個容器和對象都有一個唯一的名稱。這些名稱空間是目錄樹中所有容器和對象、或分支和葉對象的完全路徑。對象在目錄樹中的位置決定了其可分辨的名稱。

對象的可分辨名稱 (DN) 包含從特定名稱空間的頂層到整個目錄樹層次結構的完整路徑。因為 DN 對於組織目錄數據庫非常有用,但對於記住該對象沒有幫助,所以在 Active Directory 中也使用相對可分辨的名稱 (RDN)。RDN 是對象名的一部分,也是對象本身的一個屬性。

很多網絡使用的名稱空間是基於當前 Internet 上使用的域名系統 (DNS)。這種 DNS 關系有助於確定 Active Directory 目錄樹的形狀以及對象彼此之間的關系。域控制器項目是可分辨名稱中列出的域,而公用名稱 (CN) 項目則是針對目錄中用戶對象的特定路徑。

全局編錄:

全局編錄包含目錄中每個 Windows 2000 域的部分副本,它是由 Active Directory 復制系統自動創建的。這樣,只要給出目標對象的一個或幾個屬性,用戶和應用程序就可以在 Active Directory 域目錄樹中找到這些對象。全局編錄還包含目錄分區的架構和配置。這就是說,全局編錄存儲 Active Directory 中每個對象的副本,但只存儲它們的很少一部分屬性。全局編錄中的屬性是搜索操作中那些最常使用的屬性(如用戶的名和姓、登錄名等等),這些屬性是查找對象完整副本位置所必需的。

使用這種公用信息,用戶可以很快找到要找的對象,而無需知道這些對象在哪個域中,也不要求知道企業中相鄰的擴展名稱空間。如果在全局編錄中找不到該對象,則搜索功能將查詢本地域分區以獲得信息。

您可以使用架構管理器工具更改架構,並定義在全局編錄中存儲哪些屬性。由於對所有全局編錄服務器進行的更改都要復制全局編錄,所以出於性能和維護的目的,最好限制本地分區中存儲的屬性數量。

DNS與AD的集成:

DNS 和 Active Directory 的集成是 Windows 2000 Server 的一個核心特征。DNS 域和 Active Directory 域對不同的名稱空間使用完全相同的域名。即使兩個名稱空間共享相同的域結構,它們也是不同的名稱空間,了解這一點是非常重要的。每個名稱空間存儲不同的數據並管理不同的對象。DNS 使用區域和資源記錄,而 Active Directory 使用域和域對象。

例如,如果對象的某個屬性是服務器的完全合格域名(如 SERVER1.SALES.AZUREYUN.COM),Active Directory 就會向 DNS 查詢該服務器的 TCP/IP 地址,Windows 2000 請求者隨後可以建立與該服務器的 TCP/IP 會話。

Active Directory 與 DNS 的集成是這樣實現的:每個 Active Directory 服務器將自己的地址發布在 DNS 主機上的服務資源記錄中。

全球唯一標識符:

因為網絡中的每個對象必須用唯一的屬性來標識,所以 Active Directory 通過將全局唯一標識符 (GUID) 與每個對象關聯起來實現這一點。即使對象的邏輯名稱被更改,也應保證這個號碼是唯一的且永遠不會被目錄數據庫更改。當用戶或應用程序首次在目錄中創建可分辨的名稱 (DN) 時,就會生成 GUID。

復制:

雖然 Windows NT 4.0 中的網絡結構基於 PDC 和 BDC 模型,但是 Windows 2000 網絡上的所有服務器均用作域控制器 (DC),並且彼此之間沒有主次之分。對於 Active Directory,所有 DC 在站點中自動復制,並支持多主機復制,以復制所有域控制器的 Active Directory 信息。由於引入了多主機復制,管理員可以更新域中任何 Windows 2000 域控制器上的 Active Directory。

多主機數據庫復制還有助於控制何時將更改同步,哪些信息是最新的,以及何時停止數據復制以避免重復和冗余。為確定哪些信息需要更新,Active Directory 使用 64 位更新順序號 (USN)。這些號碼創建後與所有的屬性相關聯。每次更改一個對象之後,其 USN 都會遞增並與屬性一起保存。

每個 Active Directory 服務器都保留站點內所有復制夥伴的最新 USN 的表格。該表格包括每個屬性的最高 USN。 當達到復制時間間隔時,則每個服務器只請求那些 USN 比列在自己表格中的 USN 大的更改。

有時,在復制所有的更改之前,可能在兩個不同的 Active Directory 服務器上對同一屬性進行了更改。這就會導致復制沖突。必須將其中一個更改聲明為更準確的更改,並將此更改用作所有其他復制夥伴的復制源。為解決這種潛在的問題,Active Directory 使用了整個站點的屬性版本號 (PVN) 值。當發生起始寫入操作時,PVN 就會遞增。起始寫入操作就是直接在某個特定 Active Directory 服務器上發生的寫入操作。

當在不同位置的具有相同的 PVN 的兩個或多個屬性值被更改時,接收更改的 Active Directory 服務器就會對每個更改的時間戳進行檢查,並使用最新的一個進行更新。此問題的最重要分枝是網絡中心時鐘的安裝和維護。

另一個復制問題就是循環。Active Directory 可使管理員配置多個路徑以達到冗余的目的。為了避免更改無止境地更新下去,Active Directory 在每個服務器上創建 USN 對的列表。這些列表被稱為最新矢量 (UDV)。它們保存每個起始寫入操作的最高 USN。每個 UDV 均列出在其所在的站點中的所有其他服務器。當發生復制時,請求服務器就把自己的 UDV 發送到發送服務器。每個起始寫入操作的最高 USN 都可用來確定是否仍需要復制更改。如果 USN 號碼相同或更高,則不需要進行更改,因為請求的服務器已經被更新了。

組的更改:

Active Directory 的邏輯規劃過程的另一個方面就是組的概念。在 Windows NT 4.0 中,管理員可以使用兩個基本的組類型,即本地和全局。考慮到這種結構固有的限制,Windows 2000 為網絡管理員提供了以下組,其功能更強大並且靈活性更高:

  • 作用域為本地的組(也稱為"本地組")

  • 作用域為域本地的組(也稱為"域本地組")

  • 作用域為全局的組(也稱為"全局組")

  • 作用域為通用的組(也稱為"通用組")

一個值得註意的重要修改是,全局組現在可以包含其它的全局組。雖然全局組仍用於收集用戶,但是它能夠將一個組放在另一個組之內,從而使管理員可以將它們放在目錄林的任何地方,使得維護非常方便。但是,全局組只能包括來自 Active Directory 目錄林中某個域的用戶和組。

因為很多網絡混用 Windows 2000 和 Windows NT 4.0 服務器,所以在創建組之前,必須確定網絡上域的數量和類型以及哪些域是混合模式,哪些域是本地模式:

  • 混合模式域。默認情況下,Windows 2000 操作系統以混合模式網絡配置進行安裝。混合模式域是網絡上的一組計算機,它們同時運行 Windows NT 4.0 和 Windows 2000 域控制器。(混合模式域也可以只運行 Windows 2000 域控制器。)

  • 本地模式域。當域只包含 Windows 2000 Server 域控制器時,可以將該域轉換成本地模式。

通用組(Windows 2000 的新增功能)可以包含目錄林中任何目錄樹中的所有其它組和用戶,並且可以與目錄林中任何訪問控制列表 (ACL) 一起使用。

可以組合使用全局組、域本地組和通用組,以控制對網絡資源的訪問。全局組的基本用途是把用戶組織到代表其相應域的管理容器之中。通用組可以用於包括來自各種域的全局組,進而在授予權限時進一步管理域層次結構。可以全局組添加到通用組中,然後給資源在物理上所在域本地組分配權限。使用這些方法創建組,管理員就可以在每個域的全局組中添加或刪除用戶,對整個企業資源的訪問進行控制,而無需在多個位置進行更改。


Windows Server 2016-Active Directory復制概念(一)