Partitions و Replication در اکتیودایرکتوری چیست؟
خرداد 13, 1403 1405-07-25 16:23Partitions و Replication در اکتیودایرکتوری چیست؟
Partitions و Replication در اکتیودایرکتوری چیست؟
میدانیم که کنترلرهای دامین با یکدیگر تبادل اطلاعات (Replicate) میکنند. برای آشنایی با چگونگی تبادل اطلاعات و اینکه چه دادههایی بین این کنترلرها جابهجا میشود، باید با مفهوم Active directory partitions شویم. یعنی باید بررسی کنیم که دیتابیس هر کنترلر دامین ( NTDS.dit ) که در درایو C ذخیره میشود شامل چه بخشهایی است. پارتیشنهای دایرکتوری با عنوان naming contexts نیز شناخته می شوند. یک دیتابیس اکتیودایرکتوری شامل بخش های مختلفی است که هر بخش برای موضوع خاصی طراحی شده است و مشخص میکند که چه بخشهایی از این دیتابیس با کدام یک از کنترلرها تبادل شوند. یک دیتابیس از چهار بخش زیر ایجاد شده است.
- Schema Partition
- Configuration Partition
- Domain Partition
- Application directory partitions
با نصب سرویس اکتیودایرکتوری سه پارتیشن اول به طور پیش فرض ساخته میشود و پارتیشن چهارم توسط مدیر شبکه براساس نیاز و شرایط ساخته میشود.
Schema Partition
پارتیشن Schema یکی از اساسی ترین بخشهای دیتابیس اکتیودایرکتوری میباشد.این پارتیشن انواع اشیاء (آبجکتی) را که میتوانند در جنگل وجود داشته باشند را تعریف می کند. هر آبجکتی که در اکتیودایرکتوری ساخته میشود از جمله حسابهای کاربری، حسابهای رایانهای، حسابهای گروهی، گروههای سازمانی، گروپ پالیسیها و … همچنین ویژگی و صفتهای هر آبجکت در این پارتیشن قابل تعریف است. بنابراین Schema دیتابیسی است که در آن مشخص شده است که چه آبجکتهایی میتواند به صورت پیشرض وجود داشته باشد یا توسط مدیرشبکه یا در پس زمینه اکتیودایرکتوری ساخته شود. و همچنین مشخص شده هر یک از این آبجکتها چه صفتهایی داشته باشند. مثلا صفتهای یک حساب کاربری شامل موارد زیر است: حساب کاربری میتواند در چه گروههایی عضو شود، چه دسترسیهایی (Permission) به آن داده شود، همچنین خصوصیاتی که در سربرگهای یک حساب کاربری در بخش properties آن وجود دارد، مانند زمانی که مجاز است به سیستمها وارد شود یا اینکه از چه سیستمهایی استفاده کند و اطلاعات رمز آن و … همگی ویژگیهایی هستند که یک حساب کاربری را توصیف میکند. یا صفتهای یک حسابگروهی شامل نوع و حوزه آن گروه است. تمامی این صفتها در Schema تعریف میشود.
یادگیری Partitions و Replication در اکتیودایرکتوری – دوره mcsa
برای تغییر یا افزایش این صفتها باید Schema را ویرایش کنید. از آنجایی که Schema معمولا تمام ویژگیهایی که ما نیاز داریم را در خود تعریف کرده است به ندرت ویرایش میشود.اما مثلا فرض کنید میخواهید برای حسابهای کاربری در قسمت properties یک سربرگ جدید به منظور اضافه کردن شماره کارمندی کاربران اضافه کنید. برای این منظور باید در Schema تغییراتی را اضافه کنید. معمولا این تغییرات یک طرفه بوده و به سختی میتوان بعد از اعمال آن تغییر، به حالت قبل بازگشت. بنابراین در اعمال تغییر بر روی Schema دقت داشته باشید و بدون دانش کافی تغییری در آن اعمال نکنید. دقت داشته باشید که فقط کنترلر ریشه جنگل قادر به ایجاد تغییر در Schema است. این پارتیشن در سطح جنگل (Forest-level) است یعنی باید با تمام کنترلرهای جنگل (Forest) تبادل اطلاعات کند.
به علت حساس بودن Schema کنسول پیشفرضی برای مدیریت آن وجود ندارد. از این رو برای مدیریت این کنسول مراحل زیر را انجام دهید:
ابتدا وارد محیط command prompt شوید. طبق شکل در پنجره cmd عبارت زیر راتایپ کنید تا dll مربوط به مدیریت Schema رجیستر شود. و سپس بر روی OK کلیک کنید.
regsvr32 schmmgmt.dll
سپس در پنجره Run عبارت mmc را تایپ و OK کنید تا پنجره Consoleباز شود.
از سربرگ file قسمت Add/Remove snap-in را انتخاب کنید.
در لیست زیر میتوانید گزینه Schema Active directory رامشاهده کنید. قبل از رجیستر کردن Schema Management.dll این کنسول در این لیست قابل مشاهده و دسترسی نخواهد بود. با انتخاب Active directory Schema و زدن گزینه Addآن را به snap-in های انتخاب شده اضافه کنید.
با باز کردن کشو مربوط به کنسول Active Directory Schema میتوانید دو بخش classes و Attributes را مشاهده کنید.
بخش classes مشخص کننده ابجکتهایی است که میتوان در اکتیودایرکتوری ساخت. مثل account، computer و…
بخش Attributes مشخص کننده صفتهای هر آبجکت است. مثل account Expires و …
Configuration Partition
این پارتیشن هم در سطح جنگل (Forest-level) است یعنی باید با تمام کنترلرهای جنگل (Forest) اطلاعاتش را تبادل کند. به جزاطلاعاتی که در پارتیشن Schema تبادل میشد، اطلاعات دیگری نیز در اکتیودایرکتوری وجود دارد که در این پارتیشن ذخیره میشود و نیاز است تا تمامی کنترلرهای جنگل از آن مطلع شوند. مانند اینکه یک حساب کاربری عضو چه گروههایی است، باید با سایر کنترلرها تبادل شود، تا در صورتی که این کاربر به هر سیستمی از هر جای جنگل ورود پیدا کند مشخص شود این کاربر عضو چه گروه هایی میباشد. مثلا اعضای گروه Universal باید در کل جنگل تبادل شود که اطلاعات این گروه هاتوسط این پارتیشن به سایر کنترلرها منتقل میشود.
Domain Partition
این پارتیشن در سطح دامین (Domain-Wide) است یعنی باید با کنترلرهای همان دامین اطلاعاتش را تبادل کند. تغییراتی که در سطح دامین ایجاد میشود در این پارتیشن ذخیره میشود و ایجاد تغییرات در اطلاعات این پارتیشن زیاد است. مثلا اطلاعات شامل ایجاد هر حساب کاربری یا رایانه ای جدید، ایجاد یک گروپ پالیسی جدید، تغییر رمز یک کاربر و … در این پارتیشن نگهداری میشود.
Application directory partitions
اطلاعات مربوط به DNS های موجود دراکتیودایرکتوری در این پارتیشن ذخیره میشود. و اطلاعاتش را فقط با کنترلرهایی که مدیر شبکه درلیست موجود در این پارتیشن قرار داده است Replicate میکند.
ویژگی های Replication:
عمل Replicate کپیهای مختلف از اطلاعات دیتابیس ها را در طول ساختار جنگل سنکرون میکند و دارای ویژگیهای زیر است:
Multimaster:
دیتابیس تمام کنترلرهای دامین قابل نوشتن (writable) هستند. یعنی هر کنترلر در هر شبکه فرزند یا ..میتواند پارتیشنهای دیتابیس خود را ویرایش کند.
Pull-based:
هر کنترلر دامین داده های مورد نیاز از دیتابیس سرور مقابل خود را میگیرد (pull) نه اینکه هر کنترلر داده هایش را به سایر کنترلر ها بدهد(push) .
Fine-grained:
برای جلوگیری از ایجاد تداخل بین تبادل دادهها، تنها تغییرات آبجکتها بین کنترلرها تبادل میشود. مثلا فرض کنید در دو کنترلر مجزا روی یک آبجکت یکسان مثلا یک گروه خاص تغییراتی ایجاد شود مثلا در هر دو کنترلر از دومکان در جنگل کاربران جدیدی به این گروه اضافه شود. مثلا کاربر 1 در کنترلر 1 به گروه a اضافه شده و کاربر 2 در کنترلر 2 به گروه a اضافه شده. حال در فرایند Replicate کنترلر 3 میخواهد دادههای جدید را از کنترلر 1 و 2 بگیرد، اگر اول کنترلر 1 گروه a با اعضای جدید را به کنترلر 3 بدهد و سپس کنترلر 2 این گروه را تحویل کنترلر3 بدهد نتیجه این خواهد شد که، در کنترلر 3 کاربر 1 موجود نیست، چون اخرین چیزی که کنترلر 3 دریافت کرده گروه a از طرف کنترلر 2 بوده و کاربر 1 در آنجا موجود نبوده.اما اگر کنترلر 3 فقط تغییرات گروه را دریافت کند متوجه میشود که دو کاربر 1و 2 به گروه a اضافه شده است. بنابراین نباید اصل آبجکت تبادل شود بلکه تغییرات آن باید تبادل شود تا در صورت تغییر یک آبجکت یکسان در دو کنترلر مجزا به صورت همزمان باعث تداخل نشود.
Site-aware:
تبادل اطلاعات بر مبنای سایت است. با ایجاد سایتها و تبادل اطلاعات بین این سایتها میتوان مکانیزم مدیریت تبادل را بهبود بخشید.
Automatically generated topology:
عمل Replicate به صورت خودکار توسط اکتیودایرکتوری بین کنترلرها انجام میشود و نیازی به مدیریت مدیر شبکه ندارد.
برخی از دستوراتی که میتواند وضعیت Replicate را برای شما نشان دهد، به شرح زیر است:
در سرور کنترلر دامین در پنجره cmd دستورات زیر را وارد کنید:
- برای مشاهده وضعیت Replicate با سایر کنترلرهای پارتنر از دستور زیر استفاده کنید.
repadmin /showrepl
- برای مشاهده تاریخ، مدت زمان و خطاهای Replicate بین کنترلر شما و سایر کنترلرها از دستور زیر استفاده کنید.
repadmin /replsummary
- برای ایجاد Replicate اجباری بین دو کنترلر از دستور زیر استفاده کنید.
repadmin /replicate Destination DC Source DC









