Lean Computing for the Cloud - Eric Bauer - E-Book

Lean Computing for the Cloud E-Book

Eric Bauer

0,0
74,99 €

-100%
Sammeln Sie Punkte in unserem Gutscheinprogramm und kaufen Sie E-Books und Hörbücher mit bis zu 100% Rabatt.
Mehr erfahren.
Beschreibung

Applies lean manufacturing principles across the cloud service delivery chain to enable application and infrastructure service providers to sustainably achieve the shortest lead time, best quality, and value * Applies lean thinking across the cloud service delivery chain to recognize and minimize waste * Leverages lessons learned from electric power industry operations to operations of cloud infrastructure * Applies insights from just-in-time inventory management to operation of cloud based applications * Explains how traditional, Information Technology Infrastructure Library (ITIL) and Enhanced Telecom Operation Map (eTOM) capacity management evolves to Lean Computing for the Cloud

Sie lesen das E-Book in den Legimi-Apps auf:

Android
iOS
von Legimi
zertifizierten E-Readern

Seitenzahl: 332

Bewertungen
0,0
0
0
0
0
0
Mehr Informationen
Mehr Informationen
Legimi prüft nicht, ob Rezensionen von Nutzern stammen, die den betreffenden Titel tatsächlich gekauft oder gelesen/gehört haben. Wir entfernen aber gefälschte Rezensionen.



IEEE Press445 Hoes Lane Piscataway, NJ 08854

IEEE Press Editorial BoardTariq Samad, Editor in Chief

George W. Arnold

Ziaoou Li

Ray Perez

Giancarlo Fortino

Vladimir Lumelsky

Linda Shafer

Dmitry Goldgof

Pui-In Mak

Zidong Wang

Ekram Hossain

Jeffrey Nanzer

MengChu Zhou

Kenneth Moore, Director of IEEE Book and Information Services (BIS)

Technical Reviewers

Caroline Chappell, Heavy ReadingTim Coote, CMLStuart Curley, Northgate ISRocky Heckman, MicrosoftPaul Schuster, BPSteve Woodward, Cloud Perspectives

Lean Computing for the Cloud

Eric Bauer

Copyright © 2016 by The Institute of Electrical and Electronics Engineers, Inc.

Published by John Wiley & Sons, Inc., Hoboken, New Jersey. All rights reserved.

Published simultaneously in Canada.

No part of this publication may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, electronic, mechanical, photocopying, recording, scanning, or otherwise, except as permitted under Section 107 or 108 of the 1976 United States Copyright Act, without either the prior written permission of the Publisher, or authorization through payment of the appropriate per-copy fee to the Copyright Clearance Center, Inc., 222 Rosewood Drive, Danvers, MA 01923, (978) 750-8400, fax (978) 750-4470, or on the web at www.copyright.com. Requests to the Publisher for permission should be addressed to the Permissions Department, John Wiley & Sons, Inc., 111 River Street, Hoboken, NJ 07030, (201) 748-6011, fax (201) 748-6008, or online at http://www.wiley.com/go/permission.

Limit of Liability/Disclaimer of Warranty: While the publisher and author have used their best efforts in preparing this book, they make no representations or warranties with respect to the accuracy or completeness of the contents of this book and specifically disclaim any implied warranties of merchantability or fitness for a particular purpose. No warranty may be created or extended by sales representatives or written sales materials. The advice and strategies contained herein may not be suitable for your situation. You should consult with a professional where appropriate. Neither the publisher nor author shall be liable for any loss of profit or any other commercial damages, including but not limited to special, incidental, consequential, or other damages.

For general information on our other products and services or for technical support, please contact our Customer Care Department within the United States at (800) 762-2974, outside the United States at (317) 572-3993 or fax (317) 572-4002.

Wiley also publishes its books in a variety of electronic formats. Some content that appears in print may not be available in electronic formats. For more information about Wiley products, visit our web site at www.wiley.com.

Library of Congress Cataloging-in-Publication Data is available.

ISBN: 978-1-119-23187-5

CONTENTS

Introduction

Acknowledgments

Abbreviations

1 Basics

1.1 CLOUD COMPUTING FUNDAMENTALS

1.2 ROLES IN CLOUD COMPUTING

1.3 APPLICATIONS

1.4 DEMAND, SUPPLY, CAPACITY, AND FUNGIBILITY

1.5 DEMAND VARIABILITY

1.6 CHAPTER REVIEW

NOTES

2 Rethinking Capacity Management

2.1 CAPACITY MANAGEMENT

2.2 DEMAND MANAGEMENT

2.3 PERFORMANCE MANAGEMENT

2.4 CANONICAL CAPACITY MANAGEMENT

2.5 THREE CLOUD CAPACITY MANAGEMENT PROBLEMS

2.6 CLOUD CAPACITY MANAGEMENT AS A VALUE CHAIN

2.7 CHAPTER REVIEW

3 Lean Thinking on Cloud Capacity Management

3.1 LEAN THINKING OVERVIEW

3.2 GOAL

3.3 SEEING WASTE (NONVALUE-ADDING ACTIVITIES)

3.4 KEY PRINCIPLES

3.5 PILLAR: RESPECT

3.6 PILLAR: CONTINUOUS IMPROVEMENT

3.7 FOUNDATION

3.8 CADENCE

3.9 LEAN CAPACITY MANAGEMENT PHILOSOPHY

3.10 CHAPTER REVIEW

NOTES

4 Lean Cloud Capacity Management Strategy

4.1 LEAN APPLICATION SERVICE PROVIDER STRATEGY

4.2 LEAN INFRASTRUCTURE SERVICE PROVIDER STRATEGIES

4.3 FULL STREAM OPTIMIZATION

4.4 CHAPTER REVIEW

NOTES

5 Electric Power Generation as Cloud Infrastructure Analog

5.1 POWER GENERATION AS A CLOUD INFRASTRUCTURE ANALOG

5.2 BUSINESS CONTEXT

5.3 BUSINESS STRUCTURE

5.4 TECHNICAL SIMILARITIES

5.5 IMPEDANCE AND FUNGIBILITY

5.6 CAPACITY RATINGS

5.7 BOTTLED CAPACITY

5.8 LOCATION OF PRODUCTION CONSIDERATIONS

5.9 DEMAND MANAGEMENT

5.10 DEMAND AND RESERVES

5.11 SERVICE CURTAILMENT

5.12 BALANCE AND GRID OPERATIONS

5.13 CHAPTER REVIEW

NOTES

6 Application Capacity Management as an Inventory Management Problem

6.1 THE APPLICATION CAPACITY MANAGEMENT SERVICE DELIVERY CHAIN

6.2 TRADITIONAL APPLICATION SERVICE PRODUCTION CHAIN

6.3 ELASTICITY AND DEMAND-DRIVEN CAPACITY MANAGEMENT

6.4 APPLICATION SERVICE AS RETAIL ANALOG

6.5 CHAPTER REVIEW

NOTES

7 Lean Demand Management

7.1 INFRASTRUCTURE DEMAND MANAGEMENT TECHNIQUES

7.2 APPLICATION DEMAND MANAGEMENT TECHNIQUES

7.3 FULL STREAM ANALYSIS METHODOLOGY

7.4 CHAPTER REVIEW

8 Lean Reserves

8.1 WHAT IS RESERVE CAPACITY?

8.2 USES OF RESERVE CAPACITY

8.3 RESERVE CAPACITY AS A FEATURE

8.4 TYPES OF RESERVE CAPACITY

8.5 LIMITS OF RESERVE CAPACITY

8.6 IDEAL RESERVE

8.7 CHAPTER REVIEW

9 Lean Infrastructure Commitment

9.1 UNIT COMMITMENT AND INFRASTRUCTURE COMMITMENT

9.2 FRAMING THE UNIT COMMITMENT PROBLEM

9.3 FRAMING THE INFRASTRUCTURE COMMITMENT PROBLEM

9.4 UNDERSTANDING ELEMENT STARTUP TIME

9.5 UNDERSTANDING ELEMENT SHUTDOWN TIME

9.6 PULLING IT ALL TOGETHER

9.7 CHAPTER REVIEW

NOTES

10 Lean Cloud Capacity Management Performance Indicators

10.1 PERFECT CAPACITY METRICS

10.2 CAPACITY MANAGEMENT METRICS

10.3 INFRASTRUCTURE COMMITMENT METRICS

10.4 WASTE METRICS

10.5 KEY PRINCIPLE INDICATORS

10.6 COST OF POOR QUALITY

10.7 METRICS AND SERVICE BOUNDARIES

10.8 MEASUREMENTS AND MATURITY

10.9 CHAPTER REVIEW

11 Summary

11.1 CLOUD COMPUTING AS A SERVICE DELIVERY CHAIN

11.2 LEAN CLOUD COMPUTING

11.3 REIMAGINING CLOUD CAPACITY

11.4 LEAN DEMAND MANAGEMENT

11.5 LEAN RESERVES

11.6 LEAN INFRASTRUCTURE SERVICE PROVIDER CONSIDERATIONS

11.7 LEAN APPLICATION SERVICE PROVIDER CONSIDERATIONS

11.8 LEAN INFRASTRUCTURE COMMITMENT

11.9 VISUALIZING PERFECT CAPACITY

11.10 LEAN CLOUD COMPUTING METRICS

11.11 CONCLUDING REMARKS

References

About the Author

Index

EULA

List of Tables

Chapter 1

Table 1.1

Chapter 5

Table 5.1

Table 5.2

Table 5.3

Chapter 9

Table 9.1

List of Illustrations

Chapter 1

Figure 1.1

Cloud Computing in a Nutshell

Figure 1.2

High-Level Benefits of Cloud Computing

Figure 1.3

Cloud Service Delivery Relationships

Figure 1.4

Responsibilities in the Context of Cloud Service Delivery Relationships

Figure 1.5

Simplified Responsibilities

Figure 1.6

Topology of Simple, Sample Application

Figure 1.7

Intra-Application Workload Distribution via Load Balancing

Figure 1.8

Sample Service Latency Complementary Cumulative Distribution Function (CCDF)

Figure 1.9

Canonical Application Service Model

Figure 1.10

Canonical Shared Infrastructure Service Model

Figure 1.11

Cloud-Based Application Service Model

Figure 1.12

Supply, Demand, Consumption, and Capacity

Figure 1.13

Sample Daily Application Demand Pattern

Figure 1.14

 

Sample Demand Shock or Slashdot Event (Courtesy Wikipedia)

Figure 1.15

Sample of Application Demand Whipsaw

Chapter 2

Figure 2.1

Capacity Management

Figure 2.2

Demand Management

Figure 2.3

Framing Performance Management Focus

Figure 2.4

Simplified Capacity Management Processes

Figure 2.5

Traditional Capacity Management

Figure 2.6

Traditional Capacity Management in the Canonical Capacity Management Model

Figure 2.7

Capacity Management in ITIL

Figure 2.8

Services and Resources in the Context of Cloud Computing

Figure 2.9

eTOM Process Model

Figure 2.10

Three Cloud Capacity Management Problems

Figure 2.11

Horizontal Capacity Growth of Preexisting Application Instance

Figure 2.12

Vertical Capacity Growth of Preexisting Application Instance

Figure 2.13

Adding an Application Instance to Increase Online Service Capacity

Figure 2.14

Inter-Application Workload Distribution via Load

Placement

Figure 2.15

Input–Output View of Cloud Computing

Figure 2.16

Infrastructure Service Providers' Capacity Management Problems

Figure 2.17

Application Service Providers' Capacity Management Problem

Chapter 3

Figure 3.1

Lean Cloud Capacity Management Visualization

Figure 3.2

Capacity for Inventory Management and Cloud Computing

Figure 3.3

Lean Lake and Rocks Metaphor

Figure 3.4

Key Respect Boundaries

Figure 3.5

Lean Capacity Management Philosophy

Chapter 4

Figure 4.1

Application Service Provider's Capacity Management Problem

Figure 4.2

Canonical Framing of Application Capacity Management Problem

Figure 4.3

Framing the Canonical Cloud Service Delivery Chain

Figure 4.4

Lean Application Capacity Management Considerations

Figure 4.5

User Workload Placement

Figure 4.6

Infrastructure Service Provider Capacity Management Problems

Figure 4.7

Canonical Framing of Physical Resource Capacity Management Problem

Figure 4.8

Lean Infrastructure Capacity Management Considerations

Chapter 5

Figure 5.1

Relative Technology Maturities

Figure 5.2

Electricity Generation and Cloud Infrastructure Businesses

Figure 5.3

Simplified View of the Electric Power Industry

Figure 5.4

Sample Daily Electric Power Demand Curve

2

Figure 5.5

Hypothetical Electricity Dispatch Curve

3

Figure 5.6

Thermal Plants and Cloud Infrastructure

Figure 5.7

Sample Heat Rate Chart

Figure 5.8

Sample Server Power Consumption Chart

Figure 5.9

Standard Power Ratings

Figure 5.10

 Sample Day-Ahead Locational Marginal Pricing

Figure 5.11

 Locational Marginal Value for a Hypothetical Application

Figure 5.12

 Infrastructure Demand, Reserves, and Capacity

Figure 5.13

Energy Balance

Figure 5.14

Virtual Resource Balance

Chapter 6

Figure 6.1

Application Service as a Production Chain

Figure 6.2

Application Capacity Management as an Inventory Management Problem

Figure 6.3

Inventory Management in the Canonical Capacity Management Framework

Figure 6.4

Capacity, Demand, and Inventory

Chapter 7

Figure 7.1

 Infrastructure Demand Management Techniques

Figure 7.2

 Application Demand Management Options

Figure 7.3

 A Demand Planning Model for Lean Cloud Computing Capacity

Chapter 8

Figure 8.1

Reserve Capacity (copy of Figure 3.2)

Figure 8.2

Sample Capacity Estimates and Actuals

Figure 8.3

Capacity Lead Time

Figure 8.4

Technique versus Timeframe Reserve Capacity Overview

Figure 8.5

Recovery Time and Point Objectives

Chapter 9

Figure 9.1

Sample Input–Output Curve (copy of Figure 5.7)

Figure 9.2

Temporal Parameters for Unit Commitment

Figure 9.3

Temporal Parameters for Infrastructure Commitment

Figure 9.4

Context of Element Startup Time

Figure 9.5

Element Startup Time

Figure 9.6

Context of Element Shutdown Time

Figure 9.7

Element Shutdown Time

Figure 9.8

Sample Small Cloud

Figure 9.9

 Hypothetical Commitment Schedule

Chapter 10

Figure 10.1

Metrics in the Context of Lean Cloud Capacity Management

Figure 10.2

Sample Perfect Capacity Visualization

Figure 10.3

Sample Continuous Improvement Opportunities

Figure 10.4

Sample Peak Capacities

Figure 10.5

Key Capacity Management Latencies

Figure 10.6

Delta-Epsilon Complexity Analysis

Figure 10.7

Selected Lean Cloud Capacity Management KPIs across Key Service Boundaries

Figure 10.8

Capability Maturity Spectrum

Chapter 11

Figure 11.1

Cloud Service Value Stream (copy of Figure 2.15)

Figure 11.2

Application Service Providers' Capacity Management Problem

Figure 11.3

Infrastructure Service Providers' Capacity Management Problems

Figure 11.4

Lean Cloud Computing Visualization (copy of Figure 3.1)

Figure 11.5

Capacity for Inventory Management and Cloud Computing (copy of Figure 3.2)

Figure 11.6

Simplified Capacity Management Process (copy of Figure 2.4)

Figure 11.7

Lean Capacity Management Philosophy (copy of Figure 3.5)

Figure 11.8

Infrastructure Demand Management Techniques (copy of Figure 7.1)

Figure 11.9

Application Demand Management Options (copy of Figure 7.2)

Figure 11.10

Lean Infrastructure Capacity Management Considerations (copy of Figure 4.8)

Figure 11.11

Lean Application Capacity Management Considerations (copy of Figure 4.4)

Figure 11.12

Hypothetical Commitment Schedule (copy of Figure 9.9)

Figure 11.13

Infrastructure Commitment Timeline (copy of Figure 9.3)

Figure 11.14

Sample Perfect Capacity Visualization (copy of Figure 10.2)

Figure 11.15

Sample Application Capacity Management Visualization (copy of Figure 10.3)

Figure 11.16

Lean Cloud Computing Performance Metrics (copy of Figure 10.1)

Guide

Cover

Table of Contents

Chapter

Pages

xi

xii

xiii

xiv

xv

xvii

xviii

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

65

67

68

69

70

71

72

73

74

75

76

77

78

79

80

81

83

84

85

86

87

88

89

90

91

92

93

94

95

96

97

98

99

100

101

102

103

104

105

106

107

108

109

110

111

112

113

114

115

116

117

118

119

120

121

122

123

124

125

126

127

128

129

130

131

133

134

135

136

137

138

139

140

141

142

143

144

145

146

147

149

150

151

152

153

154

155

156

157

158

159

160

161

162

163

164

165

166

167

168

169

170

171

172

173

174

175

176

177

178

179

180

181

182

183

184

185

187

188

189

190

191

192

193

194

195

196

197

198

199

200

201

202

203

204

205

207

208

209

211

213

214

215

Introduction

The standard definition of cloud computing is a “paradigm for enabling network access to a scalable and elastic pool of sharable physical or virtual resources with self-service provisioning and administration on demand” (ISO/IEC 17788). This paradigm enables organizations to shift from traditional, capacity-driven operational models to lean, demand-driven operational models. This work adapts lean manufacturing principles across the cloud service delivery chain to achieve the lean cloud computing goal of sustainably achieving the shortest lead time, best quality, and highest customer delight at the lowest cost.

Traditionally, ICT systems were configured with sufficient capacity to serve the forecast demand, plus a safety margin, for the upcoming months, quarters, or perhaps even years. After configuring application and resource capacity to serve that forecast demand, further changes to the configuration were often discouraged to reduce the risk of procedural errors or expositing residual software or documentation defects which might impact production traffic. Thus, significant excess resource and application capacity were often committed that would rarely or never be used, thereby wasting both capital and operating expense. Lean computing pivots from the traditional build-for-peak, supply-oriented operating model to a just-in-time, demand-driven operating model. Lean cloud computing enables sustainable efficiency improvements that are essential when offering service into a competitive and cost-sensitive market.

This work considers lean cloud computing via three interlocking threads of analysis:

Methodically applying lean (i.e., Toyota production system) thinking to the cloud service delivery chain, especially regarding rapid elasticity and scaling. This is the focus of Chapter 3: Lean Thinking on Cloud Capacity Management, Chapter 4: Lean Cloud Capacity Management Strategy, Chapter 7: Lean Demand Management, Chapter 8: Lean Reserves, and Chapter 10: Lean Cloud Capacity Management Performance Indicators.

Applying insights from electric power generation and grid operations to cloud infrastructure operations. This is the focus of Chapter 5: Electric Power Generation as Cloud Infrastructure Analog and Chapter 9: Lean Infrastructure Commitment.

Applying insights from inventory management to cloud capacity management. This is the focus of Chapter 6: Application Capacity Management as an Inventory Management Problem.

This work considers business, architectural, and operational aspects of efficiently delivering valuable services to end users via cloud-based applications hosted on shared cloud infrastructure and focuses on overall optimization of the service delivery chain to enable both application service provider and infrastructure service provider organizations to adopt leaner, demand-driven operations to serve end users more efficiently. Explicitly considering the service delivery challenges of both the cloud service customer organizations that operate applications running on cloud infrastructure—as well as the challenges of cloud infrastructure service provider organizations that operate shared cloud resources—offers perspective and insight to enable optimizations across the entire service delivery chain to benefit cloud service providers, cloud service customers and cloud service users. The work is targeted at readers with business, operational, architectural, development, or quality backgrounds in the ICT industry to help them achieve the shortest lead time, best quality and value, and highest customer delight at the lowest cost for their service offerings. The work does not consider lean or agile development, software-defined networking (SDN), facility planning, or tradeoffs of any particular implementation technology (e.g., virtualization hypervisors versus Linux containers).

This book is structured as follows:

Basics

(Chapter 1) – this chapter lays out the key concepts that underpin this analysis: cloud computing principles and roles; demand, supply, capacity, and fungibility; and differentiating demand management, capacity management, and performance management.

Rethinking Capacity Management

(Chapter 2) – this chapter reviews traditional, ITIL, and eTOM capacity management models, and factors capacity management into two components for deeper consideration: (1) capacity decision and planning and (2) capacity action fulfillment. The chapter lays out the three fundamental cloud capacity management challenges:

Physical infrastructure capacity management

– how much physical equipment should be deployed to each cloud data center?

Virtual resource capacity management

– how much of that physical equipment should be powered on and made available to support application service providers at any point in time?

Application capacity management – how much application capacity should be online and available to service user demand at any point in time?

This chapter also frames the cloud computing service delivery chain that will be analyzed in Chapter 3: Lean Thinking on Cloud Capacity Management and in the remainder of the book.

Lean Thinking on Cloud Capacity Management

(Chapter 3) – this chapter rigorously applies lean, Toyota production system thinking to cloud computing. The lean cloud computing goal of

sustainably achieving the shortest lead time, best quality and value, and highest customer delight at the lowest cost

is underpinned by foundational principles and supported by pillars of respect and continuous improvement. These lean notions are methodically applied in subsequent chapters.

Lean Cloud Capacity Management Strategy

(Chapter 4) – this chapter methodically applies

lean thinking on cloud capacity management

of Chapter 3 to the fundamental cloud capacity management problems of Section 2.5: Three Cloud Capacity Management Problems.

Electric Power Generation as Cloud Infrastructure Analog

(Chapter 5) – modern utilities provide electricity-as-a-service with business, technology, and operational models that are analogous to cloud infrastructure-as-a-service providers. This chapter highlights key best practices from the mature electric power generation business that are applicable to cloud infrastructure service providers.

Application Capacity Management as an Inventory Management Problem

(Chapter 6) – online application capacity can usefully be imagined as an inventory of regenerative assets maintained by an application service provider to serve user demand. The rapid elasticity of cloud virtual infrastructure enables the application service provider to pivot from a traditional supply/capacity-driven operational model to a demand-driven operational model. This chapter highlights best practices from lean, just-in-time inventory management that are applicable to application service providers.

Lean Demand Management

(Chapter 7) – this chapter considers how various demand management techniques, including several from the power industry discussed in Chapter 5: Electric Power Generation as Cloud Infrastructure Analog, can be applied to cloud to support the key lean principle of leveling the workload.

Lean Reserves

(Chapter 8) – some safety, spare, or reserve capacity is necessary to assure acceptable service quality across random variations in patterns of demand, failures, and other unforeseen situations. This chapter considers the use and nature of reserve capacity in detail to enable deeper understanding of the appropriate level of reserve capacity.

Lean Infrastructure Commitment

(Chapter 9) – this chapter applies the electric power industry's notion of unit commitment for optimally scheduling startup and shutdown of generating equipment from Chapter 5: Electric Power Generation as Cloud Infrastructure Analog to cloud minimize

excess online infrastructure capacity

(Section 3.3.3),

waste heat

(Section 3.3.14), and

carbon footprint

(Section 3.3.15).

Lean Cloud Capacity Management Performance Indicators

(Chapter 10) – this chapter offers objective and quantitative performance measures for lean cloud capacity management which can be used to methodically drive continuous improvement of lean cloud computing deployments.

Summary

(Chapter 11) – this chapter connects all of the analyses and threads of lean cloud computing considered in earlier chapters in a crisp summary.

Cross-references are included throughout the text to help readers follow analysis through to insights and recommendations. An Index, Abbreviations, and References are also included.

Acknowledgments

Mark Clougherty provided critical review and keen insights on all aspects of this work. Andrew Lange, John Haller, Deb McCarthy, Peter Spencer, Jose De Francisco Lopez, Frederik Vandeputte, Elissa Matthews, Randee Adams, Bernard Altmeyer, Cathy Waters, Senthil Kumar Dhandapani, Alesandra Sala, Roger Maitland, Rich Sohn, John Foley, and John Scaldaferri provided valuable comments and feedback.

This work benefited greatly from thoughtful and detailed reviewer feedback from Tim Coote, Stuart Curley, Paul Schuster, Caroline Chappell, Rocky Heckman, and Steve Woodward.

Abbreviations

BHCA

busy hour call attempts

BSS

business support system

CapEx

capital expense

CCDF

complimentary cumulative distribution function

CDF

cumulative distribution function

CI

configuration item

COTS

commercial off the shelf

DA

day ahead

DBMS

database management system

DNS

domain name system

DOA

dead on arrival

DPM

defects per million

EcoMin

economic minimum

EMS

element management system

EoR

end-of-row Ethernet switch

EPO

emergency power off

eTOM

TM Forum's Service Management Framework

ETSI

European Telecommunications Standards Institute

FCAPS

fault, configuration, accounting, performance, security

hr

hour

IaaS

infrastructure-as-a-service

ICT

information and communications technologies

IP

internet protocol

ISO

International Standards Organization (ICT industry) or independent system operator (power industry)

IT

information technologies

ITIL

IT Infrastructure Library, a suite of standards of for IT Service Management

KPI

key performance indicator

KQI

key quality indicator

kW

kilowatt

LMP

locational marginal price

MIPS

million instructions per second, or sometimes meaningless information about performance of a system

MOS

mean opinion score

MW

megawatt

NERC

North American Electricity Reliability Corporation

NIST

US National Institute of Standards and Technologies

NOC

network operations center

OAMP

operations, administration, maintenance and provisioning

OpEx

operating expense

OS

operating system

OSI

open systems interconnection

OSS

operations support system

PJM

PJM Interconnection, www.pjm.com

PM

performance management

RPO

recovery point objective

RT

real time

RTO

recovery time objective (ICT industry), or regional transmission organization (power industry)

SDN

software-defined networking

SI

International System of Units

SKU

stock-keeping unit

SLA

service level agreement

SLO

service level objective

ToR

top of rack Ethernet switch

vCPU

virtual central processing unit core

VIM

the cloud service provider's Virtualized Infrastructure Manager

VM

virtual machine

VN

virtual network

VoLTE

voice over LTE

CHAPTER 1Basics

Upon completion of this chapter the reader will understand:

The standard definition, characteristics, and benefits of cloud computing

The key roles in the cloud computing ecosystem

Key concepts of application, demand, supply, quality, and fungibility

This section reviews the following key concepts that are used extensively in this work:

Cloud computing fundamentals (Section 1.1)

Roles in cloud computing (Section 1.2)

Applications (Section 1.3)

Demand, supply, capacity, and fungibility (Section 1.4)

Demand variability (Section 1.5)

1.1 Cloud Computing Fundamentals

Cloud computing is defined by ISO/IEC 177881 as a “paradigm for enabling network access to a scalable and elastic pool of shareable physical or virtual resources with self-service provisioning and administration on-demand.” ISO/IEC 17788 specifies the following six key characteristics of cloud computing2:

Broad network access

– “

A feature where the physical and virtual resources are available over a network and accessed through standard mechanisms that promote use by heterogeneous client platforms. The focus of this key characteristic is that cloud computing offers an increased level of convenience in that

users can access physical and virtual resources from wherever they need to work

, as long as it is network accessible, using a wide variety of clients including devices such as mobile phones, tablets, laptops, and workstations

” (ISO/IEC 17788). Operationally, this means that end users access cloud-based application services via commonly available wireless and wireline IP networks.

Measured service

– “

A feature where the metered delivery of cloud services is such that usage can be monitored, controlled, reported, and billed… The focus of this key characteristic is that

the customer may only pay for the resources that they use

. From the customers' perspective, cloud computing offers the users value by enabling a switch from a low efficiency and asset utilization business model to a high efficiency one

” (ISO/IEC 17788). When cloud customers pay only for resources that are used, application services that are engineered so cloud resource usage tracks with application service usage which tracks with application revenue can reduce business risk by better linking application service provider's costs with application service revenues.

Multi-tenancy

– “

A feature where physical or virtual resources are allocated in such a way that multiple tenants and their computations and data are isolated from and inaccessible to one another

” (ISO/IEC 17788). Multi-tenancy enables infrastructure service providers to maximize resource sharing and boost their capacity utilization.

On-demand self-service

– “

A feature where a cloud service customer can provision computing capabilities, as needed, automatically or with minimal interaction with the cloud service provider. The focus of this key characteristic is that

cloud computing offers users a relative reduction in costs, time, and effort needed to take an action, since it grants the user the ability to do what they need, when they need it, without requiring additional human user interactions or overhead

” (ISO/IEC 17788). This means that application service providers and/or automated systems working on behalf of those application operators can install, configure, and provision cloud resources to serve their applications in real time. On-demand self-service of capacity planning and fulfillment actions, coupled with rapid elasticity, enables significant reductions in fulfillment times for capacity change actions compared to traditional deployments.

Rapid elasticity and scalability

– “

A feature where physical or virtual resources can be rapidly and elastically adjusted, in some cases automatically, to quickly increase or decrease resources. For the cloud service customer, the physical or virtual resources available for provisioning often appear to be unlimited and can be purchased in any quantity at any time automatically, subject to constraints of service agreements. Therefore, the focus of this key characteristic is that cloud computing means that the

customers no longer need to worry about limited resources and might not need to worry about capacity planning

” (ISO/IEC 17788). Application service providers and/or automated systems working on their behalf can allocate and release infrastructure resources on-the-fly, thereby enabling applications to transform from allocating and configuring capacity based on peak forecast demand (which may never even be approached) to just-in-time, demand-driven capacity configuration.

Resource pooling

– “

A feature where a cloud service provider's physical or virtual resources can be aggregated in order to serve one or more cloud service customers… From the customer's perspective, all they know is that the service works, while they generally have no control or knowledge over how the resources are being provided or where the resources are located. This offloads some of the customer's original workload, such as maintenance requirements, to the provider

” (ISO/IEC 17788). Resource pooling, coupled with multi-tenancy, enables cloud service providers (CSPs) to leverage economies of scale to boost operational efficiencies beyond what has traditionally been feasible.

Figure 1.1 offers a simplified view of cloud computing: many different applications simultaneously share a large and flexibly configured pool of compute, memory, storage, networking, and functional component resources offered by a CSP. Coupling on-demand self-service and rapid elasticity enables application service providers to fundamentally transform their businesses from configuring application capacity to meet peak forecast demand to just-in-time, demand-driven capacity management. Using measured service as the basis of charging application service providers for their resource usage enables at least a portion of the application provider's costs to shift from being fixed and independent of usage to variable so that resource charges are tied to resource usage, which is tied to application service usage, which should be tied to application revenue.

Figure 1.1 Cloud Computing in a Nutshell

Figure 1.2 visualizes key high-level business benefits of cloud computing:

Lower infrastructure CapEx

– the peak

aggregate

demand for compute, storage, and networking resources is smaller than the sum of peak demand of each individual application. Infrastructure resource sharing enables less total hardware to be deployed than with traditional operation models, and thus capital expense (CapEx) can be saved. Also, consolidating operation of that shared infrastructure enables efficiencies that can reduce operating expense (OpEx).

Infrastructure available on demand

– the ability of application service providers to allocate and release infrastructure resources on-the-fly enables agile, just-in-time application capacity management to minimize the twin business risks of over investing in application capacity that is never used (if demand forecasts are too optimistic) or being unable to serve customer demand (if demand forecasts are too conservative).

Lower infrastructure OpEx

because a single infrastructure service provider can operate and maintain shared infrastructure cheaper than each application service provider can operate and maintain their own private infrastructure. In addition, consolidating active resource loads onto the smallest number of physical elements enables unneeded capacity to be turned off.

Application OpEx for infrastructure tracks with resource usage

thereby derisking application service provider businesses by having their OpEXs for resource capacity track with service usage, and thus hopefully with revenue.

Figure 1.2 High-Level Benefits of Cloud Computing

Cloud enables disruption of IT service management in several ways:

Encourage agile, incremental development and deployment models

– these practices can reduce the organization's business risks around development activities by enabling applications and services to be developed and deployed via smaller project tasks which can generally be better managed rather than relying on massive software projects that are harder to manage.

Elastic capacity enables new operational models for application release management

– infrastructure available on-demand means that instead of relying on complex software upgrade, update, or retrofit procedures that must execute “in-place” on traditional hardware, an independent set of infrastructure resources can be allocated to host the new software upgrade, update, or retrofit and that release maintenance action can largely proceed without impacting the production instance thereby both reducing service risk for users and operational complexity (and presumably costs) for application service providers.

Fungibility of virtualized resources enables workload aggregation

– virtualization enables commodity physical compute, memory, and storage resources to be configured on-the-fly to serve a huge range of applications. Thus, rather than planning, installing, and allocating explicit physical resources to dedicate to each application in advance, a pool of commodity hardware can be created, with virtual resources allocated to applications on-the-fly.

Virtual resources are ephemeral

– application service providers can allocate and deallocate virtual resources as needed to better align their resource usage – and thus presumably their resource costs – with service usage which is presumably linked to their revenue. Leveraging ephemeral resources and usage-based resource pricing to better align costs with revenue is fundamentally different from the traditional model where resource (i.e., infrastructure equipment) costs are a sunk cost for the application service provider to manage.

Virtual compute, memory, storage, and networking resources released by applications can easily be reallocated to other applications

– virtualization increases the fungibility of physical infrastructure resources by enabling physical resources to emulate a range of resource configurations that might be desired by application software. Greater fungibility means that each type of physical resource can serve a broader range of application needs, thereby permitting more efficient resource utilization.

Automation of virtual resource management and orchestration can:

yield short and consistent lead times for application capacity management changes;

yield more reliable application capacity management changes;

lower fulfillment costs per capacity management change action.

On-the-fly virtual resource allocation and operations enables aggressive power management

– this topic is detailed in Chapter 9: Lean Infrastructure Commitment.

1.2 Roles in Cloud Computing

Figure 1.3 visualizes the primary ISO/IEC 17788 roles in cloud computing:

Cloud Service User

is an end user, or an application operating on their behalf, who enjoy cloud services such as social networking applications or watching streaming movies.

Cloud Service Customers

(CSCs) are organizations that operate cloud services for cloud service users, such as an organization that offers streaming entertainment or real-time communications services to end users via cloud-based applications. For example, a company that offers streaming movie services to end users by deploying their application software onto some other organization's infrastructure-as-a-service (IaaS) offering is a CSC. This role is analogous to NIST SP 500-292

Cloud Consumer

. As the notion of customer or consumer often creates confusion, this book will refer to this role with the more commonly used term

application service provider

.

Cloud Service Provider

(CSP) is broadly defined by ISO/IEC 17788 as a “

party which makes cloud services available

”; this role is analogous to NIST SP 500-292

Cloud Provider

. Some CSPs offer virtualized compute, networking, storage, and memory resources to application service providers (CSCs) as IaaS offerings. Virtual compute, memory, storage, and networking can be offered by infrastructure service providers to application service providers via technologies such as hypervisors, Linux containers, and other virtualization mechanisms. For convenience, this paper will refer simply to virtual machines (VMs) as the primary unit of infrastructure capacity, so this should be understood to cover Linux containers and other implementation options as well. ISO/IEC 17789 defines

functional component

as “

A functional building block needed to engage in an activity, backed by an implementation

”; some CSPs will offer functional components such as databases or load balancers to consumers via platform-as-a-service offerings. While there is some disagreement across the industry regarding exactly what functionality offered as-a-service should be classified as platform-as-a-service versus software-as-a-service (or even IaaS), the exact taxonomy is unimportant for this analysis. For simplicity, this book will refer to this role as

infrastructure service provider

. Note that there may actually be multiple service provider organizations, such as one organization operating virtualized compute, memory, storage, and networking infrastructure and another organization operating higher-level functional components like database-as-a-service, but that distinction is also unimportant for this analysis.

CSP: Network Provider

is defined by ISO/IEC 17789 as a party which “

may provide network connectivity between systems within the cloud service provider's data centre, or provide network connectivity between the cloud service provider's systems and systems outside the provider's data centre, for example, cloud service customer systems or systems belonging to other cloud service providers.

” This role is analogous to NIST SP 500-292

Cloud Carrier

.

Cloud Service Partners

(CSN) are defined by ISO/IEC 17788 as a “

party which is engaged in support of, or auxiliary to, activities of either the cloud service provider or the cloud service customer, or both

.” The three partner roles enumerated in ISO/IEC 17789 are:

Cloud Service Developers

are “

responsible for designing, developing, testing and maintaining the implementation of a cloud service

” (ISO/IEC 17789). This book will generally refer to this role as

software suppliers

.

Cloud Auditor

defined by ISO/IEC 17788 as a “

Cloud service partner with the responsibility to conduct an audit of the provision and use of cloud services

.” This role is analogous to NIST SP 500-292

Cloud Auditor

. This role is not shown in

Figure 1.3

and this book will not consider this role.

Cloud Service Broker

defined by ISO/IEC 17788 as a “

cloud service partner that negotiates relationships between cloud service customers and cloud service providers.

” This role is analogous to NIST SP 500-292

Cloud Broker

. This role is not shown in

Figure 1.3

and this book will not consider this role.

Figure 1.3 Cloud Service Delivery Relationships

Note that the primary service relationships among roles visualized in Figure 1.3 are shown in the style of TMF GB917 and TMF TR178 in Figure 1.3. The application service provider offers valuable services to end users which are delivered across one or more CSP network providers' (or cloud carriers') networks. The application service provider's service offering is the result of integrating one or more applications from software suppliers with virtual compute, networking, storage and memory, along with automated lifecycle management services to instantiate, operate, and manage the application instances, and perhaps some functional components offered as-a-service by one or more CSPs.

Figure 1.4 visualizes the simplified responsibilities of the primary actors of Figure 1.3. The cloud (infrastructure) service provider organization owns and operates the pool of physical and virtual resources that are offered to various application service provider (CSC) organizations. Each application service provider organization is responsible for engineering, integration, and operation of their user facing service offering. Figure 1.5 overlays simplified responsibilities onto Figure 1.1.

Figure 1.4 Responsibilities in the Context of Cloud Service Delivery Relationships

Figure 1.5 Simplified Responsibilities

The two most common standard cloud deployment models discussed in this work are:

Public cloud

is defined by ISO/IEC 17788 as “

Cloud deployment model where cloud services are potentially available to any cloud service customer and resources are controlled by the cloud service provider. A public cloud may be owned, managed, and operated by a business, academic, or government organization, or some combination of them. It exists on the premises of the cloud service provider.

Private cloud

is defined by ISO/IEC 17788 as “

Cloud deployment model where cloud services are used exclusively by a single cloud service customer and resources are controlled by that cloud service customer. A private cloud may be owned, managed, and operated by the organization itself or a third party and may exist on premises or off premises.

Cloud service users do not care – and often do not even know – if the application that they enjoy is hosted on a public or private cloud. The distinction of public or private cloud is of practical importance for both the application service provider and the organization that owns and operates the shared cloud infrastructure as it drives the governance and business model for the relationship between those organizations.

1.3 Applications

Application is defined by ITIL as software that provides Functions that are required by an IT Service. Applications are composed of software components that execute on physical compute, networking, memory, and storage equipment. An application instance is an operational configuration of application software components on appropriate compute, networking, memory, and storage infrastructure elements that can offer service to users.

Figure 1.6 shows a logical topology diagram of a sample application. As will be discussed in Section 2.5.3.1: Scale Capacity of a Single Application Instance, online application capacity can be adjusted by independently configuring the number of online application logic (AppLogic) instances and application storage (AppStorage) instances. Note that the sample application is architected to have only a single pair of frontend components to distribute user workload across the pool of AppLogic component instances, and a single pair of operations, administration, maintenance, and provisioning (OAMP) components manages all of the application's component instances.

Figure 1.6 Topology of Simple, Sample Application

Workloads within an application instance can often be distributed across pools of component instances, which this paper will call load balancing. Our sample application supports two levels of intra-application load balancing: the active Frontend component balances user workload across the pool of available AppLogic components (illustrated in Figure 1.7