معمولا در محیطهای که بیش از چند Domain Controller وجود دارد برای بالا بردن Availability و دسترسی به اطلاعات بین چند DC از Replication یا همگان سازی استفاده می شود. در این مقاله قصد ندارم درباره کل پروسه Replication توضیح بدم و اینکه چگونه این پروسه بین DC ها ایجاد و جریان پیدا می کند. فقط نکات مهم این پرسه را برسی میکنیم.یک سوال مهم چرا ما به Replication نیاز داریم؟در ساختار Directory Service یکسری اطلاعات مجزا مربوطه به قسمتهای مختلف Directory Service در کانتینریهای به نام Partition نگهداری می شوند. در یک Forest چندین پارتیشن داریم که بعضی از آنها در محدوده کل فارست باید اعمال شود و بعضی ها در محدود Domain. و اما پارتیشن ها:
*Domain directory partition*: Also known as the domain naming context (NC), contains domain-specific objects such as computer, user, and group accounts. *Configuration directory partition*: Contains forest-wide data that controls site and replication operations. *Schema directory partition*: Contains schema definitions for the forest. *Application directory partitions*: Contain data that is particular to specific applications. Application directory partition replicas can be replicated to any set of domain controllers in a forest, irrespective of domain.
بعضی از اطلاعات باید در کل Forest یکسان باشد و بعضی از آنها در یک دومین. همه Domain Controller ها در هر نقطه ای که باشند باید به این اطلاعات دسترسی داشته باشند. و این اطلاعات بوسیله Replication بین DC ها Sync می شوند. علاوه بر پارتیشن های بالا یکسری ابجکیت، سرویس ها و Role ها داریم که نیازمند Replication هستند مانند:
* Universal groups * PDC emulator * Global Catalog etc.
DCها میتواند در یک Site یا چندین سایت در چندین نقطه جغرافیائی با همدیگر فعالیت کنند. شاید برای شما مهم باشه که در ساختار Directory Service سایت را چگونه تعریف می کنند؟
سایت در ساختارDirectory Service یک محدود جغرافیائی جدا می باشد که دارای Subnet یا Subnet های جداگانه ای هستش که با لینکهای پر سرعت به هم دیگر وصل می باشند. ممکن است شما در یک سایت چندین Domain داشته باشید یا یک Domain در چندین سایت باشد. که در این صورت مدیریت و بهینه سازی Replication دومین کنترول ها بین سایتهای مختلف مهمترین نقش طراح یا ادمین شبکه می باشد.
اینگونه Replication درون یک سایت و بین Domain Controller های آن سایت اتفاق می افتد. وقتی تعقیری بر روی یکی از DC ها ایجاد شود DC ها بوسیلهChange Notifications به بقیه اعلام می کنند که ها ولک بیا ببین چی داروم اونا هم میان و خودشون رو بر روز می کنند.
درون یک سایت ارتباطات ساختار بوسیله پروسه KCC یا Knowledge Consistency Checker بصورت اتوماتیک ایجاد می شود و KCC کانال ارتباطی یک DC با DC دیگر را بوسیله شیء به نام Connection object ایجاد می کند. Connection object ها همیشه بصورت Incoming Connection هستند.
DC های بویسله پارامترهای زیر Replication را مدیریت می کنند:
* Update Sequence Numbers * High-watermark values * UP-TO-Dateness vectors * Change Stamps * Polling
برای کسانی که می خواهند لیاقت لغب Microsoft Ensnaring را داشته باشند باید با ریزترین اشیاء در این ساختار اشنا باشند.
این نوع Replication بین سایتهای Directory Service اتفاق می افتد. این Replication بر خلاف Intrasite بر اساس Schedule یا زمان بندی اجرا خواهد شد. مثلا اگر تعقیری در DC یکی از سایتها ایجاد شود بر اساس زمان بندی که انجام دادیم Replication برای Bridgehead Server ها ارسال خواهد شد. علاوه بر خاصیت Schedule ما گذینه دیگری به نام Replication Period داریم که تعداد تکرار Replication بر اساس زمانی که تعیین کردیم را مشخص می کند. که بصورت پیش فرض ,Replication Period 180 دقیقه معادل 3 ساعت می باشد.هنگام replication بین سایتها پروسه KCC بصورت اتوماتیک در هر یک از سایتها یک نماینده انتخاب می کند. که وظیفه این نماینده دریافت Replication ار بقیه سایتها می باشد و انتشار آن بین DCهای سایت می باشد. همه این نماینده را با نام Bridgehead Server می شناسن.
گفتیم که Bridgehead ها توسط KCC انتخاب می شوند. در شرایطی ما می توانیم این نقش را به سروری دیگری واگذار کنیم. برای اینکار لینک زیر را مطالعه کنید:
Designate a Server as a Preferred Bridgehead Server https://technet.microsoft.com/en-us/library/cc794778(v=ws.10).aspx
بحث جایگزین شدن DC دان شده بین سایتها بحث خییییلی مهمی می باشد که خارج از بحث این مقاله می باشد. حتما لینکهای که در آخر مقاله ضیمیه می کنم را بخوایند. بحث دیگری که در Inter-Site وجود دارد بحث Replication Latency می باشد. Replication Latency مدت زمانی می باشد که "یک تعقیر بر روی دیگر DC ریپلیکت شود" اشاره دارد. مشخص کردن Replication Latency درون یک سایت خیلی سادس که در حالت نورمال کمتر از2 دقیقه می باشد.
(بستگی به Node ها و سرعت ارتباط آن سایت دارد) ولی محاسبه این زمان بین سایتها کمی دشوار هستش در ابتدا باید مدت زمان رسیدن تعقیرات از DC مبدا به Bridgehead Server محاسبه شود و مدت زمانی که این Replication به دست Bridgehead Server مقابل برسد و همچنین فاکتورهای مانند Schedule و Replication Period در این محاسبه دخیل هستند. که بصورت پیش فرض وقتی یک تعقیر در یک سایت ایجاد شود در مدت زمان 3 ساعت 4 دقیقه این تعقیرات بر روی دیگر DC ها سایت مقابل اعمال می شود. (شما دستون بازه می تونید این تنظیمات را تعقیر دهید). شکل زیر را نکاه کنید:
فرض کنید Schedule را بصورت تمام وقت تنظیم کردیم و Replication Period را بر روی 15 دقیقه ست کردیم. پس زمان دقیق convergence شدن اطلاعات بصورت زیر محاسبه می شود:
A to B = 15 min + B to C = 30 min + C to D = 45 min
علاوه بر محاسبه Replication Period ما تاخیر 15 ثانیه ای هم داریم که در کل تقریبا 105 ثانیه می باشد.
در برخی از موارد یکسری تنظیمات داریم که با چنین مدت زمانی 45 دقیقه ای واقعا دردسر سازه مثلا یکی از کاربران انکانتش Lock شود. این بدبخت 45 دقیقه معطل شود!!! درضمن بعضی از تنظیمات امنیتی باید در کمترین زمان ممکن به دست دیگر DC برسد. این تنظیمات:
* Account Lockout Policy * Domain Password Policy * RID Master Moving * Local Security Authority
برای حل این مشکل ما از Urgent Replication استفاده می کنیم. این نوع Replication همه تنظیمات Schedule and Replication Period را نادیده می گیرند. و تنظیمات بالا را به دست بقیه می رساند. خانمها یک نمونه بارز از این نوع replication هستند. :////
Understanding Urgent Replication https://blogs.technet.microsoft.com/kenstcyr/2008/07/05/understanding-urgent-replication/
همچنین یک قابلیتی وجود داره به نام inter-site change notifications که اگر تعقیری در یکی از DC ایجاد شد این تعقیر کمتر از 3 دقیقه می تواند به DC های دیگر سایتها اعمال شود. در مورد آن تحقیق کنید.
بصورت فیزیکی هر یک از سایتها را بوسیله اتصالات Broadband به هم دیگر متصل می کنند. Site Link مسیر ارتباطی یک سایت با سایت دیگر را مشخص می کند و همچنین مسیر Replication را هم تعیین می کند (Replication Path). در کنسول AD Site and Service سایت لینکها را بر اساس دو پروتکل انتقال:
* IP or DS-RPC * SMTP or ISM-SMTP
تنظیم می کنند. که اولویت با IP می باشد. SMTP در مواقعی استفاده می شود که لینک ارتباطی ما با شعبه دیگر Stable یا غیر قابل اعتماد باشد. همچنین SMTP نیاز به ساختار PKI دارد. وهمچنین نمی توان برای یک دومین از این پروتکل انتقال استفاده کرد. هر کدام از این لینکها دارای خاصیتی به نام Cost هستند. وظیفه Cost تعیین مسیر Replication بین سایتها می باشد و در خیلی از موارد مورد استفاده قرار می گیرد.
زمانی که شما یک forest ایجاد می کنید یک site link به نام DEFAULTIPSITELINK بصورت پیش فرض ایجاد می شود. اگر شما چندین سایت داشته باشید و Site Linkی ایجاد نکنید KCC فرض می کند همه ی این سایتها با این Site Link وصل هستند و در صورت عدم ایجاد Site Link عملیات replication با مشکل مواجه می شود. یکی از مشخصات مهم Site Link ها transitive بودن آنها می باشد. یعنی اگر ما سایت A, B and C داشته باشیم و سایت A و B را بوسیله Site Link متصل کرده باشیم و همچنین B به C سایتها A و C بدون نیاز به داشتن Site Link می توانند با هم دیگه Replicate کنند.
یکی از مهترین پارمتر در تنظیمات AD Site and Service می باشد. Site Link Bridges مجموعه ای از Site Linkها می باشد که همه سایتها را به هم وصل میکند حتی سایتهای که بهم دیگر لینک نباشند!!! تصویر زیر را ببینید:
در تصویر بالا ما سه سایت داریم که بصورت Hup and Spoke می باشند. همه سایتها به شعبه اصلی وصل هستند و سایتهای Milan and Atlanta هیچگونه Site Linkی ندارند ولی چون Site Link Bridge بر روی این دو Site Link فعال می باشد این دو سایت می توانند با هم دیگه اطلاعات خود را replicate کنند. قابلیتی که باعث میشه Site link bridge این هنرنمائی را انجام دهد خاصیت transitive بودن Site Link Bridge ها می باشد.
And even if you have 20 sites all fully routed EXCEPT for one of them, then the same thing goes. You must disable it all because of that one site,
یک نمونه از یک ساختار Full Route :
یک نمونه از یک ساختار Not Full Route :
در تصویر بالا برای اینکه شعبه ها بتوانند با هم دیگر replicate کنند باید Bridge Site Link را غیر فعال و یک Bridge Site Link دستی ایجاد کنید. ایجاد یک Bridge Site Link مانند ایجاد یک Route بر روی یک Router می باشد. به عکس بالا نگاه کنید چهار سایت وجود دارد که بصورت Hup and Spock می باشد به نظر شما Bridge Site Link را چگونه ایجاد کنیم که همه بتوانند با هم دیگر replicate کنند؟؟؟؟ در بالا سه عدد site link وجود دارد:
# NYC-TO-SEATTEL # NYC-TO-CHICAGO # NYC-TO-MIAMI
اگر به Site Link ها نگاه کنید یکی از سایتها در همه Site Link ها مشترکه و آن هم سایت NYC می باشد. پس NYC مثل یک روتر عمل می کند و replicate سایتها را بین آنها منتقل می کند.
این یک قانونه که وقتی شما یک یا چند Bridge site link ایجاد می کنید با یکی از سایتها در کل Site Link ها وجود داشته باشد.
Each site link in a bridge must have at least one site in common with another site link in the bridge.
خب الان چند سناریو میگیم و با هم تجزیه و تحلیل می کنیم. سناریوی اول:
خوب به این سه سایت توجه کنید:
الان تنظیمات Site Link ها را چگونه انجام دهیم که سه شعبه بتوانند با هم دیگه replicate کنند؟؟؟
تنها کاری که باید انجام دهیم غیر فعال کردن Bridge all site links هستش. همین و بس...
چون ساختار full route نیست ما Bridge site link را غیر فعال می کنیم. چرا یک Bridge site link نساختیم؟؟؟؟ چون هر سه سایت یک دیتای مشترک را نگهداری می کنند (یک دومین می باشد) در مثال بالا فرض کنید سایت NYC تعقیراتی ایجاد کرد، این تعقیرات در زمان معین با Bridgehead Server سایت SEA ریپلیکت می شود و در مرحله آخر سایت DFW از تعقیرات با خبر می شود و خود را با SEA سینک می کند.
سناریوی دوم:
چی می بینید؟؟؟؟
الان تنظیمات Site Link ها را چگونه انجام دهیم که سه شعبه بتوانند با هم دیگه replicate کنند؟؟؟ این سایتها با دور روش می توانند با هم دیگر Replicate کنند:
بنظر شما چرا علاوه بر غیر فعال کردن Bridge site link باید یک Bridge site link دستی ایجاد کنیم؟؟؟ بخاطر اینکه دومین سایت SEA با بقیه فرق می کند و این دوسایت اطلاعات مختلفی را نگهداری می کنند پس بخاطر همین دلیل غیر فعال کردن Bridge site link نمی تواند موثر باشد. در نتیجه ما مجبوریم یک Bridge site link دستی ایجاد کنیم. در سناریوی بالا ایجاد Bridge Site Link بصورت دستی برای سایت NYC یک Route به سمت DFW از طریق سایت SEA ایجاد می کند که پروسه KCC بتواند طبق این مسیر Connection Object خود را ایجاد و اطلاعات خود را با سایت DFW بروز رسانی کند.
منابع:
Managing Replication Between Sites
https://technet.microsoft.com/en-us/library/cc961783.aspx
AD Site Design and Auto Site Link Bridging, or Bridge All Site Links (BASL)
http://blogs.msmvps.com/acefekay/2013/02/24/ad-site-design-and-auto-site-link-bridging-or-bridge-all-site-links-basl/
How Active Directory Replication Topology Works
https://technet.microsoft.com/en-us/library/cc755994(v=ws.10).aspx
اخرین مقاله یکی از بهترین مقالاتی هستش که درباره Replication تا حالا خواندم.
زمان پاسخ گویی روز های شنبه الی چهارشنبه ساعت 9 الی 18
فقط به موضوعات مربوط به محصولات آموزشی و فروش پاسخ داده می شود