ابر و اتوماسیون دست به دست هم می دهند. از Azure Automation و runbooks برای استقرار و مدیریت خدمات زیرساخت و پلت فرم Azure استفاده کنید.
یکی از مزایای بزرگ استفاده از ابر عمومی، توانایی استقرار برنامهها و خدمات در مقیاس است. اما مقیاس یک طرف دیگر دارد، زیرا کار با ده ها یا صدها سرور محدودیت های جدیدی را بر مدیریت سیستم ها تحمیل می کند. جایی که میتوانیم یک یا دو دستگاه را با استفاده از یک CLI یا یک رابط کاربری گرافیکی، یا ۱۰ یا ۲۰ دستگاه را با استفاده از اسکریپتهای خود مدیریت کنیم، مدیریت ناوگان عظیمی از دستگاهها نیازمند رویکرد بسیار متفاوتی است. ما به زیرساخت به عنوان کد و اتوماسیون نیاز داریم.
این رویکرد مبنایی برای مجموعه Azure Automation مایکروسافت است. ابزارهایی برای مدیریت زیرساخت های مجازی با استفاده از ترکیبی از استقرارهای اعلامی و پیکربندی حالت مطلوب مبتنی بر PowerShell (DSC). Azure Automation فناوریهای آشنا مانند Azure Resource Manager و زبان تعریف زیرساخت Bicep را گرد هم میآورد و منحنی یادگیری را کاهش میدهد و قابلیتهای آنها را گسترش میدهد.
در عین حال، داشتن یک چارچوب قابل آزمایش برای استقرار، خطرات مرتبط با مقیاسبندی و بهروزرسانی برنامهها را کاهش میدهد. هنگامی که زیرساخت شما درست شد، Azure Automation فراتر از استقرارها می رود، زیرا پشتیبانی از DSC به شما یک رویکرد دستی برای به روز نگه داشتن سرورها با وصله های امنیتی می دهد.
Azure Automation یک رویکرد برنامهای برای اتوماسیون فرآیند اتخاذ میکند، استفاده از runbook برای مدیریت عملیات Runbooks به شما امکان می دهد تمام قوانین پیکربندی و استقرار خود را در یک فایل اجرایی که در PowerShell یا Python نوشته شده است، قرار دهید. برای اتوماسیون های ساده تر، مایکروسافت یک محیط نگارش گرافیکی برای ساده سازی ایجاد runbook های جدید فراهم می کند.
برای بهره مندی از ابزارهایی مانند این، باید آنها را هم در سیستم ساخت و هم در چارچوب رویداد خود ادغام کنید. مایکروسافت از webhook ها در Azure Automation برای راه اندازی عملیات استفاده می کند. به عنوان مثال، میتوانید یک Azure Function را با افزایش تقاضا راهاندازی کنید که یک اتوماسیون را برای ارائه نمونههای بیشتری از برنامه اجرا میکند. همان وب هوکها را میتوان با GitHub Actions یا Azure DevOps برای استقرار یک زیرساخت جدید به عنوان بخشی از ساخت فعال کرد.
ساخت runbook در Azure Automation
Runbookها در متن داخلی Azure Automation ایجاد میشوند. ویرایشگر یا از طریق یک ویرایشگر گرافیکی. ویرایشگر متن ظاهر و احساسی مشابه Visual Studio Code دارد، با پشتیبانی از IntelliSense و کتابخانه ای از قطعات کد برای ساده سازی نوشتن.
اگر از PowerShell استفاده می کنید، کد runbook شما می تواند شامل cmdlet های از پیش نوشته شده و همچنین پشتیبانی از runbook های فرزند باشد. این گزینه آخر به شما امکان میدهد یک کتابخانه از runbookها بسازید که توابع کلیدی (مثلاً برای ایجاد یک سرور جدید) را جاسازی کرده و آنها را در یک زیرساخت پیچیدهتر جمعآوری کنید.
شما محدود به ایجاد و استقرار زیرساخت نیستید. Azure Automation همچنین ابزارهایی را برای کار با سرویسهای پلتفرم Azure، با استفاده از APIهای Azure CLI برای پیکربندی سرویسها و در دسترس قرار دادن منابع به دست آمده در اختیار کد شما، فراهم میکند. میتوانید از ابزارهای هویت مدیریتشده در Azure Automation استفاده کنید تا به آن حساب و نقشی بدهید که برای پیکربندی و مدیریت سرویس پلتفرم شما استفاده میشود، برای مثال در جدول جدیدی در پایگاه داده Azure SQL برای برنامه خود ایجاد کنید.
اگر در قالبهای مدیریت منابع Bicep یا Azure برای ماشینهای مجازی مدیریتشده، پشتیبانی از پیکربندی حالت دلخواه را اضافه کنید، میتوانید حرکت را به حداقل برسانید و اطمینان حاصل کنید که سرورها در مناطق مختلف و مناطق در دسترس، پیکربندی یکسانی دارند. فعال کردن DSC معادل یک خط PowerShell یا ورود در قالب Azure Resource Manager. همچنین میتوان پیکربندی را خودکار کرد، با استفاده از Azure Automate برای تنظیمات مدیریت پیکربندی< /a>، و سپس آنها را کامپایل کنید برای استقرار در سراسر ناوگانی از سرورها.
از طرف دیگر، میتوانید ماشینهای مجازی خود را برای استفاده از آژور جدید پیکربندی کنید. سرویس مدیریت خودکار، که نسخه به روز شده DSC با هدف مدیریت ویژگی های ماشین از طریق مدیر منابع Azure است. این رویکرد ابزارهایی را هم برای پیکربندی سرور و هم برای انطباق فراهم می کند. در عمل، بهتر است از مدیریت انطباق استفاده کنید، زیرا این اطمینان را ایجاد میکند که ماشینها به محض استقرار بهروزرسانی میشوند و همه نمونهها همگام میمانند و با انتشار بهروزرسانیهای امنیتی جدید، خطر کاهش مییابد.
مدیریت زمان اجراهای اتوماسیون در Azure Automation
یک ابزار کلیدی برای مدیریت و پشتیبانی از runbook ها Azure Automation’s Runtime است. محیط. محیط Runtime به شما امکان می دهد محیط های مورد استفاده برای میزبانی و اجرای کدهای اتوماسیون را تعریف و کنترل کنید. با قفل کردن این مورد، خطرات مربوط به استفاده از زمان اجرا ناشناخته را کاهش میدهید و از هرگونه عدم تطابق احتمالی جلوگیری میکنید.
با تعریف یک محیط زمان اجرا، می توانید سه عامل کلیدی را کنترل کنید: زبان مورد استفاده برای runbook های خود، نسخه مورد نظر و هر بسته نرم افزاری مورد نیاز. قفل کردن نسخه زبان از تفاوت بین نسخه ها جلوگیری می کند، به طوری که همیشه نسخه ای را که برای ساخت و آزمایش کد خود استفاده کرده اید اجرا می کنید. نسخههای جدید با عملکرد جدید میتوانند نسخههای زمان اجرا را در صورت نیاز افزایش دهند.
دلایل خوبی برای استفاده از زمان اجرا اخیر PowerShell (مانند PowerShell 7.2) وجود دارد، زیرا این موارد به شما امکان می دهد دستورات Azure CLI را در اسکریپت های خود قرار دهید. Azure Automation همیشه از آخرین نسخه Azure CLI استفاده میکند که توسط زبان اصلی پشتیبانی میشود، بنابراین اگر به دستوراتی تکیه میکنید که ممکن است منسوخ شده باشند، حتی اگر بقیه runbook شما تغییری نکرده باشد، این را در نظر داشته باشید.
محیطهای زمان اجرا از پورتال Azure یا از طریق REST API آن ایجاد و مدیریت میشوند. پیکربندی به اندازه کافی ساده است، زیرا زبان و نسخه را از نسخه های پشتیبانی شده انتخاب می کنید. پس از انجام این کار، بسته ها و ماژول هایی را که می خواهید استفاده کنید انتخاب کرده و آنها را در حساب Azure خود آپلود کنید. اینها می توانند از محیط توسعه محلی شما یا از گالری Azure Automation آمده باشند.
اگر می خواهید نسخه زبان را برای نسخه جدیدی از runbook به روز کنید، تنها کاری که باید انجام دهید این است که آخرین نسخه را انتخاب کرده و محیط به روز شده خود را ذخیره کنید. ممکن است در نتیجه هر تغییری نیاز به به روز رسانی بسته ها داشته باشید.
Azure Automation برای مدیریت سیستم
به خوبی میتوانید زیرساختهای جدید پیچیده را بنا به تقاضا ایجاد کنید، اما همچنان باید آن سرورها و شبکههای جدید را مدیریت کنید. Azure Automation ابزارهای ردیابی تغییرات را ارائه می دهد که موجودی در زمان واقعی سرورهای شما را در اختیار شما قرار می دهد. وقتی آنها را به ابزارهای مدیریت سیستم پیوند میدهید، میتوانید منابع را بررسی کرده و عملیات را نظارت کنید.
پشتیبانی از ابزارهای مدیریت مدرن شامل پیکربندی وضعیت اتوماسیون Azure، یک نسخه میزبانی ابری از PowerShell DSC داخلی است. با اجرای سرور DSC در Azure، میتوانید وضعیت سرور را مدیریت کرده و بهروزرسانیها را در صورت نیاز خودکار کنید. Azure Automation State Configuration به شما کمک میکند تا آنچه را که بهروزرسانی میشود و نحوه بهروزرسانی را کنترل کنید، و اطمینان حاصل میکند که بهروزرسانیهای ناخواسته هرگز در سرور اجرا نمیشوند.
توجه داشته باشید که میتوانید از Azure Automation خارج از Azure، به عنوان بخشی از سرویس مدیریت ابر ترکیبی Azure Arc استفاده کنید. این یک نقش Hybrid Runbook را برای سرورهای غیر Azure، از جمله سخت افزار فیزیکی، اضافه می کند. Azure Arc به شما امکان میدهد دستگاههای لبه و سیستمهای میزبان Azure را بهعنوان بخشی از یک پلتفرم اینترنت اشیا مدیریت کنید، یا خدمات امنی را مدیریت کنید که برای انطباق با مقررات لازم است در محل قرار گیرند.
به یاد دارید زمانی که ما شروع به صحبت در مورد سرورها به عنوان گاو کردیم؟ همانطور که سرورهای بیشتری را اضافه کردیم، در نهایت متوجه شدیم که دیگر نمی توانیم آنها را به روش قدیمی مانند حیوانات خانگی مدیریت کنیم. ابر ما را به سطح جدیدی رسانده است، جایی که ما حتی نمی دانیم چند سرور داریم. به همین دلیل است که ما باید زیرساختهای ابری را خودکار کنیم تا برنامههای ارتقا یافته و جابجا شده ما تا حد امکان با سرویسهای بومی ابری که استفاده میکنند رفتار کنند.
پست های مرتبط
شروع کار با Azure Automation
شروع کار با Azure Automation
شروع کار با Azure Automation