Results 1 - 10
of
51
Adaptive control of virtualized resources in utility computing environments
- In Proceedings of the European Conference on Computer Systems
, 2007
"... Data centers are often under-utilized due to over-provisioning as well as time-varying resource demands of typical enterprise applications. One approach to increase resource utilization is to consolidate applications in a shared infrastructure using virtualization. Meeting application-level quality ..."
Abstract
-
Cited by 54 (5 self)
- Add to MetaCart
Data centers are often under-utilized due to over-provisioning as well as time-varying resource demands of typical enterprise applications. One approach to increase resource utilization is to consolidate applications in a shared infrastructure using virtualization. Meeting application-level quality of service (QoS) goals becomes a challenge in a consolidated environment as application resource needs differ. Furthermore, for multi-tier applications, the amount of resources needed to achieve their QoS goals might be different at each tier and may also depend on availability of resources in other tiers. In this paper, we develop an adaptive resource control system that dynamically adjusts the resource shares to individual tiers in order to meet application-level QoS goals while achieving high resource utilization in the data center. Our control system is developed using classical control theory, and we used a black-box system modeling approach to overcome the absence of first principle models for complex enterprise applications and systems. To evaluate our controllers, we built a testbed simulating a virtual data center using Xen virtual machines. We experimented with two multi-tier applications in this virtual data center: a twotier implementation of RUBiS, an online auction site, and a two-tier Java implementation of TPC-W. Our results indicate that the proposed control system is able to maintain high resource utilization and meets QoS goals in spite of varying resource demands from the applications.
A Regression-Based Analytic Model for Dynamic Resource Provisioning of Multi-Tier Applications
- In ICAC
, 2007
"... Abstract — The multi-tier implementation has become the industry standard for developing scalable client-server enterprise applications. Since these applications are performance sensitive, effective models for dynamic resource provisioning and for delivering quality of service to these applications ..."
Abstract
-
Cited by 26 (6 self)
- Add to MetaCart
Abstract — The multi-tier implementation has become the industry standard for developing scalable client-server enterprise applications. Since these applications are performance sensitive, effective models for dynamic resource provisioning and for delivering quality of service to these applications become critical. Workloads in such environments are characterized by client sessions of interdependent requests with changing transaction mix and load over time, making model adaptivity to the observed workload changes a critical requirement for model effectiveness. In this work, we apply a regression-based approximation of the CPU demand of client transactions on a given hardware. Then we use this approximation in an analytic model of a simple network of queues, each queue representing a tier, and show the approximation’s effectiveness for modeling diverse workloads with a changing transaction mix over time. Using the TPC-W benchmark and its three different transaction mixes we investigate factors that impact the efficiency and accuracy of the proposed performance prediction models. Experimental results show that this regression-based approach provides a simple and powerful solution for efficient capacity planning and resource provisioning of multi-tier applications under changing workload conditions. I.
Workload Analysis and Demand Prediction of Enterprise Data Center Applications
"... the creation of resource pools of servers that permit multiple application workloads to share each server in the pool. Understanding the nature of enterprise workloads is crucial to properly designing and provisioning current and future services in such pools. This paper considers issues of workload ..."
Abstract
-
Cited by 15 (3 self)
- Add to MetaCart
the creation of resource pools of servers that permit multiple application workloads to share each server in the pool. Understanding the nature of enterprise workloads is crucial to properly designing and provisioning current and future services in such pools. This paper considers issues of workload analysis, performance modeling, and capacity planning. Our goal is to automate the efficient use of resource pools when hosting large numbers of enterprise services. We use a trace based approach for capacity management that relies on i) the characterization of workload demand patterns, ii) the generation of synthetic workloads that predict future demands based on the patterns, and iii) a workload placement recommendation service. The accuracy of capacity planning predictions depends on our ability to characterize workload demand patterns, to recognize trends for expected changes in future demands, and to reflect business forecasts for otherwise unexpected changes in future demands. A workload analysis demonstrates the burstiness and repetitive nature of enterprise workloads. Workloads are automatically classified according to their periodic behavior. The similarity among repeated occurrences of patterns is evaluated. Synthetic workloads are generated from the patterns in a manner that maintains the periodic nature, burstiness, and trending behavior of the workloads. A case study involving six months of data for 139 enterprise applications is used to apply and evaluate the enterprise workload analysis and related capacity planning methods. The results show that when consolidating to 8 processor systems, we predicted future per-server required capacity to within one processor 95 % of the time. The accuracy of predictions for required capacity suggests that such resource savings can be achieved with little risk. I.
A survey of Autonomic Computing -- degrees, models and applications
"... Autonomic Computing is a concept that brings together many fields of computing with the purpose of creating computing systems that self-manage. In its early days it was criticised as being a “hype topic” or a rebadging of some Multi Agent Systems work. In this survey, we hope to show that this was n ..."
Abstract
-
Cited by 14 (0 self)
- Add to MetaCart
Autonomic Computing is a concept that brings together many fields of computing with the purpose of creating computing systems that self-manage. In its early days it was criticised as being a “hype topic” or a rebadging of some Multi Agent Systems work. In this survey, we hope to show that this was not indeed ’hype ’ and that, though it draws on much work already carried out by the Computer Science and Control communities, its innovation is strong and lies in its robust application to the specific self-management of computing systems. To this end, we first provide an introduction to the motivation and concepts of autonomic computing and describe some research that has been seen as seminal in influencing a large proportion of early work. Taking the components of an established reference model in turn, we discuss the works that have provided significant contributions to that area. We then look at larger scaled systems that compose autonomic systems illustrating the hierarchical nature of their architectures. Autonomicity is not a well defined subject and as such different systems adhere to different degrees of Autonomicity, therefore we cross-slice the body of work in terms of these degrees. From this we list the key applications of autonomic computing and discuss the research work that is missing and what we believe the community should be considering.
Optimal Multivariate Control for Differentiated Services on a Shared Hosting Platform
"... Abstract — Today’s shared hosting platforms often employ virtualization to allow multiple enterprise applications with time-varying resource demands to share a common infrastructure in order to improve resource utilization. Meeting application-level quality of service (QoS) goals becomes a challenge ..."
Abstract
-
Cited by 13 (7 self)
- Add to MetaCart
Abstract — Today’s shared hosting platforms often employ virtualization to allow multiple enterprise applications with time-varying resource demands to share a common infrastructure in order to improve resource utilization. Meeting application-level quality of service (QoS) goals becomes a challenge in such an environment as enterprise applications often have a multi-tier architecture and complex interactions and dependencies among individual tiers. In addition, when the shared infrastructure becomes overloaded, appropriate resource control needs to be performed at these individual tiers in a coordinated fashion in order to provide differentiated services to co-hosted applications. In this paper, we present an adaptive multivariate controller that dynamically adjusts the resource shares to individual tiers of multiple applications in order to meet a specified level of service differentiation. The controller parameters are automatically tuned at runtime based on a quadratic cost function and a system model that is learned online using a recursive least-squares (RLS) method. To evaluate our controller design, we built a testbed hosting two instances of the RUBiS application, a multi-tier online auction web site, using Xen virtual machines. Our results indicate that our controller is able to meet given QoS differentiation targets between co-hosted applications while the total demand from these applications exceeds the capacities of the shared systems. I.
Cloudward bound: Planning for beneficial migration of enterprise applications to the cloud
- In Proceedings of SIGCOMM
, 2010
"... In this paper, we tackle challenges in migrating enterprise services into hybrid cloud-based deployments, where enterprise operations are partly hosted on-premise and partly in the cloud. Such hybrid architectures enable enterprises to benefit from cloud-based architectures, while honoring applicati ..."
Abstract
-
Cited by 11 (0 self)
- Add to MetaCart
In this paper, we tackle challenges in migrating enterprise services into hybrid cloud-based deployments, where enterprise operations are partly hosted on-premise and partly in the cloud. Such hybrid architectures enable enterprises to benefit from cloud-based architectures, while honoring application performance requirements, and privacy restrictions on what services may be migrated to the cloud. We make several contributions. First, we highlight the complexity inherent in enterprise applications today in terms of their multi-tiered nature, large number of application components, and interdependencies. Second, we have developed a model to explore the benefits of a hybrid migration approach. Our model takes into account enterprise-specific constraints, cost savings, and increased transaction delays and wide-area communication costs that may result from the migration. Evaluations based on real enterprise applications and Azure-based cloud deployments show the benefits of a hybrid migration approach, and the importance of planning which components to migrate. Third, we shed insight on security policies associated with enterprise applications in data centers. We articulate the importance of ensuring assurable reconfiguration of security policies as enterprise applications are migrated to the cloud. We present algorithms to achieve this goal, and demonstrate their efficacy on realistic migration scenarios.
Database replication policies for dynamic content applications
- In EuroSys’06
, 2006
"... The database tier of dynamic content servers at large Internet sites is typically hosted on centralized and expensive hardware. Recently, research prototypes have proposed using database replication on commodity clusters as a more economical scaling solution. In this paper, we propose using database ..."
Abstract
-
Cited by 10 (2 self)
- Add to MetaCart
The database tier of dynamic content servers at large Internet sites is typically hosted on centralized and expensive hardware. Recently, research prototypes have proposed using database replication on commodity clusters as a more economical scaling solution. In this paper, we propose using database replication to support multiple applications on a shared cluster. Our system dynamically allocates replicas to applications in order to maintain application-level performance in response to either peak loads or failure conditions. This approach allows unifying load and fault management functionality. The main challenge in the design of our system is the time taken to add database replicas. We present replica allocation policies that take this time delay into account and also design an efficient replica addition method that has minimal impact on other applications. We evaluate our dynamic replication system on a commodity cluster with two standard benchmarks: the TPC-W e-commerce benchmark and the RUBIS auction benchmark. Our evaluation shows that dynamic replication requires fewer resources than static partitioning or full overlap replication policies and provides over 90 % latency compliance to each application under a range of load and failure scenarios.
R-Capriccio: A Capacity Planning and Anomaly Detection Tool for Enterprise Services with Live Workloads
, 2007
"... As the complexity of IT systems increases, performance management and capacity planning become the largest and most difficult expenses to control. New methodologies and modeling techniques that explain large-system behavior and help predict their future performance are now needed to effectively tac ..."
Abstract
-
Cited by 10 (3 self)
- Add to MetaCart
As the complexity of IT systems increases, performance management and capacity planning become the largest and most difficult expenses to control. New methodologies and modeling techniques that explain large-system behavior and help predict their future performance are now needed to effectively tackle the emerging performance issues. With the multi-tier architecture paradigm becoming an industry standard for developing scalable client-server applications, it is important to design effective and accurate performance prediction models of multi-tier applications under an enterprise production environment and a real workload mix. To accurately answer performance questions for an existing production system with a real workload mix, we design and implement a new capacity planning and anomaly detection tool, called R-Capriccio, that is based on the following three components: i) a Workload Profiler that exploits locality in existing enterprise web workloads and extracts a small set of most popular, core client transactions responsible for the majority of client requests in the system; ii) a Regression-based Solver that is used for deriving the CPU demand of each core transaction on a given hardware; and iii) an Analytical Model that is based on a network of queues that models a multi-tier system. To validate R-Capriccio, we conduct a detailed case study using the access logs from two heterogeneous production servers that represent customized client accesses to a popular and actively used HP Open View Service Desk application.
EC2 Performance Analysis for Resource Provisioning of Service-Oriented Applications
"... Abstract. Cloud computing is receiving increasingly attention as it provides infinite resource capacity and “pay-as-you-go ” resource usage pattern to hosted applications. To maintain its SLA targets, resource provisioning of service-oriented applications in the cloud requires reliable performance f ..."
Abstract
-
Cited by 10 (5 self)
- Add to MetaCart
Abstract. Cloud computing is receiving increasingly attention as it provides infinite resource capacity and “pay-as-you-go ” resource usage pattern to hosted applications. To maintain its SLA targets, resource provisioning of service-oriented applications in the cloud requires reliable performance from the cloud resources. In this paper, we study performance behavior of small instances in Amazon EC2. We demonstrate that the performance of virtual instances is relatively stable over time with fluctuations of mean response time within at most 8 % of the long-term average. Moreover, we also show that different supposedly identical instances often have very different performance, up to a ratio 4 from each other. We consider this as an important issue that must be addressed, but also as an opportunity as it allows one to assign each instance with a task that matches its own performance profile. 1

