Transcript مقدمه
grid computing فهرست مطالب قسمت های مختلف OGSI مزیت های grid computing معماری grid معماری سرویس گرای grid 1 سیر تکامل تکنولوژی grid مقدمه Grid computing چیست grid computing مقدمه 3 واژه ی grid computingدر اواخر دهه ی نود در مورد ایجاد قابلیت دسترسی ساده به منابع محاسباتی بیان شد . Gridمحاسباتی یک زیر ساخت نرم افزاری و سخت افزاری است که قابلیت استفاده از تجهیزات محاسباتی را با قابلیت اطمینان ,به صورت کم خرج ,فراگیر و سازگار فراهم می اورد . grid computing Grid computingچیست 4 Grid computing می تواند معنی های مختلفی برای افراد مختلف داشته باشد . تصور مشهور در مورد gridچیزی شبیه شبکه ی برق ) )power gridاست که کاربران (استفاده کنندگان از وسایل برقی) بدون توجه به اینکه این برق از کجا می اید ,الکتریسیته را از پریز می گیرند. با این دید در مورد , grid computingمی توان computingرا به عنوان قدرت (انرژی برق) در نظر گرفت و کاربران (یا برنامه ها) به منابع محاسباتی (پردازنده ها ,ذخیره کننده ها ,داده ها ,برنامه ها و غیره) دسترسی پیدا کند و اهمیتی ندارد که این منابع از نظر فیزیکی کجا قرار گرفته اند و یا تکنولوژی مورد استفاده در انها ,سخت افزار و نرم افزار انها چیست . grid computing ادامه 5 پس grid computingرا می توان مانند یک مسیر جذاب از تکنولوژی ها و راهکارهای مختلف دید که طی کردن این مسیر ما را به هدف نهایی نزدیکتر می کند . قسمت مهم این پیشرفت در محاسبات توزیع شده است که امکان پیاده سازی برنامه ها در سیستمی که از سازمان های مختلف تشکیل شده است برای به اشتراک گذاشتن منابع را فراهم می اورد . به طور خالصه امکان «مجازی سازی» را فراهم می اورد . grid computing مزیت های grid computing مدیریت قابلیت اطمینان متعادل سازی استفاده از منابع دسترسی به منابع اضافه منابع مجازی و سازمان های مجازی 6 قابلیت محاسبه ی موازی استفاده موثر از منابع grid computing 7 مزیت های grid computing استفاده موثر از منابع یعنی برنامه ای که معموال روی ماشین خاصی اجرا می شود ,در شرایطی خاص به خاطر این که ان ماشین مشغول است ,در ماشین دیگری که کمتر مشغول است اجرا گردد . ممکن است برای سازمانی یک پردازش غیر منتظره پیش اید و ماشینی که قرار است پردازش را انجام دهد بسیار مشغول باشد ,اگر این پردازش بتواند در بستر gridاجرا شود می توان انرا به ماشین دیگری انتقال داد تا استفاده از منابع به صورت متعادل انجام گیرد . این متعادل سازی استفاده از منابع می تواند برای , cpuحافظه و یا هر منبع دیگر موجود در gridاستفاده می شود . grid computing مزیت های grid computing 8 قابلیت محاسبه ی موازی برنامه را میتوان به صورت موازی بر روی cpuهای مختلف اجرا کرد .یک برنامه ای که می تواند تحت gridاجرا شود و مقدار زیادی cpuنیاز دارد را می تواند به عنوان چندین ریز کار کوچک دید . اگر این ریز کارها نیازی به مبادله ی اطالعات با هم نداشته باشند و در واقع با هم وابستگی نداشته باشند در بهترین حالت به وسیله ی nپردازنده با سرعت nبرابر بیشتر از حالتی که به وسیله یک پردازنده پردازش می شود اجرا می گردد .به این نوع پردازش ها ,پردازش های قابل رشد گفته می شود . grid computing مزیت های grid computing 9 منابع مجازی و سازمان های مجازی چون gridاستاندارهایی را برای به اشتراک گذاشتن منابع در یک محیط نامتجانس فراهم فراهم می اورد . با استفاده از gridیک سیستم محاسباتی بزرگ مجازی ,با منابع گوناگون تولید می شود . Grid منابع نا متجانس و ار نظر جغرافیایی از هم جدا را مجازی سازی می کند . grid computing grid computing مزیت های 10 grid computing مزیت های grid computing 11 دسترسی به منابع اضافه همانطور که اشاره شد به غیر از cpuو حافظه grid ,می تواند امکان استفاده از منابع دیگر را نیز فراهم کند . بعضی از ماشین های gridممکن است دستگاه خاصی داشته باشند .خیلی از ما از چاپگرهای به اشتراک گذاشته شده استفاده می کنیم ؛ به روشی مشابه grid , می تواند استفاده از دیگر دستگاه ها را برای کاربران ممکن کند . grid computing مزیت های grid computing 12 متعادل سازی استفاده از منابع یک gridمنابع توزیع شده زیادی را که بر روی ماشین های جداگانه قرار گرفته اند متحد می کند تا یک سیستم یکپارچه بوجود اورد . مکانیزمی برای متعادل سازی استفاده از این منابع در gridوجود دارد .این مکانیزم زمانبندی است که ریز کارها را بر روی منابع بصورت متعادل توزیع می کند که به دو روش انجام می شود : .1قسمت پر کار می تواند به ماشین های تقریبا بیکار هدایت شود . .2اگر تمام امکانات gridمشغول باشد کارهای با اولویت پایین تر می توانند متوقف شوند تا فضا و امکانات کافی برای کارهای با اولویت باالتر بوجود اید . grid computing 13 grid computing مزیت های grid computing 14 قابلیت اطمینان سیستم های محاسباتی پیشرفته از سخت افزار های گران قیمت بهره می برند تا بتوانند قابلیت اطمینان باالیی ارائه دهند . انها با استفاده از سخت افزار ها و مدارهای منطقی ساخته می شوند که در صورت بروز خطا و از کار افتادن قابلیت بازیابی دارند و دارای چند پردازنده هستند که در صورت بروز خطا جایگزین می شوند برق برخی از سیستم ها با اشتفاده از دستگاه های خاصی کنترل می شود و در صورت بروز مشکل ژنراتوری برای برق رسانی فعال می شود . grid computing 15 در شرایط بحرانی چندین نسخه از یک کار می تواند در ماشین های مختلف اجرا شود grid computing مزیت های grid computing 16 مدیریت مجازی سازی منابع در gridو کنترل یک سیستم نا همگن بزرگ ,موقعیت بهتری برای مدیریت زیر ساخت های ITفراهم می اورد . در گذشته سازمان ها مسئول زیر ساخت های itخود بودند و انها را کنترل می کردند ولی با بوجود امدن سازمانهای مجازی و ترکیب شدن gridهای سازمان های مختلف کنترل و مدیریت منابع سادتر می گردد . grid computing 17 grid computing سیر تکامل تکنولوژی grid 18 Grid مکانیزم هایی برای به اشتراک گذاشتن منابع و هماهنگ کردن استفاده از منابع مختلف فراهم می اورد . باعث می شود که سازمان هایی که از نظر جغرافیایی و ساختار سازمانی از هم جدا هستند با هم یک سازمان مجازی بوجود اورند تا کیفیت سرویس خاصی را ارائه دهند . grid computing سیر تکامل تکنولوژی grid 19 تکنولوژی های gridشامل راهکارهای امنیتی مدیریت منابع پروتکل ها سرویس هایی برای مشخص شدن وضعیت منابع و جابجایی داده ها grid computing سیر تکامل تکنولوژی grid 20 تکنولوژی gridطی ده ها سال تحقیق و توسعه هم در قسمت های تحقیقاتی و علمی و هم در زمینه صنعتی پدیدار شده است و اکنون نیز ادامه می یابد . چهار فاز را برای این تکامل در نظر می توان گرفت که در شکل مشاهده می کنید . grid computing 21 grid computing سیر تکامل تکنولوژی grid 22 : Globus toolkit نرم افزاری متن باز بود که به عنوان استانداردی برای grid computingمورد استفاده قرار گرفت . در این راستا GT2پروتکل ها API ,ها و سرویس هایی که در اکثر پروژه ها مورد استفاده قرار می گیرد را پیاده سازی کرد . بعضی از سرویس ها هم وجود دارند که توسط GTبوجود امده اند که به GRID FTPبرای جابجایی داده استفاده می شود اشاره کرد . grid computing سیر تکامل تکنولوژی grid 23 : Open grid service architecture در سال 2002معماری سرویس گرای OGSA استاندارد سازی شد و پیاده سازی هایی از ان انجام شد که از ان جمله می توان به GT3اشاره کرد که در سال 2003به وجود امد . ما GRIDرا به عنوان یک سیستم شامل منابع توزیع شده ی هماهنگ که می توان توسط پروتکل های استاندارد ,باز و عام _منظوره با ان ارتباط برقرار کرد و کیفیت سرویس خاصی را دریافت کرد تعریف می کنیم . در پایین المان های کلیدی را توضیح می دهیم . grid computing سیر تکامل تکنولوژی grid 24 منابع توزیع شده ی هماهنگ : یک Gridاز منابعی هماهنگ و کاربرانی که در دامنه های مختلف با کنترل های مختلف زندگی می کنند تشکیل شده است . استفاده از پروتکل ها و interfaceهای باز ,استاندارد و عام _منظوره : یک gridار پروتکل ها و interfaceهای چند منظوره تشکیل شده که می توانند مسائل بنیادی شناسایی و تصدیق کاربر ,پیدا کردن منبع و دسترسی به منابع را حل کنند . grid computing سیر تکامل تکنولوژی grid 25 کیفیت سرویس : gridاجازه می دهد که منابع به صورت هماهنگ با هم کار کنند تا بتوانند کیفیت سرویس مختلفی را ارائه دهند . به عنوان مثال این کیفیت سرویس ها می توانند مربوط به زمان پاسخ ,توان عملیاتی , موجود بودن سرویس و امنیت ان باشد . grid computing grid معماری 26 Fabric Resource and connectivity Collective services User application grid computing معماری grid 27 : Fabric رابط هایی برای کنترل های محلی در این الیه منابعی که می توانند به اشتراک گذاشته شوند وجود دارند . این قسمت عمل های خاصی برای هر منبع بصورت محلی پیاده سازی می کنند .این منابع می تواند فیزیکی یا منطقی باشد . توانایی بیشتر الیه ی fabricباعث پیچیده و قوی تر شدن اعمالی که به اشتراک گذاشته می شود می گردد در عین حال اگر شرط هایی را بر روی منابعی که در این الیه قرار دارند اعمال کنیم ,استفاده از ان زیرساخت ساده تر می شود . grid computing معماری grid 28 : Connectivity برقراری ارتباط ساده و امن پروتکل های اصلی برای مبادله ی داده و همچنین تصدیق فرستنده و گیرنده را فراهم می اورد . پروتکل های تصدیق که بر روی سرویس های انتقال قرار گرفته اند مکانیزمی امن مبتنی بر الگوریتم های رمزنگاری برای شناسایی و تصدیق کاربران و منابع را فراهم می اورند . grid computing معماری grid 29 : Resource به اشتراک گذاشتن یک منبع این الیه از اتصال امن با منبع ,راه اندازی ,نظارت و کنترل بر منبع را بر عهده دارد .که از طریق الیه connectivityبا منابع ارتباط برقرار می کند . پروتکل هایی که در این الیه وجود دارند )1 :اطالعاتی )2مدیریتی اطالعاتی :برای گرفتن اطالعات در مورد ساختار و حالت کنونی منبع استفاده می شود . مدیریتی :مشخص کردن نوع دسترسی به منابع استفاده می شود که ممکن است دارای پروتکل های نظارتی بر روی عمل انجام شده ,داشته باشند . grid computing معماری grid 30 : Collective هماهنگی چندین منبع شامل پروتکل هایی که مربوط به یک منبع مشخص نمی شود ,بلکه مربوط به مجموعه ای از منابع است. مدل ها و ابزار های برنامه نویسی از توابع این الیه استفاده می کنند و همچنین سرویس های این الیه باید به مسائل امنیت و سیاست ها نیز بپردازند . قسمت هایی که در این الیه وجود دارد خیلی خاص _منظوره هستند و به کاربرد خاص مربوط می شوند و با توجه به نیازهای سازمان مجازی تولید می شوند اما بعضی عمومی بوده و در همه کاربرد ها دیده می شوند . خیلی مهم است که این توابع بصورت استاندارد پیاده سازی شوند . grid computing 31 معماری grid Application کاربر با ان در تماس است .برنامه های کاربردی که در سازمان مجازی کار می کند در این الیه می باشد . برنامه ها می توانند هر سرویسی که در هر الیه قرار گرفته استفاده کنند . الزم به ذکر است که الیه applicationمی تواند بسیاربزرگ باشد و همچنین می تواند frameworkای در این الیه پیاده سازی کرد که برنامه های اصلی روی ان اجرا شوند . grid computing grid معماری سرویس گرای 32 grid computing معماری سرویس گرای grid 33 OGSA بر روی web serviceساخته شده است که چیز های اصلی برای استفاده ی grid serviceرا فراهم می کند . Web serviceای که با استاندارد های OGSAهمخوانی داشته باشد grid service , نامیده می شود . OGSAساختار های الزم برای ساخت سیستم های توزیع شده را فراهم می اورند و شامل interfaceهای استاندارد و behaviorهای الزم برای ساخت یک نمونه از سرویس خاص ,مدیدیت طول عمر سرویس و مدیریت گروهی سرویس ها می باشد . grid computing معماری سرویس گرای grid 34 : Open grid service infrastructure برای ساخت یک سرویس تنها یک زبان توصیف WSDLکافی نیست .ما همچنین به یک استاندارد برای interfaceها نیاز داریم . برای نمونه مکانیزم گزارش خطا باید سرویس های مختلف یکسان باشد تا سرویس کنترل خطا بتواند کار خود را به درستی انجام دهد .این استاندارد در OGSAبه وسیله ی OGSI فراهم می شود . با استفاده از ترکیبی از WSDLو ویژگی های قابل خواندن توسط انسان OGSI , مکانیزم هایی برای نامیدن ,مدیریت طول عمر ,مانیتورینگ ,گروه بندی و مبادله ی اطالعات بین قسمت ها که grid serviceنامیده می شود ؛ فراهم می کند . grid computing grid معماری سرویس گرای 35 grid computing قسمت های مختلف OGSI 36 : Grid service در سیستمی که سرویس ها می توانند بصورت پویا ایجاد شوند ,باید بین تعریف یک سیستم و نمونه های ان تفاوت قائل شد . OGSIاین مفاهیم را به صورت Grid service descriptionو grid service instance معرفی می کند و قابلیت مدیریت انها را دارد . grid computing قسمت های مختلف OGSI 37 Service state metadata و اطالعات داخلی : OGSIمکانیزمی به نام Service dataبرای ارائه metadataو داده های مربوط به حالت سرویس معرفی می کند . Clientمیتواند از نمونه ی سرویس اطالعاتی بخواهد .به عنوان نمونه می تواند در خواست کند که سرویس ,خودش را توصیف کند یا اطالعاتی در مورد interfaceان ,از او بخواهد . grid computing قسمت های مختلف OGSI 38 نامیدن و تحلیل نام : OGSIیک الگوی نامیدن دو سطحی برای نمونه ی سرویس ها فراهم می کند . یک نمونه می تواند یکی یا بیشتر Grid service handleداشته باشد که در واقع یک نام ساده با طول عمر زیاد برای ان نمونه است . این اسم در فرم ) Uniform Resource Identifier (URIخواهد بود . grid computing قسمت های مختلف OGSI 39 مدل خطا : OGSIیک مدل استاندارد برای خطاهایی که یک سرویس ممکن است صادر کند ,تعریف می کند . این خطا ها شامل تولیدکننده و زمان خطا ,یک توضیح اختیاری در مورد خطا و همچنین عوامل خطا است . grid computing قسمت های مختلف OGSI 40 سرویس گروه ها : OGSIابزار هایی برای مدیریت گروهی از سرویس ها دارد . این گروه بندی می تواند برای مقاصد گوناگونی استفاده شود .به عنوان مثال برای انجام یک Operationخاص بر روی کل اعضای گروه . Interface , OGSIهای مختلفی را تعریف می کند که در جدول زیر خالصه شده است . grid computing 41 grid computing 42 THE END grid computing