Towards Autonomic Adaptive Scaling of General Purpose Virtual Worlds Deploying a large-scale OpenSim grid using OpenStack cloud infrastructure and Chef.

Slides:



Advertisements
Similar presentations
A Ridiculously Easy & Seriously Powerful SQL Cloud Database Itamar Haber AVP Ops & Solutions.
Advertisements

SLA-Oriented Resource Provisioning for Cloud Computing
High Performance Computing Course Notes Grid Computing.
Virtual Machine Usage in Cloud Computing for Amazon EE126: Computer Engineering Connor Cunningham Tufts University 12/1/14 “Virtual Machine Usage in Cloud.
Cloud Computing to Satisfy Peak Capacity Needs Case Study.
Introduction to DBA.
An Approach to Secure Cloud Computing Architectures By Y. Serge Joseph FAU security Group February 24th, 2011.
A Service Platform for On-Line Games DebanJan Saha, Dambit Sahu, Anees Shaikh (IBM TJ Watson Research Center, NY) Presented by Gary Huang March 17, 2004.
Technical Architectures
What is Cloud Computing? o Cloud computing:- is a style of computing in which dynamically scalable and often virtualized resources are provided as a service.
Nikolay Tomitov Technical Trainer SoftAcad.bg.  What are Amazon Web services (AWS) ?  What’s cool when developing with AWS ?  Architecture of AWS 
.NET Mobile Application Development Introduction to Mobile and Distributed Applications.
AN INTRODUCTION TO CLOUD COMPUTING Web, as a Platform…
INTRODUCTION TO CLOUD COMPUTING CS 595 LECTURE 4.
New Challenges in Cloud Datacenter Monitoring and Management
11 SERVER CLUSTERING Chapter 6. Chapter 6: SERVER CLUSTERING2 OVERVIEW  List the types of server clusters.  Determine which type of cluster to use for.
Microsoft Load Balancing and Clustering. Outline Introduction Load balancing Clustering.
Distributed Data Stores – Facebook Presented by Ben Gooding University of Arkansas – April 21, 2015.
Cloud Computing Why is it called the cloud?.
1/36. 2/36 Towards Sustained Scalability of Communication Networks Mike P. Wittie
Software to Data model Lenos Vacanas, Stelios Sotiriadis, Euripides Petrakis Technical University of Crete (TUC), Greece Workshop.
INTRODUCTION TO CLOUD COMPUTING CS 595 LECTURE 7 2/23/2015.
Department of Computer Science Engineering SRM University
A Cloud is a type of parallel and distributed system consisting of a collection of inter- connected and virtualized computers that are dynamically provisioned.
Promoting Open Source Software Through Cloud Deployment: Library à la Carte, Heroku, and OSU Michael B. Klein Digital Applications Librarian
Cloud Computing. What is Cloud Computing? Cloud computing is a model for enabling convenient, on-demand network access to a shared pool of configurable.
Network Aware Resource Allocation in Distributed Clouds.
| nectar.org.au NECTAR TRAINING Module 1 Overview of cloud computing and NeCTAR services.
Introduction to Hadoop and HDFS
Cloud Computing & Amazon Web Services – EC2 Arpita Patel Software Engineer.
Presented by: Sanketh Beerabbi University of Central Florida COP Cloud Computing.
Chapter 14 Part II: Architectural Adaptation BY: AARON MCKAY.
Issues Autonomic operation (fault tolerance) Minimize interference to applications Hardware support for new operating systems Resource management (global.
Zibin Zheng DR 2 : Dynamic Request Routing for Tolerating Latency Variability in Cloud Applications CLOUD 2013 Jieming Zhu, Zibin.
11 CLUSTERING AND AVAILABILITY Chapter 11. Chapter 11: CLUSTERING AND AVAILABILITY2 OVERVIEW  Describe the clustering capabilities of Microsoft Windows.
CS525: Big Data Analytics MapReduce Computing Paradigm & Apache Hadoop Open Source Fall 2013 Elke A. Rundensteiner 1.
| nectar.org.au NECTAR TRAINING Module 1 Overview of cloud computing and NeCTAR services.
| nectar.org.au NECTAR TRAINING Module 4 From PC To Cloud or HPC.
3/12/2013Computer Engg, IIT(BHU)1 CLOUD COMPUTING-1.
Vignesh Ravindran Sankarbala Manoharan. Infrastructure As A Service (IAAS) is a model that is used to deliver a platform virtualization environment with.
3/12/2013Computer Engg, IIT(BHU)1 CLOUD COMPUTING-2.
SQL Server 2012 Session: 1 Session: 4 SQL Azure Data Management Using Microsoft SQL Server.
Seminar On AppleTalk.
Alfresco Enterprise on Azure Shah Rahman Founder and CEO, CloudlyIO.
Resource Optimization for Publisher/Subscriber-based Avionics Systems Institute for Software Integrated Systems Vanderbilt University Nashville, Tennessee.
 Cloud Computing technology basics Platform Evolution Advantages  Microsoft Windows Azure technology basics Windows Azure – A Lap around the platform.
INTRODUCTION TO GRID & CLOUD COMPUTING U. Jhashuva 1 Asst. Professor Dept. of CSE.
Cofax Scalability Document Version Scaling Cofax in General The scalability of Cofax is directly related to the system software, hardware and network.
© 2015 MetricStream, Inc. All Rights Reserved. AWS server provisioning © 2015 MetricStream, Inc. All Rights Reserved. By, Srikanth K & Rohit.
Amazon Web Services. Amazon Web Services (AWS) - robust, scalable and affordable infrastructure for cloud computing. This session is about:
Md Baitul Al Sadi, Isaac J. Cushman, Lei Chen, Rami J. Haddad
Course: Cluster, grid and cloud computing systems Course author: Prof
Organizations Are Embracing New Opportunities
Smart Cities and Communities and Social Innovation
IOT Critical Impact on DC Design
Infrastructure Orchestration to Optimize Testing
Peer-to-peer networking
The Future? Or the Past and Present?
Red Hat User Group June 2014 Marco Berube, Cloud Solutions Architect
Introduction to Cloud Computing
Real IBM C exam questions and answers
Containers and Software-Defined Servers
20409A 7: Installing and Configuring System Center 2012 R2 Virtual Machine Manager Module 7 Installing and Configuring System Center 2012 R2 Virtual.
The Globus Toolkit™: Information Services
AWS Cloud Computing Masaki.
CS510 - Portland State University
Cloud Computing: Concepts
Nolan Leake Co-Founder, Cumulus Networks Paul Speciale
Presentation transcript:

Towards Autonomic Adaptive Scaling of General Purpose Virtual Worlds Deploying a large-scale OpenSim grid using OpenStack cloud infrastructure and Chef Matthew Delaney, Eleni Stroulia

OpenSim Architecture and Scalability Issues Types of virtual worlds OpenSim The Software Architecture of OpenSim Scalability issues Distributed Scene Graph

Types of virtual worlds There are two broad classes of virtual worlds  Massively Multiplayer Online Games  General Purpose Virtual Worlds

Massively Multiplayer Online Games  Content and behavior of the world is known beforehand and does not change often  The static nature of this type of virtual world can be exploited to improve performance

General Purpose Virtual Worlds  Content of the world can be altered at any time by some number of agents (users, scripted objects, etc)  The dynamic nature of general purpose virtual worlds make many types of optimizations difficult

Open Simulator  Built as an open source virtual world that implements the protocols used by Second Life  Until recently worked with the Second Life viewer  Has gained a large following and is used by virtual world enthusiasts, educational institutions, the US military, and companies (such as Intel and IBM)

Open Simulator  Virtual world is split into 256m^2 regions  This spatial partitioning makes it easy to assign chunks of land to servers  Issues  Limits user intaraction  Cross-region objects are problematic  What region does the object belong to?  Issues with collision detection and object interaction  Descision to use static partitioning a result of choices made by Second Life developers.

OpenSim Architecture -1

OpenSim Architecture -2

OpenSim Architecture -3  Adding new functionality is easy  New region modules can interact with any part of the simulator  Simulator centric  Most of the simulation and communication processes run on a single server.  When any part of the heartbeat slows the simulation as a whole slows  User experience is severely degraded once the simulator drops below 30 FPS

Scaling Up OpenSim: Objectives  Consistently maintain an immersive user experience for everyone  At least 30fps  Minimal latency  Accommodate new users  Avoid over-provisioning resources  This should happen automatically in a way that is transparent to the end user  Manually administering server nodes is slow and not sustainable

Scalability of OpenSim What does a large scale deployment look like? Each grid service can be split up and run on different machines Normally each simulator will be running on its own machine MySQL databases for grid services

Scalability of OpenSim: Barriers  Simulator-centric architecture prevents scaling by adding additional hardware  Unable to reassign regions to different simulators during run-time without severe impact on user experience  Different regions may be using a different set of region modules that could conflict with each other  If a region has active users, they must be moved to a temporary location while the region is reassigned to a new simulator  As a result, usually each region to a single simulator (over- provisioning)

Scalability of OpenSim: Towards a Solution Intel’s Distributed Scene Graph (DSG)  Split the major computation- and communication- intensive components of the simulator into distinct actors  Actors can run on their own hardware that is optimized for their purposes  Actors communicate with each other using a pub/sub model

OpenSim Architecture with DSG

Scalability of OpenSim with DSG Each grid service can be split into separate instances running on different machines Each service could be on its own machine

OpenSim on the Cloud with OpenStack and Chef What is OpenStack? What is Chef?

 An open source cloud operating system  Very similar to Amazon’s EC2 service  Provides on demand access to compute, storage and networking resources  API  Has its own robust RESTful API  Supports Amazon’s EC2 API  Has significant backing from a large number of large companies  IBM, Rackspace, NASA, RedHat, Intel, Cisco, and more What is OpenStack?

What is Chef?  Open-source systems-integration framework  Cloud automation  Deploy/remove server nodes on cloud infrastructure  Assign a set of roles to a node and automatically install and configure applications based on these roles  Obtain system and performance information for each node  Search for nodes based on role, system info, performance info, and more  Configuration management  Easy to change configuration of an application across hundreds of nodes

Towards Autonomic Adaptive Scaling of Virtual Worlds Proposed OpenSim grid deployment on the cloud using OpenStack First steps

Proposed OpenSim Grid Deployment On The Cloud Edge Clouds Core Cloud

Proposed OpenSim Grid Deployment On The Cloud Core Cloud  Low latency, high bandwidth connection to edge clouds  More computational and storage resources Edge Clouds  Each edge cloud located in geographically different areas  low latency to end users  Virtual world viewers connect to the edge cloud

First Steps  Automate grid deployment using existing architecture with Chef  Manually relocate regions to different simulators using Chef  Collect system usage information to get an idea of where additional resources are needed and where resources are being wasted  Automate grid deployment using DSG architecture with Chef  Manually add/remove/alter simulator actors using Chef  Automatically add/remove/alter simulator actors using Chef based on current system loads  Based on past usage information try to anticipate usage and adjust appropriately

References  Lake, Bowman, Liu; Distributed scene graph to enable thousands of interacting users in a virtual environment; 9 th Annual Workshop on Network and Systems Support for Games; 2010, 1-6  Liu, Bowman, Adams, Hurliman, Lake; Scaling Virtual Worlds: Simulation Requirements and Challenges; Proceedings of the 2010 Winter Simulation Conference  Gupta, Demers, Gehrke et al; Scalability for Virtual Worlds; IEEE 25 th International Conference on Data Engineering; 2009,  accessed on Oct. 18,  accessed on Oct. 20,  accessed on Oct. 20,

Questions? Thank You!