1.75k likes | 2.86k Views
Resource Allocation in Cloud Computing. Resource Allocation. How to maximize resources in order to most effectively provide cloud computing services. Presentation Plan. Distributed Clouds and their Challenges IaaS Resource Allocation based on pre-known demands
E N D
Resource Allocation in Cloud Computing
Resource Allocation • How to maximize resources in order to most effectively provide cloud computing services Resource Allocation in Cloud Computing
Presentation Plan • Distributed Clouds and their Challenges • IaaS • Resource Allocation based on pre-known demands • On the fly Resource Allocation • SLA • Resource Pricing and Equilibrium Allocation Policy • Questions Resource Allocation in Cloud Computing
Papers Used • Debraj:2. D. Ardagna, M. Trubian, and L. Zhang, “SLA based resource allocation policies in autonomic environments,” Journal of Parallel and Distributed Computing, vol. 67, 2007, pp. 259-270.9.Domain based resource management by Dongwan Shin and HakanAkkan (Secure Computing Laboratory ,Department of Computer Science and Engineering, New Mexico Tech, Socorro, NM 87801 Kiran:1. W. Daniel, “Exploiting dynamic resource allocation for efficient parallel data processing in the cloud,” IEEE Transactions on Parallel and Distributed Systems, vol. 22, 2011, pp. 985-997.3. S. Di and C.-L. Wang, “Dynamic optimization of multiattribute resource allocation in self organizing clouds,” IEEE Transactions on Parallel and Distributed Systems, vol. 24, 2013,Patricia:4. P. T. Endo, A. V. de Almeida Palhares, N. N. Pereira, G. E. Goncalves, D. Sadok, J. Kelner, B. Melander, and J. E. Mangs, "Resource allocation for distributed cloud: concepts and research challenges," Network, IEEE, vol. 25, pp. 42-46.6. T. Fei, Magoule, x, and F. s, “Resource pricing and equilibrium allocation policy in cloud computing,” Computer and Information Technology, 2010, pp. 195-202.8. T. Dillon, C. Wu, and E. Chang, “Cloud Computing: Issues and Challenges,” IEEE Int'l. Conf. Advanced Info. Networking and Apps., 2010, pp. 27-33.Prasanna:5. G. Wei, A. Vasilakos, Y. Zheng, and N. Xiong, “A game-theoretic method of fair resource allocation for cloud computing services,” Supercomputing, vol. 54, 2010, pp. 252-269.7. Yazir, Y.O.; Matthews, C.; Farahbod, R.; Neville, S.; Guitouni, A.; Ganti, S.; Coady, Y.; , "Dynamic Resource Allocation in Computing Clouds Using Distributed Multiple Criteria Decision Analysis," Cloud Computing (CLOUD), 2010 IEEE 3rd International Conference on , vol., no., pp.91-98, 5-10 July 2010doi: 10.1109/CLOUD.2010.66 Resource Allocation in Cloud Computing
Resource Allocation in Cloud Computing Distributed Clouds and Challenges - Patricia
Resource Allocation in Cloud Computing Current Cloud Computing Providers • Large, consolidated data centers • Problems • Resource over-provisioning • Heat dissipation/temperature control • Greater average distance to users
Resource Allocation in Cloud Computing Distributed Clouds
Resource Allocation in Cloud Computing Distributed Clouds: Benefits • Scalable services • On demand usage • Pay as you go/business model • Geodiversity
Resource Allocation in Cloud Computing Distributed Clouds: Challenges
Resource Allocation in Cloud Computing Resource Modeling How can the infrastructural resources be represented? • Optimization algorithms depend on it • Must take into account both physical and virtual capabilities • Two Main Challenges • Granularity of Resource Description • Interoperability
Resource Allocation in Cloud Computing Granularity of Resource Description • How much detail should be used to describe cloud resources? • Less details = less time spent optimizing • More details = more flexibility/leverage of resources
Resource Allocation in Cloud Computing Interoperability How do you communicate between different/external clouds? • Vertical – Applications should interact in a standard way regardless of underlying cloud • Horizontal – Different clouds should be able to interact with one another • Benefit: “borrowing” resources from one another
Resource Allocation in Cloud Computing Resource Offering & Treatment • Not necessarily offered using the same metrics as internal modeling • Example: Internally see 100 individual GB of memory, externally offer one 100 GB chunk • Generic • Serve as many apps as possible • Easy for users to deal with (while still maximizing utilization)
Resource Allocation in Cloud Computing Resource Offering & Treatment • Must be able to control all resources in cloud • Currently implemented by each provider individually • Need common protocol for resource reservations in heterogeneous distributed clouds • Example criteria • Topology • Jurisdiction • Node proximity • Application interaction • Scalability
Resource Allocation in Cloud Computing Resource Discovery and Monitoring • Resource Discovery – provider has to find appropriate resources • Must minimize inter domain traffic • Cannot let new overhead impact QoS
Resource Allocation in Cloud Computing Resource Discovery and Monitoring • Resource Monitoring • Balancing act between amount of control overhead and the frequency of refreshing • Two main categories • Active – nodes autonomously send to central authority • Passive – 1+ entities request info from nodes • Either/Both categories are valid, just have to keep them in sync with one another
Resource Allocation in Cloud Computing Resource Selection & Optimization How do you choose which entities to use? • A priori – allocates optimal resources first • A posteri – allocates decent resource first then improves
Resource Allocation in Cloud Computing Conclusion • Many challenges... many opportunities
Resource Allocation in Cloud Computing Cloud Computing Today • Same concepts apply
Infrastructure as a Service • (IaaS) • Domain based resource allocation in IaaS • - Debraj
Introduction • Iaasprovides users with infrastructure services such as computation and data storage, heavily dependent upon virtualization techniques. • Current IaaS service providers have adopted a user-based service model which creates lack of support for scalable management of users and resources as well as lack of flexible pricing model • A domain-based framework has been proposed for provisioning and managing users and resources
Approach • Iaas components • Virtual resources • Uniquely identifiable cloud users • Role based access control (RBAC) domain • RBAC components • U = U x D represents the set of domain users associated with domains, and U x ¢ represents the set of cloud users not associated with any domain. P represents the set of permissions to use virtualized resources associated domains • - R and S represents the set of roles and sessions, respectively. • UA, PA, and RH, representing the relation of user-to-role assignment, permission-to-role assignment, and role hierarchy, respectively. RH is partial order on R, written as ::5.
Approach contd. • user: S → U represents a function mapping each session Si to the single user. • - roles: S → 2R represents a function mapping Si to a set of roles, where roles is subset of {rl(Ǝr' ≥ r)[(user(Si), r') E UAl} and Si has permissions UrEroles(s;) {pI (Ǝr" ≤ 5 r) [(p,r") E PAl}.
Approach, design and Implementation • Domain based Management and Delegations • Management thorugh delegation of the administrative functions • Allocation of virtualized resources to each domain
IAAS Conclusion • A novel approach to managing visualized resources in cloud computing by introducing the notion of domain and injecting a role-based security policy support into IaaS service model. • The approach provides benefits such as domain optimized resource management , domain based advanced policy support based on role, domain based security log analysis and better pricing model. • Proof of Concept prototype has been implemented by modifying an existing IaaS framework called Eucalyptus.
Resource Allocation based • on pre-known demands • - Kiran
Parallel data processing in the cloud • Parallel processing framework • Mostly in clusters • Now deployed in IaaS • Flexible resource allocation in IaaS • On-demand, pay as you go • Is it utilized? (Our Focus)
Opportunities Required? - Scheduler knows cloud environment - Job description specify dependencies Can we use MapReduce? - Not suitable - Can’t shut down idle VMs. Why?
Challenges in Cloud • Opaque data locality • Where is the data stored? • Topology aware scheduling • Infer topologies in IaaS? • Unclear if it works • Network Virtualization • Makes life difficult • Any solutions? • Yes! Nephele…
Nephele • Data processing framework for cloud • Master-Worker Pattern • Cloud Controller (CC) • Manage resources • Job Manager (JM) • Master • Task Manager (TM) • Worker • Persistent Storage (Amazon S3) • Store intermediate data
Input Job • Modeled as DAG (Job Graph) • Multiple input, multiple output • Explicit communication path • Job graph • Simple: Task & relationships • No explicit parallelization • No mapping of Task -> Instance • Submit Job graph to JM
Nephele Job processing • Convert Job graph -> Execution graph • 2 levels of details: • Abstract: • Task-level • Instance allocation/de-allocation • Concrete: • Fine-grained • Map subtasks -> instances • Execution stages • Group vertex (A vertex in Job graph) • Stage start -> allocate instances • Send subtasks to TM • Store intermediate results to persistent storage
Nephele Job • Channel types • Network (same stage, different VMs) • In-memory (same stage, same VM) • File (across stages, persistent storage) • Dynamic Resource allocation • Delete instances no longer required • Allocate instances based on job requirements • Reuse instance from previous stage • Is the “scheduler” really “dynamic”? • Dynamic resource allocation only • Job is fixed throughout the execution
Verdict • First to exploit dynamic resource allocation by IaaS • Current focus= minimize processing time or cost • Improves resource utilization => less cost • Savings in cost & time marginal, but grow by size of input data set • Open Issues (What can you do more?) • Adapt to resource overload or underutilization during job execution automatically
Dynamic optimization of multiattribute resource allocation in Self-Organizing Clouds • VM technology and Resource Multiplexing • Self Organizing Cloud(SOC) • Large number of desktop computers • P2P Network • Each participant is Provider & Consumer • Autonomous location of nodes • 2 Issues (Our focus) • Multi-attribute range query • Optimize execution time by determining optimal share of resources
Problem Formulation • Simple Monetary model to analyze economic implications • Total payment is given by-> • where Δt is execution time of tij on ps • Given submitted task tij with designated e(tij) and w(tij) • 1. Efficiently locate a qualified node • In large peer-to-peer network • Controlled message delivery • 2. Optimize tij‘s execution time ->
Optimal Resource Allocation • Lemma 1.The optimal allocation (denoted by r*(tij)) exists iff Inequalities (6) and (7) are met • Proof: Read on your own • Assume the qualified node ps that satisfies above inequalities can be found by resource discovery protocol (To be discussed later) • More math in the paper to calculate the optimization function • Out of the scope of our discussion
Optimal Resource Allocation • - a(tij) is a “firm” bound – r(tij) cannot be greater than a(tij) • - e(tij) is a “soft” bound – r(tij) can be lower than e(tij) because e(tij) is just an estimate by user • - To optimize resource allocation without exhausting all possible combinations, relax (5) to (11) • - Let denote a subset of • resource attributes π • - C be budget • - CO-STEP( ,C) computes optimal • resource vector for tij w.r.t
Optimal Proportional-Share Allocation • Dynamic Optimal Proportional Share (DOPS) • Resource Allocation method • Leverages Proportional Share Model (PSM) • 2 Main procedures (handlers) • Slice Handler • Event Handler • Performed by a node’s VMM • Slice Handler • Activated periodically • Equally scale resource allocation to tasks • So each task can acquire additional resources proportional to their demand • Event Handler • Activated only on Task arrival and completion • Redistributes resource
Pointer-Gossiping CAN (PG-CAN) • Resource Discovery Protocol • Content Addressable Network (CAN) as DHT Overlay • Duty Node (responsible for a multidimensional range zone)
Pointer-Gossiping CAN (PG-CAN) • Periodically propagate state-update to duty node (flooding) • Inefficient • Search area may be too large • Improvement • Periodically diffuse a few “pointer” messages to distant nodes (like breadcrumbs) • In negative direction • 2k hops where k = 0, 1, 2,… • Two ways • Spreading • Hopping • Hopping is better