Upload
jaden-collett
View
220
Download
0
Embed Size (px)
Citation preview
Cloud Computing
Technologies
Morteza Sargolzaei Javanhttp://www.msjavan.tk
بسمه تعاِِل ي
1
2
روند حرکت سیستم های محاسباتی
P2P1996
1997
2004
2007
1996
…
Cluster1990
…
Volunteer computing
Grid Computing
Utility computing
Cloud computing
Pervasive computing
ییت
من ات
عاوض
وم
هار
زااف
م نر
یط
بارت
ای
هاه
بکش ها
زارفت ا
خس
ی سبات
ی محام ها
ستسی
3
نقش محاسبات ابری در محاسبات فراگیر
محاسبات فراگیر افزایش ظرفیت محاسباتی
افزایش بهره وری در استفاده از منابع
رفع/ ایجاد مسائل امنیتی جدید
بهبود بکارگیری از شبکه های ارتباطی
توسعه سریعتر نرم افزارها
4
شمایی از توده ابری!
The Cloud
Microsoft
Amazon
Yahoo
Zoho
Salesforce
Rackspace
5
مثالی از الیه های محاسبات ابری
Cloud Application(Google Docs)
Cloud Platform(Apps Engine)
BigTable
Cloud Storage (Infrastructure )(BigTable DB)
Cloud Service(Apps Service)
Cloud Client(Firefox)
6
موضوعات مطرح در محاسبات ابری
Cloud Computing
Storage
Web 2.0
IaaS
PaaS
SaaS
Web Services
Public Cloud
Private Cloud
Enterprise
Cloud
Amazon EC2
Am
azon
S3
Google AppEngine
SalesForce.com
Mosso
VMWare
Hypervisors
Manjrasoft Aneka
ESX
Migration
Resource Metering
Billing
QoSVirtualization
Service Level
Agreement
Provisioning on Demand
Pricing
Utility Managemen
tSecurity
Privacy
Scalability
Reliability
Software Eng. Complexity
Energy Efficiency
Data Locality
Trust
Interoperability
Pricing
Pay as you GoModel
7
مدل قیمت گذاری مبتنی بر استفاده
Traditional Model 100 servers * $1,500 + 3 years * $13,140 electricity/year + 3
years * 2 staff * $100,000 salary/year = $789,420
Pay as you go Model 100 servers * $0.40 instance-hour * 3 years * 8,760
hours/year = $1,051,200
8
$1,051,200 * 0.75% = $788,400
Pay as you Go
9
مقایسه هزینه ها در زیرساخت های مختلف
زیرسZZZZZZZاخت ابری
برونسپاری زیرسZZZZZZZاخت داخلی
سرمایه گذاری اولیه دالر40000 دالر0 دالر0
هزینه های راه اندازی دالر10000 دالر5000 دالر1000
ماهیانZZZZه دالر0 دالر4000 دالر2400 هزینZZZZه سرویس
هزینه ماهینه پرسنل دالر3200 دالر0 دالر1000
از دالر149000 دالر129000 دالر106000 بعZد خZالص هزینZه سه سال
10
Application Architecture
11
الیه های مختلف ماشین مجازی
12
مثاِِلی از استقرار یک برنامه وب سرور در ابر
13
استفاده از الگوی استقرار
14
Database sharding
15
موازی سازی و تعدیل بار
16
امنیت ماشین های مجازی
17
Amazon
Cloud Provider
18
Amazon Cloud Services
Amazon Elastic Cloud Compute (Amazon EC2) Amazon Simple Storage Service (Amazon S3) Amazon Simple Queue Service (Amazon SQS) Amazon CloudFront Amazon SimpleDB
19
Amazon Elastic Cloud Compute (EC2)
20
Amazon Simple Storage Service (S3)
21
Amazon Simple Queue Service (SQS)
22
Amazon CloudFront
23
Amazon SimpleDB
24
کنسول سرویس های وب آمازون
25
Aneka
A Platform for Enterprise Grid/Cloud Computing
27
ویژگی ها
Middleware for Enterprise Grids/Clouds
Service oriented architecture .NET/Mono based environment
Languages: C#, C++, VB, Delphi, Java/IKVM… … and 20 more languages
Platforms: Windows XP/2000/2003 Linux & Mac OS X
28
Why Aneka?
Multiple programming/deployment models Multiple scheduling strategies Multiple authentication models Multiple persistence backends Multiple platform and OSs
29
Aneka & Clouds
Infrastructure as a Service
Platform as a Service
Software as a Service
Aneka fits into the cloud architecture at the platform layer. This means that it provides a programming based interface for developing distributed application and a virtual execution
environment in which the applications developed according to the published APIs can run.
Public CloudPrivate Cloud
Aneka
30
Current Applications
Scientific Distributed evolutionary computation Proteine structure prediction
Commercial Engineering: Go Front (China): Train models
rendering Media and games: platform for on-line gaming Financial: risk analysis Office automation: Excel integration
Educational Image filtering Image rendering Distributed systems teaching
31
معماری سیستم
Executor
Scheduler
Executor
Executor Executor
Manager
work units
internet
internet
Aneka enterprise Cloud
Manager
work units
Manager(s)
Client Applicatio
ns
Workers
Aneka Container
32
مدل های برنامه نویسی
Development Aneka is Platform as a Service cloud
middleware This means:
It exposes an API for development It provides access to the cloud at
programming level More precisely…
It provides different programming models
33
Aneka
Scenario
Executor
Scheduler
Executor
Executor Executor
work units
internet
internet
Aneka enterprise Cloud
Manager
Programming / Deployment Model
public DumbTask: ITask {
… public void Execute()
{ …… }}
for(int i=0; i<n; i++){ …
DumbTask task = new DumbTask(); app.SubmitExecution(task);
}
34
مدل های برنامه نویسی
Overview
infrastructure
end users
scheduling
execution
coordination
client component
abstractions
units of execution
Task Model
TaskScheduler
TaskExecutor
TaskManager
Task
MapReduce Model
MapReduceScheduler
MapReduceExecutor
MapReduceManager
Mapper
Reducer
35
مدل های برنامه نویسی
Currently supported: Task Programming Model Thread Programming Model Map Reduce Programming Model Parameter Sweeping Model .. Implement your own..
36
Task Programming Model
Used to model Independent Bag of Tasks (BoT) applications The application is a collection of
execution unit Each execution unit is not related to
the others There is no order in the execution of
the units
37
Thread Programming Model
Based on the concept of distributed thread Like a local thread but executed remotely Implements a subset of the common operations
on thread Start Stop State Query Join
Provides a quick way for porting on a distributed middleware, multi-threaded applications
38
MapReduce Programming Model
Based on the MapReduce framework from Google Functional-style like primitives:
A distributed application becomes a collection of map and reduce operations.
39
MapReduce Programming Model
Developing MapReduce based Applications Define map and reduce operations Provide the data Run the MapReduce engine
Input data
map & reduce
MapReduce engineMap & Reduce network
Execution:-File staging-Task scheduling-Failed task resubmission-Replication and Fault tolerance-Collection of result
40
Parameter Sweeping Model
Based on the Task Programming Model Provides a set of facilities to run applications
where ..all the tasks are homogeneous (same task) ..the specific instance of tasks is specialized
by parameters ..all the possible combination of parameters
are explored by generating a task instance for each of the combinations
[A,1,#][A,2,#]
[B,2,#]
SaaS
Software as a Service
41
SaaSابر از دیدگاه
42
SaaSانواع خدمات در الیه
مشارکت در تقویم، زمان بندی و مدیریت وظایفمشارکت در مدیریت رویدادهامشارکت در مدیریت تماس هامشارکت در مدیریت پروژهمشارکت در واژه پردازیمشارکت در صفحات گستردهمشارکت در پایگاه دادهمشارکت در ارائهذخیره سازی و به اشتراک گذاری فایل ها و دیگر محتواهای آنالینبه اشتراک گذاری تصاویر دیجیتالکنترل همه چیز با دسک تاپ های تحت وبدیگر راه های مشارکت آنالینمشارکت از طریق شبکه های اجتماعی و گروه افزارهامشارکت از طریق بالگ ها و ویکی
43
Calendar
44
Contact
45
مدیریت پروژه
46
واژه پردازی
47
صفحه گسترده
48
پایگاه داده
49
ارائه
50
به اشتراک گذاری
51
CRM
52
SaledForceبرنامه های تجاری
53
میزکار
54
ویرایش تصویر
55
تعامل بین سرویس ها
56
با تشکر از توجه شما
57