مقایسه نرم افزارهای مدیریت پیکربندی

[تعداد: ۱    میانگین: ۵/۵]

اولین باری که با  vagrant آشنا شدم زمانی بود که تصمیم داشتم openstack رو نصب کنم . در ابتدای فایل راهنمای نصبش نوشته بود اگر قصد دارید openstack رو روی ماشین مجازی (vm) نصب کنید ابتدا vagrant رو نصب کنید . خب اون زمان من چون openstack رو روی   خود میزبان نصب کردم نیاز به vagrant پیدا نکردم و از کنارش گذشتم .

اما الان که بیشتر وارد دنیای مدیریت سرور ها شدم با این نرم افزارهای متن باز مدیریتی بیشتر برخوردم نرم افزارهایی مثل : Ansible ، Chef ، Puppet ، Vagrant و …

خب حالا این نرم افزارها چه مشکلاتی از ما رو حل می کنند ؟

هر کدام از این نرم افزارها ، برای انجام یه کار خاصی موفق تر عمل کردند ؛ اکثر این نرم افزارها الگوی مشابهی استفاده می کنند : اجازه تعیین وضعیت ماشین به کاربر داده می شود و با توجه به فایل های پیکربندی ، نرم افزارها نصب می شوند ، کاربران ، گروه ها و انواع مختلف منابع تعیین می شوند و …

vagrant ماشین های مجازی رو به صورت خودکار ایجاد و مدیریت می کند . این مدیریت می تواند روی ماشین های مجازی محلی اتفاق بیفتد یا روی پلت فرم های ابری .

chef برای نصب و پیکربندی سیستم عامل ها روی ماشین های مجازی استفاده می شود . یک پلت فرم اتوماسیون است که زیرساخت رو به کد تبدیل می کند .

Ansible  یکی از ساده ترین و آسان ترین نرم افزارهای مدیریتی است چراکه فقط از ssh استفاده می کند . Ansible برای اتصال به سرورها و اجرای وظایفش روی آنها فقط از ssh استفاده می کند . یکی دیگر از دلایل محبوبیت Ansible این است که به سادگی می توانید اسکریپت های bashای که برای مدیریت برنامه ها نوشته اید را به تسک های Ansible تبدیل کنید .

Puppet برای مدیریت پیکربندی سیستم های شبه یونیکس و ویندوز طراحی شده . کاربر منابع سیستم و موقعیت خود را با زبان اعلانی Puppet تعریف می کند (Ruby DSL) . اطلاعات در فایل هایی که Puppet manifest نامیده می شوند ذخیره می شوند . Puppet اطلاعات سیستم را از طریق یک ابزار به نام Factor پیدا می کند و manifest ها را کامپایل می کند و ادامه مراحل …

اکثر این نرم افزارهای مدیریتی این قابلیت را برای شما فراهم می آورند که بتوانید تغییرات اعمال شده را به ماشین خاصی پوش کنید . نرم افزارهای مدیریتی فراوانی وجود دارند اما این ۴ تا به نظر من کاربردی تر هستند و از طرفی می توان در مدیریت نصب پلت فرم های ابری نیز از اینها استفاده کرد ؛ خصوصا زمانی که تعداد میزبان های ابری زیاد باشد .

نام نرم افزار زبان لایسنس پلت فرم هایی که پشتیبانی می کند
Ansible Python GPL Windows , Solaris , Mac OS , Linux
Chef Ruby Apache Windows , Solaris , Mac OS , Linux
Puppet Ruby Apache Windows , Solaris , Linux
Vagrant Ruby MIT Mac OS , Linux , Windows

 

پاسخ دهید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *