بخشی از مقاله
چکیده-
مدل رایانشی بر پایه تحویل خدمات رایانشی - شامل زیرساخت، نرمافزار، بستر، و سایر منابع رایانشی - با به کارگیری شبکه ارائه می کند. »رایانش ابری« از ترکیب دو کلمه رایانش و ابر ایجاد شده است. ابر در اینجا استعاره از شبکه یا شبکهای از شبکههای وسیع مانند اینترنت است که کاربر معمولی از پشت صحنه و آنچه در پی آن اتفاق میافتد اطلاع دقیقی ندارد - مانند داخل ابر - در نمودارهای شبکههای رایانهای نیز از شکل ابر برای نشان دادن شبکه اینترنت استفاده میشود. دلیل تشبیه اینترنت به ابر در این است که اینترنت همچون ابر جزئیات فنیاش را از دید کاربران پنهان میسازد و لایهای از انتزاع را بین این جزئیات فنی و کاربران به وجود میآورد. به عنوان مثال آنچه یک ارائهدهندهخدمات نرمافزاری رایانش ابری ارائه می کند، برنامههای کاربردی تجاری آنلاین است
کلمات کلیدی: رایانش ابری clod cputing، Utility Computing،شبکه های مجازی،معماری شبکه های ابری
-1مقدمه
سیر تکاملی محاسبات به گونه ای است که می توان آن را پس از آب، برق، گاز و تلفن به عنوان عنصر اساسی پنجم فرض نمود. در چنین حالتی، کاربران سعی می کنند بر اساس نیازهایشان و بدون توجه به اینکه یک سرویس در کجا قرار دارد و یا چگونه تحویل داده می شود، به آن دسترسی یابند. نمونه های متنوعی ازسیستم های محاسباتی ارائه شده است که سعی دارند چنین خدماتی را به کاربران ارئه دهند. برخی از این سیستم های محاسباتی عبارتند از: محاسبات کلاستری ، محاسبات توری واخیراً محاسبات انبوه اما محاسبات انبوه از دید فرآهم کنندگان منابع زیرساخت، می تواند با کمک ماشین های مجازی شبکه شده،به عنوان یک روش جدید برای ایجاد پویای نسل جدید مراکز داده، مورد استفاده قرارگیرد تا بتوانند یک زیرساخت قابل انعطاف برای ارائه انواع مختلف خدمات محاسباتی و ذخیره سازی در اختیار داشته باشند. - در رویکرد اول - رایانش ابری از دید ارائه سرویس و برنامه های کاربردی تلاش بر این است که خدمات اینترنتی بصورت یک رایانه واحد در اختیار تمام کاربرانی که به آن متصل هستند قرار بگیرد وتکنولوژی هایی نظیر وب از عوامل مهم در نیل به این هدف هستند.
در این رویکرد جدید، می توان ازلایه های مختلف و قابل انعطاف ارائه شده در ابر استفاده کرد و خدماتی را فراهم آورد که بتوان در سایت های مختلف به اشتراک گذاشت. اما محاسبات انبوه از دید فراهم کنندگان منابع زیرساخت، می تواند با کمک ماشین های مجازی شبکه شده، به عنوان یک روش جدید برای ایجاد پویای نسل جدید مراکز داده، مورد استفاده قرارگیرد تا بتوانند یک زیرساخت قابل انعطاف برای ارائه انواع مختلف خدمات محاسباتی و ذخیره سازی در اختیار داشته باشند. - در رویکرد اول - رایانش ابری از دید ارائه سرویس و برنامه های کاربردی تلاش بر این است که خدمات اینترنتی بصورت یک رایانه واحد در اختیار تمام کاربرانی که به آن متصل هستند قرار بگیرد وتکنولوژی هایی نظیر وب از عوامل مهم در نیل به این هدف هستند.
در این رویکرد جدید، می توان ازلایه های مختلف و قابل انعطاف ارائه شده در ابر استفاده کرد و خدماتی را فراهم آورد که بتوان در سایت های مختلف به اشتراک گذاشت. به این ترتیب که مثلا اطلاعات می تواند بین سایت ها به اشتراک گذاشته شود و فایلی که در یک سایت قرار داده شده است به راحتی در یک سایت دیگر قابل دسترسی باشد. در حقیقت حرکت در ابر به سمتی پیش می رود که دیگر برای کاربر فرقی نمی کند در حال استفاده از کدام سایت است. مصداق های بسیار زیادی از این روند در حال حاضر قابل مشاهده است. برای مثال کاربر می تواند کلیپی را در Youtube مشاهده نموده و آن را در یک سایت دیگر مثلا سایت Facebook به اشتراک گذارد.
-2رایانش ابری چیست؟
از ابتدای پیدایش محاسبات همواره انسان به دنبال پیدا کردن راهی برای سهولت و سرعت و دقت بالا در محاسبات بوده در ابتدا که نسل های نسختین رایانه ها عرضه شدند بسیار حجیم و گرانقیمت بودند. با گذشت زمان رایانه های شخصی به بازار آمدند و بسیاری از مردم را به کاربران خودشان تبدیل کرند ودر ادامه ما شاهد پیدایش و توسعه شبکه ها بودیم بنابراین تعداد بسیارزیادی منبع محاسباتی کوچک در شبکه ای تحت عنوان محاسبات داوطلبانه به هم پیوستند و توان پردازشی عظیمی را بوجود آوردند. اما همچنان شبکه ها و کاربران تشنه اطلاعات ر بودند و به کمک اینترنت این اطلاعات برای کاربران فراهم شد.
بنابراین رایانش ابری از دید زیرساخت، به گونهای سیستم های توزیع شده و موازی اطلاق می گردد کهمجموعهای از رایانه های مجازی را که به یکدیگر متصل هستند شامل می شود. این رایانه ها بطور پویا عرضه شده و به عنوان یک یا چند منبع محاسباتی یکپارچه براساس توافقات سطح سرویس ارائه می شوند. این توافقات در طول انجام مذاکرات سرویس دهندگان و مصرف کنندگان برقرار میگردند. رایانش ابری سعی دارد نسل جدیدی از مراکز دادهای را، با ارائه کردن سرویس ها و خدمات در ماشین های مجازی شبکه شده به صورت پویا، به گونه ای ممکن سازد که ارائه دهندگان خدمات کاربردی بتوانند سرویس ها و برنامه های کاربردی را با انعطاف پذیری و سهولت بیشتری ارائه کنند و کاربران نیز بتوانند از هر جایی از دنیا به برنامه های کاربردی دسترسی داشته باشند.
در تکنولوژی رایانش ابری، کاربران می توانند از طریق ابزارهای مختلف - نظیر رایانه های شخصی، رایانه های به برنامه ها، فضاهای ذخیره سازی، پردازش و حتی سکو های توسعه برنامه های PDA - همراه، تلفن همراه و کاربردی در اینترنت، از طریق سرویس های ارائه شده توسط رایانش ابری، دسترسی داشته باشند. به این ترتیب منابع به جای قرار گیری در سمت کاربر، در سمت سرورها قرار می گیرد. خدمات فراهم شده از طریق است و به این معناست که خدمات مورد استفاده مشتریان در Utility Computing رایانش ابری از نوع سرورها عرضه می شود و پرداخت ها در آن همانند سایر - خدمات عمومی برق، آب، تلفن و ... - همان طور که در شکل زیر نشان داده شده است، تحقیق بازار انجام شده حاکی از از آن است که هزینه سرویس های رایانش ابری از 16 میلیارد دلار به 42 میلیارد دلار درسال 2012 رشد کرده است.
یک مثال ساده :شرکتی برای محاسبه و صدور صورتحساب و دریافت آن از مشتریان، ممکن است از نرم افزارهای خاصی استفاده کند. مثلا نرم افزاری را تهیه و روی سیستم خود نصب کند و همراه آن، سخت افزارهای لازم را نیز تهیه کرده و هزینه های نگهداری و ارتقا را بپردازد. اما روش دیگر می تواند به این صورت باشد که یک شرکت دیگر این نرم افزار را روی سرور خود قرار دهد و نسبت به نگهداری و توسعه آن اقدام کرده و همواره سعی دربهره برداری از فنّاوری روز دنیا برای نگهداری و توسعه نرم افزارهایش داشته باشد.در این شرایط تمام سازمان هایی که نیاز به صدور صورتحساب و دریافت مبلغ از مشتریان را دارند، از طریق ارتباط با ای نرم افزار و استفاده از منابع موجود روی سرورهای ارائه شده، کار خود را انجام دهد.
پرواضح است که سازمان های استفاده کننده از این امکانات، هیچ مسئولیتی در قبال نگهداری سخت افزار و نرم افزار و منابع مربوط به این سیستم را نخواهند داشت و تنها از سرویس دهنده - سرور - خود انتظار دارند که بهترین خدمات را به صورتی کاملا مطمئن ارائه کند، و در قبال استفاده از این خدمات مبلغی را به او پرداخت می کنند. این یک نمونه ی کاملا کاربردی از تکنولوژی رایانش ابری است. حضور گسترده و روزافزون و... در عرصه رقابتی رایانش ابری، نشان از Sun ، Amazon، Google،Microsoft شرکت های بزرگی نظیر توسعه سریع و تسلط این گونه ازمحاسبات در دنیایفنّاوری اطلاعات دارد. یکی از مزایای مهمی که معماری رایانش ابری برای توسعه دهندگان آن فراهم کرده است، امکان برپایی توده های ابر در مکان هایی از سطح جهان است که از نظر هزینه مکان و مصرف برق مقرون بصرفه تر هستند. این کار موجب فراهم آمدن امنیت بیشتر در خصوص سوانح طبیعی که ممکن است در یک منطقه خاص رخ دهد می شود وامکان تعدیل ترافیک و بار سیستم برای انجام پرس وجو ها در کلاسترهایی که از نظر فیزیکی به کاربر نزدیک تر هستند را فراهم کنند[3]
-3برخی مزایا و معایب رایانش ابری
آنچه که از رایانش ابری به عنوان مزایا و معایب یاد می شود، تقریبا در همه مقالات یکسان است. مواردی نظیر کاهش هزینه های اولیه، موانع کمتر برای ورود به بازار و یا استفاده از خدمات، مقیاسپذیری بر حسبتقاضا، فراهم کردن خدمات در مقیاس مراکز داده، تضمین بهتر تداوم کسب وکار ، امنیت نسبی بیشتر و مدیریت بهتر حجم بالای داده به عنوان مزایای اصلی آن یاد می شود. برخی از معایب آن نیز شامل مشکلات دسترسی راه دور، مشکلات ناشی از محدودیت پهنای باند، تأخیر، برخی مسائل امنیتی و فنی بخاطراشتراک منابع یکسان بین مشتریان مختلف، دسترسی فراهم آورندگان خدمات ابری به داده ها و مسائلی ازاین قبیل را شامل می شود.
-4 معماری سیستم های رایانش ابری
رایانش ابری می تواند با استفاده سرورهای مرکز داده یک سازمان یا از طریق سرویس دهنده های ابری فراهمشود و تصوری که می شود این است که منابع نامحدود هستند. در حالی که این مدل در مراحل اولیه خوداست، اما به سرعت بسیار زیادی در حال توسعه در دنیای فناوری اطلاعات می باشد. مدل غالب رایانش ابری،سرویس های زیرساخت است. در این قسمت ملاحظات معماری مورد نیاز که در زمان طراحی برنامه های مبتنی بر ابر لازم است رعایت شود، مورد بحث قرار می گیرد و ملاحظه خواهیم کرد که چه فناوری هایی برای پشتیبانی از آن وجود دارد.
-5زیرساخت قابل برنامه ریزی
رایانش ابری توانایی برنامه ریزی پویای معماری یک برنامه کاربردی، قدرت زیادی را در دستان برنامه نویسان قرار می دهد.برای استفاده موثر از رایانش ابری، یک برنامه نویس باید یک معمار هم باشد و نیاز خواهد داشت که برنامه ای خود نظارتی و خود توسعه ای ایجاد کند. برنامه نویس/معمار باید بداند که چه موقع لازم است یک جدید ایجاد کند، در مقابل اینکه چه موقع یک ماشین مجازی ایجاد کند و اینکه متناسب با الگوی threadمعماری، چگونه آنها به هم متصل می شوند.
اگر این قدرت به خوبی درک شود و مورد استفاده قرار بگیرد، نتایج بسیار تماشایی خواهد بود. یک نمونه ازاست که یک ویدئو را از مجموعه ای از تصاویر و موسیقی ها ایجاد می کند. Animoto's mashup آن ابزار برنامه این شرکت در ظرف سه روز از 51 سرور تا 3511 سرور توسعه پیدا کرده است. برای این کار، برنامه بگونه ای ساخته شده بود که توانست بطور افقی - بر روی تعداد زیادی از نودهای محاسباتی - توسعه پیدا کند.و بتواند وضعیت خود را از طریق APIابری مدیریت کند.
-6ترکیب برنامه ها و ایجاد برنامه های جدید تر
از دیگر نتایج استفاده از رایانش ابری این است که برنامه های کاربردی می توانند با ترکیب و پیکربندی ابزارها و برنامه های کدمتن باز ایجاد شوند. برنامه های کاربردی و معماری هایی که بتوانند به اجزای استاندارد تجزیه شوند، می توانند در مدل رایانش ابری بطور موفق پیاده سازی شوند. به همین ترتیب، اجزای برنامه های کاربردی باید بگونه ای طراحی شوند که آنها نیز قابل ترکیب با اجزای دیگر باشند و به راحتیهای مستند شده دارند. ایجاد برنامه های بزرگ و API مصرف شوند. این کار نیاز به توابع ساده و واضح ویکپارچه مربوط به گذشته است و امروز با استفاده از کتابخانه هایی که از ابزارهای موجود وجود دارد،می توان برای ایجاد برنامه های بزرگتر استفاده کرد.
سرویس ها در شبکه ارائه می شوند
هر سازمان تجاری، به مزایا و ارزش واسط تحت وب برای برنامه های کاربردی خود واقف است. در این صورت هم می تواند آن برنامه ها را از طریق اینترنت در دسترس مشتریان خود قرار دهد و هم اینکه برای کاربردهای داخلی، امکان استفاده از آنها برای کاربران مجاز، شرکای تجاری، تامین کنندگان و مشاوران وجود داشته باشد. زیبایی برنامه