cloud computing technologies دکتر محمدکاظم اکبري...
TRANSCRIPT
Cloud Computing
Technologies
دکتر محمدکاظم اکبريسيدمحمدرضاميرزابابائي
))ي بسمه تعاِِل
1
2
روند حرکت سیستم های محاسباتی
P2P1996
1997
2004
2007
1996
…
Cluster1990
…
Volunteer computing
Grid Computing
Utility computing
Cloud computing
Pervasive computing
ییت
من ات
عاوض
وم
هار
زااف
م نر
یط
بارت
ای
هاه
بکش ها
زارفت ا
خس
ی سبات
ی محام ها
ستسی
3
نقش محاسبات ابری در محاسبات فراگیر
محاسبات فراگیر افزایش ظرفیت محاسباتی
افزایش بهره وری در استفاده از منابع
رفع/ ایجاد مسائل امنیتی جدید
بهبود بکارگیری از شبکه های ارتباطی
توسعه سریعتر نرم افزارها
4
مقایسه رویکرد های مختلف محاسباتی
محاسبات توزیع شده
کاربرد گراسرویس گرا
مقیاس پذیری
کالسترها
2وب
ابری
توری
5
شمایی از توده ابری!
The Cloud
Microsoft
Amazon
Yahoo
Zoho
Salesforce
Rackspace
6
الیه های مختلف محاسبات ابری
Data CentersClusters
Storage
Other Grids/Clouds
Virtualization
VM Management & Deployment
Amazon S3, EC2
OpenNebula, Eucalyptus
Mosso
Web 2.0 Interface
Programming API
Scripting & ProgrammingLanguages
Google AppEngine
Microsoft Azure
Manjrasoft Aneka
Google Apps (Gmail, Docs,…)
Salesforce.com
QoS M
ete
ring
SLA
Negoti
ati
on
Adm
issi
on C
ontr
ol
Pri
cing a
nd B
illin
g
Acc
ounti
ng
Public Cloud
Private Cloud
Soci
al N
etw
orks
Sci
enti
fic
Com
puti
ng
Am
use
ment
CD
Ns
Finan
cial
Ap
plic
ati
on
s
Infrastructure as a Service
Platform as a Service
Software as a Service
7
مثالی از الیه های محاسبات ابری
Cloud Application(Google Docs)
Cloud Platform(Apps Engine)
BigTable
Cloud Storage (Infrastructure )(BigTable DB)
Cloud Service(Apps Service)
Cloud Client(Firefox)
8
موضوعات مطرح در محاسبات ابری
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
های مرتبط وضعیت توسعه تکنوِِلوژیبا ابر
9
Pricing
Pay as you GoModel
10
مدل قیمت گذاری مبتنی بر استفاده
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
11
$1,051,200 * 0.75% = $788,400
Pay as you Go
12
مقایسه هزینه ها در زیرساخت های مختلف
زیرسbbbbbbbاخت ابری
برونسپاری زیرسbbbbbbbاخت داخلی
سرمایه گذاری اولیه دالر40000 دالر0 دالر0
هزینه های راه اندازی دالر10000 دالر5000 دالر1000
ماهیانbbbbه دالر0 دالر4000 دالر2400 هزینbbbbه سرویس
هزینه ماهینه پرسنل دالر3200 دالر0 دالر1000
از دالر149000 دالر129000 دالر106000 بعbد خbالص هزینbه سه سال
13
Application Architecture
14
الیه های مختلف ماشین مجازی
15
مثاِِلی از استقرار یک برنامه وب سرور در ابر
16
استفاده از الگوی استقرار
17
Database sharding
18
موازی سازی و تعدیل بار
19
مثاِِلی دیگر از موازی سازی
20
امنیت ماشین های مجازی
21
Amazon
Cloud Provider
22
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
23
Amazon Elastic Cloud Compute (EC2)
24
Amazon Simple Storage Service (S3)
25
Amazon Simple Queue Service (SQS)
26
Amazon SQS
27
Amazon CloudFront
28
Amazon SimpleDB
29
کنسول سرویس های وب آمازون
30
PaaS
Platform as a Service
31
PaaS
32
PaaS Architecture
33
Aneka
A Platform for Enterprise Grid/Cloud Computing
35
ویژگی ها
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
36
Why Aneka?
Multiple programming/deployment models Multiple scheduling strategies Multiple authentication models Multiple persistence backends Multiple platform and OSs
37
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
38
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
39
معماری سیستم
Executor
Scheduler
Executor
Executor Executor
Manager
work units
internet
internet
Aneka enterprise Cloud
Manager
work units
Manager(s)
Client Applicatio
ns
Workers
Aneka Container
40
مدل های برنامه نویسی
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
41
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);
}
42
مدل های برنامه نویسی
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
43
مدل های برنامه نویسی
Currently supported: Task Programming Model Thread Programming Model Map Reduce Programming Model Parameter Sweeping Model .. Implement your own..
44
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
45
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
46
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.
47
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
48
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
49
SaaSابر از دیدگاه
50
معماری برنامه ابری
51
SaaSانواع خدمات در الیه
مشارکت در تقویم، زمان بندی و مدیریت وظایفمشارکت در مدیریت رویدادهامشارکت در مدیریت تماس هامشارکت در مدیریت پروژهمشارکت در واژه پردازیمشارکت در صفحات گستردهمشارکت در پایگاه دادهمشارکت در ارائهذخیره سازی و به اشتراک گذاری فایل ها و دیگر محتواهای آنالینبه اشتراک گذاری تصاویر دیجیتالکنترل همه چیز با دسک تاپ های تحت وبدیگر راه های مشارکت آنالینمشارکت از طریق شبکه های اجتماعی و گروه افزارهامشارکت از طریق بالگ ها و ویکی
52
Calendar
53
Contact
54
مدیریت پروژه
55
واژه پردازی
56
صفحه گسترده
57
پایگاه داده
58
ارائه
59
به اشتراک گذاری
60
CRM
61
SaledForceبرنامه های تجاری
62
میزکار
63
ویرایش تصویر
64
تعامل بین سرویس ها
65
با تشکر از توجه شما
66