آشنایی با System Center Orchestrator

مدیران IT عملیات زیادی را جهت نگه داری و به روز کردن زیر ساخت های IT سازمان ها انجام می دهند و بسیاری از این عملیات تکراری، قسمت قابل توجهی از منابع انسانی سازمان در دپارتمان IT را به خود تخصیص می دهد. عملیاتی همچون ایجاد اکانت جدید و تخصیص منابع و سطوح دسترسی لازم به آن برای پرسنل جدید سازمان و یا حل مشکلات روتین همانند فراموشی کلمه های عبور قسمت قابل توجهی از عملکرد های روزانه دپارتمان IT است؛ این در حالی است که در بسیاری از سناریو ها امکان خودکار سازی فرایند های نگه داری زیرساخت ها وجود دارد. استفاده از Orchestrator امکانات اصلی زیر را برای سازمان ها به همراه می آورد:

۱٫ خودکار سازی فرایند ها در دیتا سنتر، بدون توجه به پلتفرم سخت افزاری

۲٫ خودکار سازی و استاندارد سازی عملیات دپارتمان IT

۳٫ اتصال و یکپارچگی بین پلتفرم ها

Orchestrator دارای مولفه های زیر می باشد:

مولفه توضیح
management server لایه ارتباطی میان Runbook Designer و پایگاه داده
runbook server سروری که روی آن یک instance از runbook در حال اجرا است. Runbook Server ها به صورت مستقیم با پایگاه داده در ارتباط اند. به جهت افزایش ظرفیت و افزودنگی، امکان ایجاد چند runbook Server در یک محیط Orchestrator وجود دارد.
orchestration database یک پایگاه داده SQL که شامل تمام Runbook های ایجاد شده، وضعیت آن ها، Log ها و اطلاعات تنظیمات Orchestration است.
Runbook Designer ابزاری جهت ایجاد، ویرایش و مدیریت runbook ها است.
Runbook Tester یک ابزار run-time جهت آزمایش runbook های تولید شده با Runbook Designer.
Orchestration console کنسول مدیریتی Orchestrator که اقدامات مدیریتی متداول همانند start و stop کردن runbook ها و مشاهده وضیعت به صورت real-time.
Orchestrator web service وب سرویس Orchestrator که یک سرویس بر اساس Representational State Transfer (REST) است و نرم افزار های سفارشی شده را قادر می کند تا بتوانند به Orchestrator جهت اجرای runbook ها متصل گردند. همچنین کنسول برای اتصال با سرویس orchestrator از آن بهره می گیرد.
Deployment Manager از این ابزار جهت توزیع Integration Pack ها، Runbook server ها استفاده می گردد.

تصویر زیر، به صورت شماتیک هر یک از مولفه های فوق و چگونگی ارتباط آن ها با یکدیگر را نمایش می دهد. Management Server به عنوان لایه ارتباطی میان Runbook Designer و پایگاه داده الزامی است. Web service همچنین به پایگاه داده مستقیما متصل بوده و واسط اطلاعاتی console است.

 

image

Extensions

Orchestrator دارای یک ساختار Extensible (قابل بسط) است. با استفاده از Orchestrator Integration Toolkit امکان توسعه یکپارچگی Orchestrator با هر سیستمی وجود دارد. از سوی دیگر، Orchestrator از یک web service بر پایه Representational State Transfer (REST) استفاده می کند که فرایند هایی همانند start و stop یک runbook job و دریافت اطلاعات گزارشات در فرمت Open Data protocol (OData) را دارد. Web Service مذکور امکان توسعه نرم افزار هایی که از داده های orchestrator به صورت live استفاده می کنند را ایجاد می کند. جدول زیر، استراتژی های مختلف که جهت توسعه کارایی orchestrator ممکن است را توضیح می دهد.

ویژگی توضیحات
integration pack  – IP یک پک یکپارچه سازی شامل فعالیت های سفارشی شده است که مختص یک محصول یا تکنولوژی معین است. مایکروسافت و شرکت های دیگر، IP های خود را برای تعامل محصول خود با Runbook ها را فراهم می آورند.
Orchestrator Integration Toolkit امکان گسترش کتابخانه فعالیت ها فراتر از فعالیت های استاندارد و پک های یکپارچه سازی را فراهم می آورد. این ابزار wizard-based سبب می گردد تا ساخت فعالیت ها و یکپارچه سازی orchestration با سایر راهکار ها به ساده ترین روش ممکن صورت پذیرد. برنامه نویسان همچنین برای ساخت integration pack از روی فعالیت هایی که با استفاده از Orchestrator SDK توسعه داده اند می توانند استفاده کنند.

Runbook

Orchestrator به همراه سایر ابزار های مرتبط در راهکار System Center ابزاری را جهت ساخت، آزمایش، رفع مشکل، توزیع و مدیریت در شبکه سازمان ها را فراهم می اورد. این فرایند های خودکار شده، runbook گفته می شود که می توانند به صورت مستقل عمل کنند و یا runbook های دیگری را آغاز کنند. فعالیت های استاندارد در هر راه اندازی Orchestrator تعداد قابل توجهی کنترل مانیتور، وظیفه و runbook را ایجاد می کند که می تواند با رنج وسیعی از فرایند های سیستمی یکپارچه گردند. هر فعالیت در runbook داده هایی را منتشر می کند که برای سایر فعالیت هایی بعدی در آن runbook قابل دسترسی است. از این اطلاعات منتشر شده (Published Data) برای قابلیت های پویا و تصمیم گیرنده می توان استفاده کرد. به عنوان مثال ایجاد ایمیل، هشدار، log file و اکانت.

image

امروزه، تعداد کثیری از سازمان ها از Orchestrator جهت بهبود کارایی و کاهش هزینه های جاری و همچنین پشتیبانی از اهداف بین دپارتمانی خود بهره می گیرند. با استفاده از Orchestrator سازمان ها قادر خواهند بود تا عملیات کلیدی دپارتمان IT خود را خودکار کرده و آن ها را با دقت ارزیابی کنند.

جهت خودکار سازی یک وظیفه یا فرایند در orchestrator از runbook استفاده می گردد. برای ساخت یک runbook از ابزار Runbook Designer جهت ساخت runbook ها استفاده می گردد. یک runbook شامل activity هایی است که به یک دیگر link شده اند تا یک Workflow را شکل دهند. تصویر زیر یک runbook ساده نمایش می دهد.

image

این runbook، Event log را مانتیور می کند و در صورت تشخیص یک رویداد معین، runbook وضعیت یک process را چک می کند. اگر آن پروسه در حال اجرا باشد، end process می شود و سپس یک برنامه (پروسه) را اجرا کرده و یک ایمیل جهت notification ارسال می کند.

اجرای Runbook ها

هر activity در یک Runbook لازم است پیش از شروع activity بعدی به پایان رسد. همچنین ممکن است پیش از شروع یک activity چندین Activity لازم باشد اجرا گردد. با استفاده از این ابزار، سناریو های مختلفی که نیاز به خودکار سازی دارند قابل تعریف اند.

یک درخواست برای اجرای یک runbook یک job که روی Database ذخیره می شود را ایجاد می کند. هر runbook می تواند یک سرور را به عنوان primary server و یک یا بیشتر سرور دیگر را به عنوان سرور های stand-by به خود اختصاص دهد. یک سرویس روی runbook server به صورت پیوسته پایگاه داده را برای وجود job ها مانتیور می کند و زمانی که یک job را تشخیص دهد، به صورت کامل runbook را روی خود کپی می کند و log می کند که یک instance از runbook را اجرا می کند و پردازش runbook را آغاز می کند. هر runbook که شامل مانیتور نباشد، امکان ایجاد چند درخواست runbook وجود دارد به این معنی که یک runbook می تواند شامل چند job باشد.

زمانی که یک runbook server یک job را پردازش می کند، یک instance از runbook را با کپی کردن کامل runbook به صورت local ایجاد می کند و بر اساس workflow تعریف شده در runbook، کپی شده، action های مختلف را اجرا می کند. اطلاعات Status، نتیجه ی activity ها و… در پایگاه داده ذخیره می شوند تا امکان مانیتور کردن به صورت Real-time و historical به وجود آید.

دسترسی ها

برای دسترسی به orchestrator لازم است کاربران مطلوب به عضویت گروه پیش ساخته ای که در زمان نصب سرویس ایجاد می گردد افزوده شوند. مدیریت دسترسی کاربران و سرویس اکانت ها در تامین امنیت System Center Orchestrator اهمیت بسیار بالایی دارد.