Abstract

Cloud-based applications require a high degree of automation regarding their IT resource management, for example, to handle scalability or resource failures. This automation is enabled by cloud providers offering management interfaces accessed by applications without human interaction. The properties of clouds, especially pay-per-use billing and low availability of individual resources, demand such a timely system management. We call the automated steps to perform one of these management tasks a “management flow”. Because the emerging behavior of the overall system is comprised of many such management flows and is often hard to predict, we propose defining abstract management flows, describing common steps handling the management tasks. These abstract management flows may then be refined for each individual use case. We cover abstract management flows describing how to make an application elastic, resilient regarding IT resource failure, and how to move application components between different runtime environments. The requirements of these management flows for handled applications are expressed using architectural patterns that have to be implemented by the applications. These dependencies result in abstract management flows being interrelated with architectural patterns in a uniform pattern catalog. We propose a method by use of a catalog to guide application managers during the refinement of abstract management flows at the design stage of an application. Following this method, runtime-specific management functionality and management interfaces are used to obtain automated management flows for a developed application.

Highlights

  • Cloud computing has drastically changed the way in which we consume IT resources

  • We argue that this respects the flexibility and speed that cloud computing has introduced to systems management tasks, such as provisioning, deprovisioning, and scaling of resources

  • Clouds offer resources in very different styles leaving more or less control of the hard- and middleware to the application developer. For each of these cloud service models, we gave a description in the pattern format: Infrastructure as a Service (IaaS)—the offering of servers to customers; Platform as a Service (PaaS)—the offering of a provider-controlled middleware that can be used by customers to host their applications; Software as a Service (SaaS)—providing complete applications that can only be customized by users; and Composition as a Service (CaaS)—the offering of a configurable composition of cloud offerings of different cloud service models

Read more

Summary

Introduction

Clouds offer elasticity—the ability to reserve and free resources flexibly (often within minutes); pay-as-you-go—users only pay for the resources they consume; and standardization—through the use of virtualization and the offering of runtime platforms by providers, application middleware and hardware stacks are commoditized Because of these new environmental properties, the architecture and management of applications have to be adjusted as well. These patterns describe good solutions to common problems in the area of cloud computing as well as clouds and their offerings They allow the classification of cloud providers regarding the patterns they support and, ease application development and requirements management. It enables application managers to address future challenges, for example, to automate the replacement of a cloud provider with a different one or with an in-house data center during the design time Such annotations can help to standardize pattern implementation which enables companies to control the allowed runtime environments.

Offering and Managing Cloud Applications
ITIL-Based Management of IT Systems
Common Management Challenges in Cloud Applications
Offering Customizable Multi-Tenant Cloud Applications
Organization of Cloud Patterns in a Catalog
Overview of the Pattern Catalog
Pattern Format Used in the Catalog
Existing Patterns for Cloud Types and Cloud Service Models
Existing Patterns for Cloud Offerings
Existing Patterns for Cloud Application Architectures
Cloud Application Management Patterns
Elasticity Management Pattern
Resiliency Management Pattern
10. Abstract
12. Abstract
14. Abstract
Cloud Patterns and Implementation Artifacts
Exemplary Annotations of a Cloud Provider
Exemplary Annotations of a Cloud Offering
Requirements Management Through Pattern-Based Diagram Enrichment
Concretization of Architecture Diagrams During the Development Phase
Triggering of Automated Management Flows
Summary and Outlook
56. Oracle
Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call