Introduction to Cloud Computing and the Aneka Platform Dr. Rajkumar Buyya Cloud Computing and Distributed Systems (CLOUDS) Lab Dept. of Computing and Information Systems The University of Melbourne, Australia www.cloudbus.org www.manjrasoft.com Major Sponsors/Supporters
The Next Revolution in IT The Big Switch in IT Classical Computing Buy & Own Hardware, System Software, Applications often to meet peak needs. Install, Configure, Test, Verify, Evaluate Manage .. Finally, use it $$$$....$(High CapEx) Cloud Computing Subscribe Use $ - pay for what you use, based on QoS Every 18 months?
Outline “Computer Utilities” Cloud Computing and Related Paradigms Vision and Promising IT Paradigms/Platforms Cloud Computing and Related Paradigms Trends, Definition, Cloud Benefits and Challenges Market-Oriented Cloud Architecture SLA-oriented Resource Allocation Global Cloud Exchange Aneka: Cloud Application Platform Summary and Thoughts for Future
“Computer Utilities” Vision: Implications of the Internet 1969 – Leonard Kleinrock, ARPANET project “As of now, computer networks are still in their infancy, but as they grow up and become sophisticated, we will probably see the spread of “Computer Utilities”, which, like present electric and telephone utilities, will service individual homes and offices across the country”. During the last 40 years, several advances have taken place in both “computing” and “communications” areas that are turning the vision of “Computer Utilities” in to a reality.
Attributes/Capabilities Computing Paradigms and Attributes: Realizing the ‘Computer Utilities’ Vision } ? Web Data Centres Utility Computing Service Computing Grid Computing P2P Computing Market-Oriented Computing Cloud Computing … + -Ubiquitous -Reliable Scalable Autonomic Dynamic discovery Composable -QoS -SLA - … Trillion $ business Paradigms Attributes/Capabilities
Outline “Computer Utilities” Cloud Computing and Related Paradigms Vision and Promising IT Paradigms/Platforms Cloud Computing and Related Paradigms Trends, Definition, Cloud Benefits and Challenges Market-Oriented Cloud Architecture SLA-oriented Resource Allocation Global Cloud Exchange Aneka: Cloud Application Platform Summary and Thoughts for Future
Very popular: too many are “In Search” of Cloud Computing
Open Data Center Alliance (ODCA) for Cloud Computing
Defining Clouds: There are many views for what is cloud computing? Over 20 definitions: http://cloudcomputing.sys-con.com/read/612375_p.htm Renting “remote storage” backup Renting “remote server” hosting Web server Renting “remote more servers” to manage large workload Buyya’s Scientific definition of Cloud Computing “Cloud is a market-oriented distributed computing system consisting of a collection of inter-connected and virtualised computers that are dynamically provisioned and presented as one or more unified computing resources based on service-level agreements (SLAs) established through negotiation between the service provider and consumers.” SLA = {negotiated and agreed QoS parameters + rewards + penalties for violation of agreement....}
Subscription-Oriented Cloud Services: X{compute, apps, data, Subscription-Oriented Cloud Services: X{compute, apps, data, ..} as a Service (..aaS) Public Cloud Cloud Manager Private Cloud Clients Other Cloud Services Govt. Cloud Services
Rentable Cloud Services Infrastructure as a Service (IaaS) CPU, Storage: Amazon.com, Nirvanix, GoGrid…. Platform as a Service (PaaS) Google App Engine, Microsoft Azure, Manjrasoft Aneka.. Software as a Service (SaaS) SalesForce.Com Software as a Service (SaaS) Platform as a Service (PaaS) Infrastructure as a Service (IaaS) ....
Cloud Deployment Models Public/Internet Clouds 3rd party, multi-tenant Cloud infrastructure & services: * available on subscription basis Private/Enterprise Clouds Cloud model run within a company’s own Data Center / infrastructure for internal and/or partners use. Hybrid/Inter Clouds Mixed usage of private and public Clouds: Leasing public cloud services when private cloud capacity is insufficient
Cloud Applications Scientific/Tech Applications Business Applications Consumer/Social Applications Science and Technical Applications Business Applications Consumer/Social Applications
When will Cloud spending become 50% of IT spending or reach to a trillion $ business/year? 2000 600? 1000? 30% 50% 120? 15% 2016 2020? 2020? Buyya’s Guestimate!
Cloud Computing Challenges: Dealing with too many issues Resource Metering Billing Pricing Scalability Reliability Virtualization QoS Service Level Agreements Energy Efficiency Provisioning on Demand Utility & Risk Management Security Privacy Trust Legal & Regulatory Uhm, I am not quite clear…Yet another complex IT paradigm? Software Eng. Complexity Programming Env. & Application Dev.
Outline “Computer Utilities” Cloud Computing and Related Paradigms Vision and Promising IT Paradigms/Platforms Cloud Computing and Related Paradigms Trends, Definition, Cloud Benefits and Challenges Market-Oriented Cloud Architecture SLA-oriented Resource Allocation Global Cloud Exchange Aneka: Cloud Application Platform Summary and Thoughts for Future
Market-Oriented Cloud Architecture: QoS negotiation and SLA-based Resource Allocation
Cloud to expand (lease more resources) with increase in demand
Cloud to shrink (unlease resources) with decrease in demand
Outline “Computer Utilities” Cloud Computing and Related Paradigms Vision and Promising IT Paradigms/Platforms Cloud Computing and Related Paradigms Trends, Definition, Cloud Benefits and Challenges Market-Oriented Cloud Architecture SLA-oriented Resource Allocation Global Cloud Exchange Aneka: Cloud Application Platform Summary and Thoughts for Future
Multiple Applications Multiple Infrastructures Aneka: The Cloud Application Platform (CAP) for Resource-Intensive Apps (Available as Manjrasoft Product) Lightweight Container hosting multiple services. All programming models available from within the same container (unlike others) SDK containing APIs for multiple programming models and tools Runtime Environment for managing application execution management Suitable for Development of Enterprise Cloud Applications Cloud enabling legacy applications Portability for Customer Apps: Enterprise ↔ Public Clouds .NET/Win ↔ Mono/Linux Multiple Applications Thread Task ... MapReduce 1. SDK Aneka 2. Runtime Multi-core Cluster Grid Cloud 2100 Multiple Infrastructures
Aneka: The Cloud Application Platform (CAP) for Resource-Intensive Apps (Available as Manjrasoft Product) Lightweight Container hosting multiple services. All programming models available from within the same container (unlike others) SDK containing APIs for multiple programming models and tools Runtime Environment for managing application execution management Suitable for Development of Enterprise Cloud Applications Cloud enabling legacy applications Portability for Customer Apps: Enterprise ↔ Public Clouds .NET/Win ↔ Mono/Linux Patent (PCT)
Aneka as a Cloud Application Platform Application Development Applications & Services Cloud Middleware Aneka Scheduling & Execution Monitoring Billing SLA & QoS User Management Application Dynamic Provisioning Bag of Tasks Dist. Threads MapReduce … Platform Infrastructure Datacenters Clusters Desktop PCs Public Clouds
Programming / Deployment Model Aneka: components public DumbTask: ITask { … public void Execute() …… } Programming / Deployment Model Aneka enterprise Cloud for(int i=0; i<n; i++) { … DumbTask task = new DumbTask(); app.SubmitExecution(task); } Executor Executor work units Client Agent Executor Scheduler internet work units Executor Aneka Worker Service Aneka Manager Client Agent internet Aneka User Agent
Aneka - Dynamic deployment of Application Tasks on Clouds Aneka Workker/Executor Aneka Application Aneka Manager Manager / Executor Aneka Threads
Aneka Support for InterCloud / Federation of Resource Pools XenServer Pool Aneka + Xen Server private Cloud VMWare Pool Aneka + VMWare private Cloud Amazon EC2 Pool Aneka + public EC2 Windows Azure Aneka + public Azure Executor Executor Executors Scheduler private enterprise network Scheduler internet publicly available resources (physical and virtual) Private Cloud VPN (virtual resources) Executors/Schedulers Client Libraries Public Cloud
Aneka Case Studies
(GoFront: A unit of China Southern Railway Group) Application: Locomotive design CAD rendering Raw Locomotive Design Files (Using AutoDesk Maya) Using Maya Graphical Mode Directly Case 1: Single Server 4 cores server Aneka Maya Renderer Use private Aneka Cloud GoFront Private Aneka Cloud LAN network (Running Maya Batch Mode on demand) Case 2: Aneka Enterprise Cloud Aneka utilizes idle desktops (30) to decrease task time from days to hours Time (in hrs) Single Server Aneka Cloud
A scalable architecture for TitanStrike on-line Gaming Portal TitanStrike Private Aneka Cloud LAN network (Running Game plugins on Demand) Case 2: Aneka Enterprise Cloud = Scalability Aneka-based GameController The local scheduler interacts with Aneka and distributes the load in the cloud. Distributed log parsing logs Case 1: Single Server = Huge Overload Single scheduler controlling the execution of all the matches. Game Servers Gamers profiles Players statistics Team playing Multiple games Titan Strike On Line Gaming Portal Centralized log parsing logs Single GameController
Indian Space Research Organization (ISRO) - ADRIN Distribution Aneka Cloud Receiving station processing Private Cloud Citrix Xen Public Cloud Amazon AWS Archiving
Health Care: SaaS Cloud for ECG Sensor Data Analysis
IEEE Scalable Computing Challenge at CCGrid 2010 Conference
Global Recognition for Aneka: Frost, Telstra…. -> 2010 Frost & Sullivan "New Product Innovation" Award -> 2011 Telstra Innovation Challenge, “People’s Choice” Award
Outline “Computer Utilities” Cloud Computing and Related Paradigms Vision and Promising IT Paradigms/Platforms Cloud Computing and Related Paradigms Trends, Definition, Cloud Benefits and Challenges Market-Oriented Cloud Architecture SLA-oriented Resource Allocation Global Cloud Exchange Aneka: Cloud Application Platform Summary and Thoughts for Future
Summary Several Computing Paradigms have promised to deliver “Computing Utilities” vision: Cloud Computing is the most recent kid in the block promising to turn vision into reality Many exciting business and consumer applications enabled. Aneka is rapidly emerging as a platform for: Building Clouds (especially “private”) and their apps. Accelerating Applications and Managing their execution. Already used in engineering, life science, gaming, and business intelligence applications.
Wiley Press, New York, USA, Feb 2011 References Quick Overview: Rajkumar Buyya and Karthik Sukumar, Platforms for Building and Deploying Applications for Cloud Computing, CSI Communications, Vol.35, No. 1, Pages: 6-11, ISSN 0970-647X, Computer Society of India (CSI), Mumbai, India, May 2011. Aneka: C. Vecchiola, X. Chu, and R. Buyya, Aneka: A Software Platform for .NET-based Cloud Computing, High Speed and Large Scale Scientific Computing, 267-295pp, IOS Press, Amsterdam, Netherlands, 2009. Software – download: http://www.manjrasoft.com/ Wiley Press, New York, USA, Feb 2011