pdn tech-cloud management-softwares-ver2.0.1

23
c خت ابر مدیریت زیرساوده: محد گیرد.ار میسی قررد بر مورخت ابر مدیریت زیرسای موجود برایرهاش نرمافزا در این گزار تاریخچه: ردیفویسنده ن تاریخه ویرایش شماروضیحات ت۱ سعه فنی و تویق و تحق مهندسی۹۳/۰۴/۲۵ ۲.۰.۱ ۲ وین تعلق دارد. پویش داده نندسی شبکه شرکت مه مستند به این معنویق مادی و کلیه حقو

Upload: pdnsoftco

Post on 14-Jan-2017

415 views

Category:

Engineering


1 download

TRANSCRIPT

Page 1: Pdn tech-cloud management-softwares-ver2.0.1

c

مدیریت زیرساخت ابرمحدوده:

در این گزارش نرم افزارهای موجود برای مدیریت زیرساخت ابر مورد بررسی قرار می گیرد.

:تاریخچهتوضیحاتشماره ویرایشتاریخنویسندهردیف

۱ تحقیق و توسعه فنی و

مهندسی۹۳/۰۴/۲۵۲.۰.۱

۲

کلیه حقوق مادی و معنوی این مستند به شرکت مهندسی شبکه پویش داده نوین تعلق دارد.

Page 2: Pdn tech-cloud management-softwares-ver2.0.1

فهرست مندرجات۴.......................................................................................................................................................................................................- چکیده

۴..............................................................................................................................................................................................- کلید واژه ها۵.....................................................................................................................................................................................................- مقدمه۱۲ -OpenStack...........................................................................................................................................................................................۷

۷...............................................................................................................................................................................................................- معرفی۲.۱OpenStack...................................................................................................................................................................................۸- مؤلفه های ۲.۲OpenStack......................................................................................................................................................................................۹- هسته ی ۲.۳

OpenStack[3]...............................................................................................................................................................۱۰- معرفی مؤلفه های اصلی ۲.۳.۱OpenStack............................................................................................................................................................................۱۲- رابط های مؤلفه های ۲.۳.۲

OpenStack[3]..........................................................................................................................................................۱۵- معماری پیاده سازی ۲.۴۱۷..........................................................................................................................................................................................- اوکالیپتوس۳

۱۷...................................................................................................................................................................................- مؤلفه های اوکالیپتوس۳.۱۴ -OpenNebula.....................................................................................................................................................................................۱۹

۴.۱ -Cloud Interfaces......................................................................................................................................................................................۲۰۴.۲ -Systems Interfaces..................................................................................................................................................................................۲۰

۲۲.....................................................................................................................................................................................................- منابع۵

فهرست تصاویر۷........................................................................................................................................................................................................۱تصویر openstack......................................................................................................................................................۹: مؤلفه های اصلی ۲تصویر Three-Node............................................................................................................................................................۱۶: معماری ۳تصویر ۱۷...............................................................................................................................................................: مؤلفه های اوکالیپتوس۴تصویر OpenNebula............................................................................................................................................۱۹: رابط ها و معماری ۵تصویر

فهرست جداولOpenStack....................................................................................................................................................۱۰: اجزای هسته ی ۱جدول

۲

Page 3: Pdn tech-cloud management-softwares-ver2.0.1

HTTP........................................................................................................................................................................۱۳: متدهای ۲جدول ۱۸...................................................................................................................................................: معرفی مؤلفه های اوکالیپتوس۳جدول

فهرست ضمائم

۳

Page 4: Pdn tech-cloud management-softwares-ver2.0.1

چکیده و کاربردهای آن به شکل یک سرویس به IT ی اصلی رایانش ابری، فراهم ساختن زیرساخت‌مشخصه

.تاکنون نرم افزارهایی برای این منظور طراحی و پیاده سازی شده اند. در اینباشد‌طریقی توسعه پذیر می مورد از این نرم افزارها را معرفی کنیم و مؤلفه های سازنده و معم\\اری آن ه\\ا راسهگزارش قصد داریم

مورد بررسی قرار دهیم.

کلید واژه هاCloud Computing , OpenStack ،\\اوکالیپتوس ,OpenNebula

۴

Page 5: Pdn tech-cloud management-softwares-ver2.0.1

مقدمه۱

رایانش ابری مدلی است برای فراهم کردن دسترسی آسان بر اساس تقاضای کاربر از طریق شبکه به مجموعه ای ذخیره سGGازی، برنامه هGGای کGاربردی و از منابع رایانشی قابل تغییGGر و پیکربنGGدی (مثGGل: شGبکه ها، سGGرورها، فضGGای

سرویس ها) که این دسترسی بتواند با کمترین نیاز به مدیریت منابع و یا نیاز به دخالت مستقیم فراهم کننده سرویسبه سرعت فراهم شده یا آزاد (رها) گردد.

بازمی گردد. زمانی که جان مGک کGارتی اظهGار داشGت کGه۱۹۶۰پیدایش مفاهیم اساسی رایانش ابری به دهه «رایانش ممکن است روزی به عنوان یکGGی از صGGنایع همگGGانی سGGازماندهی شGGود».واژه[ ابGGر در واقGGع بGGر گرفتGGه از

تنهGGا خطGGوط نقطGGه بGGه نقطGGه[۱۹۹۰صنعت تلفن است به این گونه که کمپانی های ارتباطات راه دور کGGه تGGا دهGGه اختصاصی ارائه می کردند، شروع به ارائه شبکه های خصوصی مجازی با کیفیتی مشابه و قیمتهای کمتر نمودند. نمGGاد ابر برای نمایش نقطه مرزی بین بخش هایی که در حیطه مسئولیت کاربرند و آنهایی که در حیطه مسئولیت عرضه کننده بکار گرفته می شد. رایانش ابری مفهوم ابر را به گونه ای گسGGترش می دهGGدکه سGGرورها را نیGGز علوه برزیGGر

ساخت های شبکه در بر گیرد. شرکت گارتنر متوجه وجود موقعیتی در رایانش ابری شد که برای «شکل دهی ارتباط بین۲۰۰۸در اواسط سال

مصرف کنندگان خدمات فناوری اطلعات، بین آنهایی که این سرویسها را مصرف می کنند و آنها که این سرویسGGهارا می فروشند» بوجود می آید.

» زیرساخت رایGGانه ای را کGGه عمومGGاq یGGک بسGGتر۱زیرساخت به عنوان سرویسسرویس های زیرساخت ابری یا « مجازی است را به صورت سرویس ارائه می دهند. کاربران به جای خرید سخت افزار و نرم افزار و فضای مرکGGز داده

شده می خرند.۲(دیتا سنتر) ویا تجهیزات شبکه، همه[ این زیر ساخت ها را به صورت یک سرویس کاملq برونسپاری، اوکالیپتوس و OpenStack , CloudStackبرای مدیریت سرویس های زیرساخت ابری نرم افزارهایی مانند …

1 IaaS2 Outsource

۵

Page 6: Pdn tech-cloud management-softwares-ver2.0.1

را مورد بررسی قرار دهیم.IaaSتوسعه داده شده اند.در این گزارش قصد داریم دو مورد از نرم افزارهای Openstack یک سیستم عامل ابری ست که توسط شرکت RedHat.توسعه داده شده است OpenStackبا فراهم

کردن مجموعه ای کامل از ابزارها این امکان را به کاربران و شرکت ها می دهد تا به راحتی منGGابع خGGود را کنGGترل و و مؤلفه های را آن را مورد بررسی قGGرارمی کنیممدیریت کنند.در ادامه این سیستم عامل را به صورت کامل معرفی

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

می کند.ابرهای خصوصی و ترکیبی را بر روی زیرساخت های موجود پیاده سازی را معرفی می کنیم و رابط های آنرا را مورد بررسی قرار می دهیم.OpenNebulaر بخش سوم نرم افزار د

۶

Page 7: Pdn tech-cloud management-softwares-ver2.0.1

۲OpenStack

معرفی۲.۱

Openstack ل ابریGGGGتم عامGGGGک سیسGGGGت.۳ یGGGGسopenstack نترGGGGGک دیتاسGGGGابع یGGGGGترل منGGGGکن – –محاسGGGGGGGGGGGGGGGGGGGGGGGGباتی،ذخیره سGGGGGGGGGGGازی وG شGGGGGGGGGGGGبکه راG بGGGGGGGGGGGر عهGGGGGGGGGGGGده داGرد.

مدیریت می شود.داشبورد با فراهم کردن یک محیط مبتنGGی بGGر وب بGGه۴کنترل این منابع با استفاده از یک داشبورد] ۱[ در ارتباط باشند.openstackمدیران و کاربران اجازه می دهد تا با اجزاء

، پیاده سازی آسان، مقیاس پذیری گسترده و فراهم سازی مجموعه ای غنGGی از امکانGGاتopenstackهدف پروژه ی می باشد.

3 Cloud Opreating System4 Horizon

۷

۱تصویر

Page 8: Pdn tech-cloud management-softwares-ver2.0.1

OpenStack ۵مؤلفه های۲.۲

OpenStack: ۲[ از تعداد زیادی مؤلفه تشکیل شده است [

• trove

• nova

• glance

• ironic

• designate

• oslo-incubator

• governance

• ...

• cliff

• gantt

• keystone

• taskflow

• cinder

• swift

• python-keystonclientsite

• shara

OpenStackاست، به همین دلیل هرکسی می تواند بر اساس نیاز خود مؤلفه و ویژگی جدیدی۶ پروژه ای متن باز بسیار زیادی تشکیل شGGدهمؤلفه های از OpenStack که در لیست بال مشاهده می کنید همان طوربه آن اضافه کند.

.می پردازیم مؤلفه می باشد. در ادامه به معرفی و بررسی این مؤلفه ها ۹ اصلی آن شامل۷است اما هسته

5 Components6 Open Source7 Core

۸

Page 9: Pdn tech-cloud management-softwares-ver2.0.1

OpenStackهسته ی ۲.۳

می باشد.نمودارopenstackراه اندازی یک ماشین مجازی شامل تعداد زیادی تعاملت بین سرویس های مختلف را نمایش می دهد.openstackزیر ارتباط و تعامل بین مؤلفه های مختلف

مؤلفه می باشد. برای توسعه ی این۹ شامل openstack هسته اصلی می کنیدهمان طور که در نمودار بال مشاهده مؤلفه می پردازیم:۹مؤلفه ها از زبان برنامه نویسی پایتون استفاده شده است.در ادامه به بررسی این

۹

openstack: مؤلفه های اصلی ۲تصویر

Page 10: Pdn tech-cloud management-softwares-ver2.0.1

] OpenStack]۳معرفی مؤلفه های اصلی ۲.۳.۱

OpenStack: اجزای هسته ی ۱جدول

توضیحاتنام پروژهسرویس

ComputeNova

Nova۸ ، نام پروژه محاسباتی OpenStack.است Nova قسمت اصلی یک سیستم IaaSمی باشد که وظیفه ی کنترل محاسبات ابری را برعهده دارد. افراد و شرکت ها می توانند با استفاده از

Nova.سیستم های محاسباتی ابری خود را را مدیریت و هاست کنند می باشد.openstack مدیریت چرخه ی زندگی ماشین های مجازی در محیط Novaوظیفه ی

ماشین مجازی را برعهده دارد.۱۱ و انهدام۱۰، زمانبدی۹مسئولیت به وجود آوردن

NetworkingNeutron فراهم می کند.این پروژه کمک می کند تاOpenStackقابلیت های شبکه را برای دیگر مؤلفه های

می توانند با هم ارتباط برقرار کنند.OpenStackاطمینان حاصل شود هر یک از مؤلفه های

DashboardHorizon

Horizon یک رابط کاربری مبتی بر وب است. این پروژه با تمامی سرویس های openstackدر و تنظیمIP addressesارتباط است و امکاناتی مانند اجرای یک ماشین مجازی، اختصاص

را بر عهده دارد.۱۲کنترل دسترسی استفاده شده است.Bootstrap و Django از فریم ورک های ۱۳برای توسعه و طراحی

ImageService

Glance

ماشین های۱۷ تصاویر۱۶ و بازگردانی۱۵، ثبت کردن۱۴این پروژه سرویس هایی برای پیدا کردن هایی تهیه کرد که شامل۱۸ می توان گزارشRESTful APIمجازی فراهم می کند.با استفاده از

متاداده هایی در مورد تصاویر ماشین مجازی هستند. تصاویر را می توان به صورت های مختلفی ذخیره سازی کرد.Swift-یک فایل سیستمی یا با استفاده از

TelemetryCeilometer openstackهدف این پروژه پیاده سازی سیستم حسابداری و مدیریت برای تمامی سرویس های

می باشد.

Identity Keystoneبرای سرویس های دیگر۲۰ و مجوز۱۹سرویس احزار هویت OpenStack.فراهم می کند

8 Compute9 Spawning10 Scheduling11 Decommissioning12 Access Control13 Develop & Design 14 Discovering15 Registering16 Retrieving17 Images18 Query19 Authentication20 Authorization

۱۰

Page 11: Pdn tech-cloud management-softwares-ver2.0.1

Service

OrchestrationHeat

این امکان را می دهد تا نیازمندی های مربوط به یک نرم افزار۲۱این پروژه به توسعه دهندگان ابری را در یک فایل ذخیره سازی کنند و مشخص کنند چه منابعی برای آن نرم افزار مورد نیاز

مورد نیاز برای اجرای نرم افزار مدیریتinfrastructureاست بدین صورت کمک می کند تا شود.

BlockStorage

Cinderرا برای ۲۲سرویس دخیره سازی بلوک OpenStack.فراهم می کند

ObjectStorage

Swift

Swift مخرنی برای object/blob.است که بسیار در دسترس، توزیع شده و سازگار می باشد افراد و شرکت ها می توانند با استفاده از آن مقدار زیادی از اطلعات را به صورت کارآمد، امن و

ارزان دخیره سازی کنند.Block

StorageCinderرا برای ۲۳سرویس دخیره سازی بلوک OpenStack.فراهم می کند

تعریف شده اسGGت. ایGGن رابGGط امکGGان را۲۴ مؤلفه ی اصلی یک رابط کاربردی برنامه نویسی۹برای هرکدام از این پیاده سGGازیRESTfulمی دهد تا تمامی مؤلفه ها به راحتی بGGا یکGGدیگر در ارتبGGاط باشGGند. ایGGن رابط هGGا بGGه صGGورت

RESTfulشده اند.در ادامه به تعریف API ایGGای مؤلفه هGGمی پردازیم و رابط ه OpenStackرارGGی قGGورد بررسGGرا م می دهیم.

21 Developers22 Block Storage 23 Block Storage 24 API

۱۱

Page 12: Pdn tech-cloud management-softwares-ver2.0.1

OpenStackرابط های مؤلفه های ۲.۳.۲

شده اند.پس در ابتدا این رابط هGGاپیاده سازی RESTful به صورت OpenStackهمان طور که گفته شود رابط های را مورد بررسی قرار می دهیم.آن هارا تعریف و ویژگی

REST ۲۵چیست؟RESTاز معماری شبکه جهانی وب است. به طور دقیق تر، ۲۶ انتزاعی RESTکلGGیک سبک معماری ست که متش

از مجموعه ای هماهنگ از محدودیت های معماری اعمال شده به مؤلفه هGGا، اتصGGال دهنده ها و عناصGGر داده درون یGGک به منظور تمرکز بر نقش مؤلفه ها و محدودیت های موجود هنگام تعامGGل مؤلفه هGGا از RESTسیستم توزیع شده است.

] ۴[د. پروتکل ها چشم پوشی می کن۲۷و سینتکسجزئیات پیاده سازی مؤلفه ها ] ۵[ توسط شش قاعده تعریف می شود:RESTویژگی های یک سیستم

باشد.28 سرور–کلینت .۱ باشد.29بدون حالت.۲30داشته باشد. cacheقابلیت .۳

شده داشته باشد.31سیستم لیه بندی.۴ داشته باشد.32واسط یکنواخت.۵33دارای قابلیت کد در صورت نیاز باشد..۶

25 Representational State Transfer26 Abstraction27 Syntax28 Clinet - Server29 Stateless30 Cacheable31 Layered System32 Unifrom Interface33 Code on Demand

۱۲

Page 13: Pdn tech-cloud management-softwares-ver2.0.1

REST مفهGGوم مرکGGزی 34منGGابع اسGGتفاده می کنGGد.HTTP به گونه ای اسGGت کGGه از پروتکGGل RESTمعماری

و متدهای پروتکلURI را با استفاده از 36نمایش داده می شوند.کلینت درخواستیURI 35می باشند.منابع با کمک HTTP ارسال می کند و سرور بر اساس آن متد و URI.پاسخ را برای کلینت ارسال می کند

HTTP: متدهای ۲جدول

ExamplesActionHTTP

Method

http://example.com/api/orders)retrieve order list(

Obtain information about a resourceGET

http://example.com/api/orders/123)retrieve order #123(

Obtain information about a resourceGET

http://example.com/api/orders)create a new order, from data provided with the

request(Create a new resourcePOST

http://example.com/api/orders/123)update order #123, from data provided with the

request(Update a resourcePUT

http://example.com/api/orders/123)delete order #123(

Delete a resourceDELETE

زیر استفاده کرد:framework می توان از ۳۷ به کمک پایتونRESTful APIبرای پیاده سازی 1. Django

2. Flask

3. Bottle

4. Werkzeug

5. …

34 Resources35 Uniform Resource Identifier36 Request37 Python

۱۳

Page 14: Pdn tech-cloud management-softwares-ver2.0.1

خود با استفاده از ماژول های پایتون اقGGدام بGGه طراحGGیOpenstack ها، توسعه دهندگان frameworkبا وجود این RESTful API :کرده اند.این ماژول ها عبارتند از

• eventlet

• greenlet

• Routes

• ...

• WebOb

• websockify

• wsgiref

• SQLALchemy

Glanceبرای مثال رابط APIود درGGرا مورد بررسی قرار می دهیم.می خواهیم اطلعاتی در مورد تصاویر موج به دست آوریم.Glanceپایگاه داده ی

درخواستی را می سازیم که شکل نهایی این درخواست به صورت زیر می باشد:pycurlابتدا با کمک ماژول

curl -i -X GET -H 'X-Auth-Token: ***' -H 'Content-Type: application/json' -H 'User-Agent: python-glanceclient' http://127.0.0.1:9292/v1/images/detail?sort_key=name&sort_dir=asc&limit=20

:Glanceجواب رابط

HTTP/1.1 200 OKdate: Sun, 06 Jul 2014 07:46:07 GMTcontent-length: 472content-type: application/json; charset=UTF-8x-openstack-request-id: req-29656d86-49ea-427f-9968-b132e307ed3b

}"images": [{"status": "active", "name": "cirros-0.3.2-x86_64", "deleted": false, "container_format": "bare", "created_at": "2014-07-01T07:29:55", "disk_format": "qcow2", "updated_at": "2014-07-01T07:29:55", "id": "fa6a9962-1a6e-4eef-8dda-74b2f0f39b65", "min_disk": 0, "protected": false, "min_ram": 0, "checksum": "64d7c1cd2b6f60c92c14662941cb7913", "owner": "ccfdfca34e6c47259bbffaad7bbdd

e3c", "is_public": true, "deleted_at": null, "properties": {}, "size": 13167616{[{

۱۴

Page 15: Pdn tech-cloud management-softwares-ver2.0.1

] OpenStack]۳معماری پیاده سازی ۲.۴

Three-Node اسGGتفاده از معمGGاری openstackیکی از معماری های متداول برای پیاده سازی with OpenStack

Networking:می باشد

Networking ، بخش های مدیریتی محاسبات و شبکه،Identity service, Image Serviceنود کنترل کننده •

plug-in می کند. همچنین شامل سرویس های پایگاه داده، و داشبورد را اجراmessage broker و NTP۳۸ می باشد.

, Block Storage , Object Storage , Database Serviceدر صورت تمایل، نود کنترل کننده بخش هایی از

Orchestration و Telemetryویژگی های اضافی برای محیط مؤلفه ها را اجرا می کند. این OpenStack

فراهم می کنند. ی دوم سرویس های لیه را اجرا می کند.layer3 agent و Networking plug-in, layer 2 agent ود شبکه ن•

وNAT ، ۴۰ سرویس های لیه سوم شامل مسیریابیتونل ها و شبکه های مجازی می باشد. ۳۹آماده سازیشامل DHCP برای ماشین های مجازی فراهم می کند.اتصال به اینترنت می باشد. همچنین این نود

بGGرایKVM به طGGور پیش فGGرض ایGGن نGGود از مانیتور ماشین مجازی را اجرا می کند.بخش ود محاسبات ن• را اجرا میlayer 2 agent و Networking plug-inاده می کند.همچنین این نود مانیتور ماشین مجازی استف

کند.

38 Network Time Protocol39 Provisioning40 Routing

۱۵

Page 16: Pdn tech-cloud management-softwares-ver2.0.1

۱۶

Three-Node: معماری ۳تصویر

Page 17: Pdn tech-cloud management-softwares-ver2.0.1

۴۱اوکالیپتوس۳

های۴۲ نرم افزاری مبتنی بر لینوکس است که ابرهای خصوصی و ترکیبی را بر روی زیرسGGاخت ] ۷[اوکالیپتوس اوکالیپتوس تجمع منابع محاسباتی، دخیره سازی و شGGبکه را مقGدور می سGازد .ایGن منGابعمی کند .موجود پیاده سازی

] ۶[افزایش یا کاهش داده شوند. ۴۳می توانند بر اساس حجم کاری نرم افزار

مؤلفه های اوکالیپتوس۳.۱

] ۹[] ۸[ تشکیل شده است:مؤلفه ۶اوکالیپتوس از

41 Eucalyptus42 Infrastructure43 Application

۱۷

: مؤلفه های اوکالیپتوس۴تصویر

Page 18: Pdn tech-cloud management-softwares-ver2.0.1

: معرفی مؤلفه های اوکالیپتوس۳جدول توضیحاتزبان برنامه نویسینام مؤلفه

Cloud Controller

)CLC(Java

CLCنقطه ی ورود به کلود محسوب۴۴ برای مدیران،توسعه دهندگان و کاربران نهایی می شود.

ClC،برای به دست آوردن اطلعات در مورد منابع از مؤلفه های دیگر گزارش می گیرد Cluster Controllerبرای زمانبدی در سطح بال تصمیم گیری می کند و درخواستهایی به

ارسال می کند. وظیفه ی مدیریت و نمایش منابعCLCبه عنوان یک رابط کاربری برای پلت فرم مدیریت،

مجازی را دارد.

WarlusJavaWarlus به کاربر اجازه می دهد تا داده ها را صورت Objects/Bucketsدخیره کند.با

را بسازید،پاک کنید ویا لیست کنید.Buckets می توانید Warlusاستفاده از

Cluster Controller

)CC(C

CCبا اجرا شدن برروی یک ماشین واسط که دارای اتصال به شبکه است، ماشین هایی که CLC و NC می کند. به یگدیگر متصل می کنند را اجراCCشبکه های ماشین مجازی را

ها جمع آوری می کند وNCمجموعه ی همچنین اطلعاتی را در مورد CCمدیریت می کند.اجرای ماشین مجازی را زمانبدی می کند.

Storage Controller

)SC( Java

SC با CC و NC در ارتباط است و حجم بلوک ها و spanshotهای ماشین های مجازی در یک کلستر را مدیریت می کند.

Node Controller

)NC( C

NC بر روی همه ی ماشین هایی که VM instances.را هاست می کنند اجرا می شود NC

VM و خاتمه دادن ۴۶رسی، باز۴۵می کند.این فعالیت ها شامل اجرا را کنترل VMفعالیت های

instances.می باشد

Vmware Broker)VB( -

VB۴۷ مؤلفه ی اختیاری اوکالیپتوس است و در صورتی قابل دسترستی که کاربر مشترک� این امکان را فراهم می کند تا ماشین های مجازی بر روی زیرساخت VBاکالیپتوس باشد.

Vmware.پیاده سازی شوند

44 End-Users45 Execution46 Insepection47 Subscriber

۱۸

Page 19: Pdn tech-cloud management-softwares-ver2.0.1

۴OpenNebula

OpenNebula ]۱۰ [ونه ایGGه گGGزار بGGنرم افزاری متن باز، برای مجازی سازی دیتاسنتر استفاده می شود.این نرم اف طراحی شده است تا به راحتی با هر زیرساختی تطبیق داده شود و همچین توسط مؤلفه های جدید توسعه یابد.نGGتیجه یک سیستم ماژولر است که می تواند انواع معماری های ابر پیاده سازی کند و با سGGرویس های دیتاسGGنترهای متعGGدد

] ۱۱[ را بررسی می کنیم.OpenNebulaرابطه داشته باشد.در ادامه رابط های اصلی ++C زبان برنامه نویسی مورد استفاده در هسته ی OpenNebula می باشد.از Rubyبرای توسعه و طراحی CLIو GUI.استفاده شده است

.۴۹ و رابط های سیستم ۴۸ را به دو دسته ی اصلی تقسیم کرده ایم: رابط های ابرOpenNebulaما رابط های

48 Cloud Interfaces49 System Interfaces

۱۹

OpenNebula: رابط ها و معماری ۵تصویر

Page 20: Pdn tech-cloud management-softwares-ver2.0.1

۴.۱Cloud Interfaces

به راحتی ماشین های مجازی،شبکه هاREST APIرابط های ابر این امکان را برای کاربر فراهم می سازد تا از طریق و تصاویر را مدیریت کند.رابط های ابر پیچیدگی های ابر را مخفی می کند و مخصوصGGاq بGGرای کGGاربران انتهGGایی مفیGGد

دو نوع رابط را پیاده سازی می کند:OpenNebulaاست.

توضیحاتنام رابط

EC2-Query API

OpenNebula [12] قابلیت های ارائه شده توسطAmazon's EC2 APIبه طور عمده،قابلیت هایی- که مربوط به مدیریت ماشین مجازی باشند-پیاده سازی می کند.در این صورت می توان از تمامی

دسترسی داشت.OpenNebula Cloud استفاده کرد تا به EC2ابزارهای گزارش

OCCI-OGF است که امکان ساختن،کنترل کردن و مانیتور منابع ابر را فراهمRESTfulاین رابط یک سرویس

می سازد.

۴.۲Systems Interfaces

توضیحاتنام رابط

OpenNebula XML-RPC Interface

OpenNebula است. با استفاده از این رابط می توان به تمامی قابلیت های OpenNebulaرابط اصلی

(ماشین های مجازی،شبکه ها،تصاویر، کاربرها،OpenNebulaدسترسی داشت.برای مثال می توان منابع هاست ها و کلسترها) را مدیریت کرد.

کتابخانه های تخصصی توسعه می دهید یا نیاز به این رابط سطح پایین برای۵۰اگر برای نرم افزارهای ابر استفاده کنید.XML-RPC دارید از رابط OpenNebulaارتباط با هسته ی

The OpenNebula Cloud API

(OCA)

OCA فراهم می کند.رابط های OpenNebulaاین رابط یک راه ساده و راحت برای ارتباط با هسته ی

فراهم می سازد.XML-RPCقابلیت هایی مانند توسعه می دهید که نیازمند دسترسی کامل به قابلیت هایIaaSاگر ابزارهای پیشرفته ی

OpenNebula می باشد از رابط های OCA.استفاده کنید

50 Cloud Applications

۲۰

Page 21: Pdn tech-cloud management-softwares-ver2.0.1

OpenNebula Drivers Interfaces

و زیرساخت های ابر توسط درایورهای مخصوص هر زیر ساخت انجامOpenNebulaتعاملت میان می گیرد.

OpenNebula DatabaseOpenNebulaو اطلعات حسابداری زیادی را در پایگاه داده به صورت مداوم ذخیره سازی۵۱ حالت

می کند.

51 State

۲۱

Page 22: Pdn tech-cloud management-softwares-ver2.0.1

منابع۵[1] Website: https://www.openstack.org/software/

[2] Website: https://github.com/openstack

[3] Website: http://docs.openstack.org/icehouse/install-guide/install/apt-debian/content/ch_overview.html

[4] Website: http://en.wikipedia.org/wiki/Representational_state_transfer

[5] Website: http://www.iranapex.ir/index.php/blog/68-what-is-rest

[6] Website: https://www.eucalyptus.com/docs/eucalyptus/4.0/index.html#install-guide/intro.html

[7] Website: https://github.com/eucalyptus/eucalyptus

[8] Website: https://www.eucalyptus.com/docs/eucalyptus/4.0/index.html#install-guide/euca_components.html

[9] Website: http://en.wikipedia.org/wiki/Eucalyptus_%28software%29

[10] Website: https://github.com/OpenNebula/one

[11] Website: http://docs.opennebula.org/4.6/integration/getting_started/introapis.html#introapis

[12] Website: http://aws.amazon.com/ec2/

۲۲

Page 23: Pdn tech-cloud management-softwares-ver2.0.1

۲۳