فهرست مطالب
ToggleCloud Computing یا رایانش ابری توانایی بهکار گیری یک سرور مجازی، نصب نرمافزار بر روی آن، روشن و خاموش کردن آن به میل خود، یا شبیه سازی بارهای کاری برای پاسخگویی به تقاضای حجم کاری ناگهانی است. اکنون با توجه به این تعریف اولیه از چیستی رایانش ابری، وقت آن است که به عمق رایانش ابری و معماری آن بپردازیم.
رایانش ابری چیست؟
رایانش ابری توسعه منطقی مجازیسازی است. بنابراین برای درک درست ابر، اجازه دهید با مروری بر مجازیسازی شروع کنیم. مجازیسازی انعطافپذیری را فراهم میکند به طوری که پشتههای نرمافزار میتوانند مستقل از سرور فیزیکی از طریق انتزاع سختافزاری مستقر یا بازمستقر شوند.
با مجازیسازی، مرکز داده پویا مجموعهای از منابع را فراهم میکند که در صورت نیاز مورد استفاده قرار میگیرند و رابطه برنامهها با محاسبات، ذخیرهسازی و منابع شبکه به صورت پویا تغییر میکند تا حجم کار و تقاضا را برآورده کند. همانطور که استقرار برنامه از استقرار سرور جدا میشود، برنامهها بدون نیاز به خرید سرور فیزیکی به سرعت مستقر و مقیاس میشوند.
یک ابزار مجازی یک تصویر (image) ماشین مجازی است که برای اجرا بر روی یک پلت فرم مجازیسازی مانند وب یا سرور پایگاه داده طراحی شده است و توانایی ایجاد و استقرار سریع برنامهها را بیشتر میکند. ترکیبی از ماشینهای مجازی و دستگاهها به عنوان اشیاء استقرار استاندارد، یکی از ستونهای رایانش ابری است.
مجازی سازی و رایانش ابری
اجرای برنامههای خود در ماشین مجازی به این معنی نیست که شما در فضای ابری هستید. بله، شما در مسیر محاسبات ابری قرار دارید اما این تمام مسئله نیست. رایانش ابری روند مجازیسازی را از طریق اتوماسیون گسترش میدهد. ابر به شما امکان میدهد منابعی را که میخواهید برای استقرار برنامه استفاده کنید انتخاب کنید و یک رابط وب یا API برای ایجاد ماشینهای مجازی و ایجاد روابط شبکه بین آنها ارائه میدهد. بنابراین بهجای بستن قرارداد طولانیمدت و احتمالا خستهکننده برای خدمات با یک سازمان فناوری اطلاعات یا یک ارائهدهنده خدمات، میتوانید صورتحساب مصرف منابع را انتخاب کنید: ساعتهای استفاده از CPU، حجم انتقال داده یا ظرفیت ذخیرهسازی.
زمانی که هزینه پرداختی شما فقط برای منابعی است که استفاده میکنید، ریسک خرید زیرساخت را به ارائه دهنده ابر منتقل میکنید. در گذشته، معماران مسئول تعریف چگونگی قرار گرفتن اجزای مختلف یک برنامه بر روی مجموعهای از سرورها، نحوه اتصال، ایمن نگاه داشتن، مدیریت و مقیاسبندی آنها بودند. اکنون، API ارائهدهنده ابر نیاز به معمار را از بین میبرد و به توسعهدهنده اجازه میدهد ترکیب اولیه برنامه را روی ماشینهای مجازی ایجاد کند و همچنین مقیاسبندی و مدیریت حجم کاری آن را نیز به انجام برساند.
استقرار برنامه وب در فضای ابری
اکنون، اجازه دهید بررسی کنیم که چگونه یک برنامه وب دو لایه میتواند در فضای ابری مستقر شود.
۱) از یک کتابخانه از تصاویر ماشین مجازی از پیش پیکربندی شده، یک متعادل کننده بار، وب سرور و ابزارهای سرور پایگاه داده را انتخاب کنید. دستگاهها را میتوان با لایه بندی نرم افزار (به عنوان مثال با SQL Server) در تصویر ماشین مجازی و انجام سفارشی سازیهای مورد نیاز برای استقرار ایجاد کرد.
۲) برای ایجاد تصویر سفارشی، متعادل کننده بار را پیکربندی کنید. وب سرور را با آپلود محتوای ثابت آن در ابر ذخیره سازی پر کرده و ابزارهای سرور پایگاه داده را با محتوای پویا برای سایت پر کنید.
۳) کد سفارشی را در معماری جدید لایه بندی کنید تا اجزای مورد نیاز برنامههای کاربردی خاص را برآورده کنند.
۴) الگویی را انتخاب کنید که تصاویر را برای هر لایه میگیرد و آنها را مستقر میکند و مسائل مربوط به شبکه، امنیت و مقیاس پذیری را مدیریت میکند.
۵) اکنون برنامه در فضای ابری راه اندازی شده است. در صورت بروز هر گونه بهروز رسانی، کل زیرساخت را میتوان با بهروز رسانی، نسخه سازی و کپی کردن تصاویر ماشین مجازی در سراسر زنجیره توسعه-تست-تولید مجددا مستقر کرد.
رایانش ابری و مقیاس افقی
میتوان گفت که محاسبات ابری یک تغییر از مقیاس عمودی به مقیاس افقی منابع است. در گذشته، مقیاس بندی عمودی/بالا مقیاس برای رسیدگی به حجم کاری بزرگتر استفاده میشد. این شامل افزودن پردازنده یا حافظه به یک کامپیوتر واحد برای مدیریت ترافیک بیشتر بود. سرور پایگاه داده هم برای افزایش توان عملیاتی بزرگتر میشد. در رایانش ابری نیازی به این مقیاس بندی عمودی وجود ندارد.
با رایانش ابری، برنامه از مزیت بزرگ مقیاس پذیری افقی برخوردار میشود. از آنجایی که اکثر پلتفرمهای ابری بر روی یک منبع مجازی از منابع سرور ساخته شدهاند، اگر هر یک از سرورهای فیزیکی از کار بیفتد، ماشینهای مجازی که میزبان آن بودند روی سرور فیزیکی دیگری منتقل میشوند.
اعمال مقیاس بندی افقی در Cloud
حال بیایید ببینیم مقیاس بندی افقی چگونه برای پایگاه داده در Cloud اعمال میشود. برای اجرای سیستمهای مدیریت پایگاه داده در محیط ابری، به سرورهای پایگاه داده با مقیاس افقی و جداول پارتیشن بندی در سراسر آنها نیاز است. این تکنیک که به عنوان اشتراک گذاری پایگاه داده شناخته میشود، به چندین نمونه از نرم افزار پایگاه داده مانند SQL Server اجازه میدهد تا برای مقیاس بندی عملکرد در یک محیط ابری اجرا شوند. به جای دسترسی به یک پایگاه داده مرکزی واحد، برنامهها اکنون باید فقط به آن قطعه/پارتیشنی که حاوی دادههای مورد نظر است دسترسی داشته باشند.
Cloud از پردازش متمرکز CPU پشتیبانی میکند. این بدان معناست که برنامههایی که فعالیتهای رندر فریم را انجام میدهند به گونهای طراحی شدهاند که ماشین مجازی مجزا هر فریم را به جای ایجاد یک رشته جدید برای هر فریم، رندر میکند و عملکرد را از طریق مقیاس افقی افزایش میدهد.
ویژگیهای رایانش ابری
در نهایت، رایانش ابری، نوعی رایانش با جفت شدگی آزاد، بدون حالت و با امکان محدود کردن خرابی به یک قسمت خاص است. اجازه دهید در مورد این ویژگیها توضیح دهیم. در رایانش ابری، اگر ماشین مجازی از کار بیفتد، برنامه نباید مختل یا قطع شود. جفت شدن بین اجزای برنامه نیاز به مقداری آزادی عمل دارد به طوری که خرابی هر یک از مؤلفهها بر در دسترس بودن کلی برنامه تأثیر نگذارد. علاوه بر مواردی که گفته شد، یک بخش باید بتواند بدون هیچ تاثیری بر کل برنامه از کار بیفتد. درواقع خرابی یک بخش از دستگاه باید محدود به همان بخش باشد و نتواند بر عملکرد کل برنامه تاثیر بگذارد.
از آنجایی که اجزای برنامه موقتی هستند، دادههای موجود در آنها باید مختص همان نمونه از برنامه باشد. برنامهها باید تا حد امکان بدون وضعیت باشند و پردازش و دادهها را از هم جدا کنند. برای اینکه ابر به درستی کار کند، حتی سخت افزار نیز باید بدون وضعیت باشد. پیکربندیهای سختافزاری باید در ابردادهها ذخیره شوند تا در صورت خرابی، پیکربندیها بازیابی شوند.
معماری ابری باید قابل ترکیب و بازسازی باشد تا بیشترین استفاده را از مؤلفههای استاندارد برای بهره بردن از مزایای رایانش ابری داشته باشد. برای شرکتی که در حال تغییر یا برنامه ریزی برای تغییر به رایانش ابری است، باید استانداردهایی را در هنگام انتخاب نوع ماشین مجازی، سیستم عامل در تصاویر ماشین مجازی استاندارد، ابزارها و زبانهای برنامه نویسی مورد پشتیبانی در نظر بگیرد.
جمع بندی
رایانش ابری، امکان استفاده از تمام مزایای مجازیسازی و فضاهای ذخیرهسازی ابری را به صورت همزمان در اختیار سازمانها قرار میدهد. رایانش ابری به شرکتها کمک میکند تا فقط برای منابعی که استفاده میکنند، هزینه بپردازند و نیاز به مقیاس رو به بالا را در سختافزارهای فعلی از بین میبرد. علاوه مزایایی که گفته شد، بهرهمندی از امتیازات ذاتی فضای ابری و مجازیسازی هم میتواند به سازمانها در مسیر اجرای بهتر و پایدار برنامهها کمک کند.