x
تبلیغات

 

Desired State Configuration و یا به اختصار DSC قابلیتی است که برای اولین بار به عنوان یک افزونه در Windows PowerShell ارائه شده در Windows Server 2012 R2 و Windows 8.1، معرفی شده است. به عبارت دیگر، می توان DSC را به عنوان یک افزونه برای PowerShell 4.0 در نظر گرفت.

 

به طور کلی می توان DSC را به عنوان روشی جهت کاهش فعالیت های تکرار پذیر، با استفاده از تعریف تنظیمات از قبل مشخص شده (از جمله قسمت های اصلی تنظیمات، مشخص کردن رایانه ایست که می خواهید فعالیتی را که مد نظر دارید، بر روی آن به اجرا در آورید. به منظور مشخص نمودن این قسمت، می بایست از عبارت Node در هنگام تعریف تنظیمات استفاده کنید. همچنین از دیگر قسمت های اصلی می توان به قسمت Resources نام برد. در این قسمت شما به مشخص کردن پارامترهای مورد نظر خود جهت اجرا در یک رایانه، اقدام می کنید.) با استفاده از کامندلت های ارائه شده از سوی PowerShell 4.0 دانست. این تنظیمات از قبل مشخص شده در فایلی با با پسوند MOF ذخیره می گردند و می توان از آنها به عنوان نقطه آغازین پیکربندی (baseline) جهت مقایسه تنظیمات فعلی با آنچه که در baseline در نظر گرفته شده است، در نظر گرفت. همچنین از این فایل جهت انجام عملیات پیکربندی سیستم عامل مقصد استفاده کرد. از قابلیت DSC می توان در شرایط زیر استفاده کرد:

 

• فرض کنید که می خواهید تنظیمات صورت گرفته بر روی سیستم عامل را با آنچه که بر اساس DSC به عنوان baseline در نظر گرفته شده است، مقایسه کنید.

• فرض کنید که می خواهید اقدام به نصب یک نقش (role) و یا یک قابلیت (feature) بر روی یک سرور، بر اساس تنظیمات خاصی، بنمایید.

• فرض کنید که می خواهید اقدام به بررسی و یا اعمال تغییر در رجیستری یک سرور نموده و یا همین کار را بر روی متغیرهای محیطی (Environment Variables)، پردازش های در حال اجرا (Processes) و سرویس های موجود نمایید.

• فرض کنید که می خواهید اقدام به مدیریت کاربران و یا گروه های لوکال موجود در یک سرور را نموده و از پیکربندی آنها در مقایسه با آنچه که در DSC در نظر گرفته اید، اطمینان حاصل کنید. در ادامه به یک سناریوی عملی در این خصوص خواهیم پرداخت.

نکته: توجه داشته باشید که به منظور استفاده از DSC، شما می بایست درک بسیار بالایی از عملکرد Windows PowerShell داشته باشید.

 

جهت درک بهتر این قابلیت، به سناریوی زیر توجه کنید:

 

فرض کنید که می خواهیم از عضویت کاربر User1 در Group1 در سروری با نام SCVMM اطمینان حاصل کنیم. بدین منظور کافیست عبارات زیر را ابتدا در Notepad تایپ کرده و سپس آنها را در PowerShell ISE به اجرا در آورید:

 

1

 

2

 

همانطور که در شکل فوق مشاهده می نمایید، خروجی اجرای دستورارت فوق، در قالب یک فایل با پسوند MOF در مسیر نمایش داده شده، ایجاد می گردد. به شکل زیر نگاه کنید:

 

3

حال که تنظیمات مورد اعمال را ایجاد نموده ایم، می توانید با اجرای دستور زیر، آن را به اجرا در آورید:

 

4

 

با استفاده از سوئیچ wait باعث می شود تا اتمام عملیات اجرای فرامین، prompt مرتبط با PowerShell جهت دریافت فرامین جدید، در اختیار قرار نگیرد. همچنین با استفاده از سوئیچ verbose، عملیات اجرای فرآمین به صورت جزء به جزء به نمایش گذاشته می شود.

 

نتیجه انجام عملیات فوق را در شکل زیر مشاهده می کنید:

 

5

 

نکته: اگر چنانچه می خواهید شرایط را قبل از اجرای عملیات، مورد بررسی قرار دهید، می توانید از کامندلت Test-DscConfiguration استفاده کنید. بدین ترتیب، در صورت سازگار بودن شرایط سیستم مورد نظر با تنظیمات مورد نظر تعریف شده در فایل MOF، همخوانی داشته باشد، رخداد زیر بوقوع خواهد پیوست:

 

6

 

این در حالیست که اگر چنانچه شرایط با آنچه در فایل MOF بدان اشاره شده است، همخوانی نداشته باشد، با رخداد زیر مواجه خواهید شد:

 

7

 

در شبکه های بزرگ، شاهده اختصاص سروری جهت نگهداری از زیر ساخت مرتبط با DSC هستیم. این زیر ساخت با نصب قابلیت آغاز شده (به شکل زیر نگاه کنید) و منجر به اعمال تنظیمات بر روی نودهای مورد نظر، بر اساس دو رویکرد می گردد.

 

8

 

نکته: همانطور که در شکل زیر مشاهده می کنید، انتخاب گزینه نمایش داده شده در شکل فوق، منجر به نصب سرویس IIS نیز می گردد. به شکل زیر نگاه کنید:

 

9

 

رویکرد اول که Pull نامیده می شود (این رویکرد نسبت به رویکرد دیگر، بیشتر مورد استفاده قرار می گیرد و از آن در سازمان های بزرگ استفاده می کنند)، نیاز به ایجاد سروری با نام Pull Server داشته که این سرور به عنوان نقطه مرکزی جهت ذخیره سازی فایل های MOF در نظر گرفته می شود. در این حالت، سیستم هایی (به این سیستم ها Node گفته می شود) که می بایست تحت کنترل قابلیت DSC قرار گیرند؛ در هنگام بالا آمدن اقدام به دریافت و اعمال تنظیمات از Pull Server می نمایند.

 

رویکرد دوم که Push نامیده می شود (کاربرد این رویکرد بیشتر در سازمان های کوچک می باشد)، سرور در نظر گرفته شده جهت ذخیره سازی منابع مورد نیاز قابلیت DSC، اقدام به push نمودن تنظیمات بر روی nodeهای تحت کنترل خود می نماید. از معایب این رویکرد می توان به عدم گارانتی نمودن دریافت تنظیمات از سوی Nodeهای تحت کنترل، اشاره کرد.