IaC یکی از ابزار های دواپس است. IaC یعنی نوشتن یک کد جهت ساختن و مدیریت زیرساخت. با IaC، فایلهای پیکربندی ایجاد میشوند که حاوی مشخصات زیرساخت شما هستند، که ویرایش و توزیع پیکربندیها را آسانتر میکند. همچنین تضمین می کند که با اجرای کد هر بار همان محیط را فراهم می کنید.
کنترل ورژن (Version Control) بخش مهمی از IaC است و فایل های پیکربندی شما باید مانند هر کد نرم افزار دیگری تحت کنترل منبع باشند. استقرار زیرساخت خود به عنوان کد همچنین به این معنی است که می توانید زیرساخت خود را به اجزای مدولار تقسیم کنید که سپس می توانند به روش های مختلف از طریق ابزارهای CI/CD ترکیب شوند.
تامین خودکار زیرساخت با IaC به این معنی است که توسعهدهندگان نیازی به تهیه و مدیریت دستی سرورها، سیستمعاملها، ذخیرهسازی و سایر اجزای زیرساختی در هر بار توسعه یا استقرار یک برنامه ندارند. کدگذاری زیرساختهای خود به شما الگویی میدهد تا برای تهیه آن دنبال کنید.
در مباحث مربوط به اتوماتیک کردن فرایند ها در دواپس ۲ راهکار وجود. imperative و declarative.
راه حل imperative مانند نوشتن اسکریپت است که خط به خط دستور های شما اجرا میشود. اما در روش declarative وضعیت مورد نظر شما به سیستم داده میشود تا آن را برای شما پیاده سازی کند. مثلا در ترافورم مشخصات ابرک مورد نیاز که شامل نام، منابع و … نوشته سپس سیستم ان را برای ما پیاده سازی میکند. بیشتر ابزار های IaC از این روش استفاده میکنند.
راه اندازی زیرساخت از زمان های قدیم زمان بر و چالش بر انگیز بوده است. مثلا نصب دیوایس ها، نصب سیستم عامل و …. با پیشرفت کلاد و مهاجرت به آن این فرایند ساده تر شده و زمان کمتری میبرد. با این حال تغییرات در کنسول سرویس دهنده ها گاها سبب بروز مشکل شده و امکان عیب یابی را دشوار و زمان بر میکند.
در حالی که اگر از IaC بهره بگیریم شاید در دفعه اول نیاز به سپری کردن زمان زیاد برای پیاده سازی کد داشته باشیم ولی به دلیل آن که بر روی یک سرویس مثل گیت تغییرات پوش میشوند. پیدا کردن مشکلات سریع تر شده و امکان بازگشت به ورژن قبل را اسان تر میکند.
علاوه بر آن در زمان بروز مشکلات به راحتی میتوان زیر ساخت را از بیس ساخت. در صورتی که نیاز به داشتن همان زیرساخت در منطقه (Region) دیگر یا برای مشتری دیگر باشد با تغییر دادن چند متغیر همان کد قابل استفاده است.
مزیت دیگر آن که میتوان از کد به عنوان یک داکیومنت نیز بهره گرفت
به صورت خلاصه مزایای IaC به شرح زیر میباشد:
برای دستیابی به IaC می توان از ابزارهای مدیریت پیکربندی استفاده کرد. همچنین راه حل هایی به طور خاص برای IaC وجود دارد. از جمله آنها میتوان به
دیدگاهتان را بنویسید