1 Introduction |
|
1 | (10) |
|
|
1 | (1) |
|
1.2 Cloud Computing Definitions |
|
|
2 | (1) |
|
1.3 Cloud Computing Operational Characteristics |
|
|
3 | (3) |
|
1.3.1 Cloud Computing Benefits |
|
|
6 | (1) |
|
1.3.2 Cloud Computing Potential Risks |
|
|
6 | (1) |
|
1.4 Cloud Computing Trends |
|
|
6 | (2) |
|
1.4.1 Trend #1: Abstraction of Network, Storage, Database, Security, and Computing Infrastructure |
|
|
6 | (1) |
|
1.4.2 Trend #2: A Pricing Model that Is Retail in Its Conception |
|
|
7 | (1) |
|
1.4.3 Trend #3: Service-Level Agreements (SLAB) |
|
|
7 | (1) |
|
1.5 Cloud Computing Needs |
|
|
8 | (1) |
|
|
9 | (1) |
|
|
10 | (1) |
2 Foundations of Cloud Computing |
|
11 | (30) |
|
|
11 | (2) |
|
2.2 Different Network Protocols |
|
|
13 | (3) |
|
2.3 Evolution of Enterprise IT |
|
|
16 | (1) |
|
2.4 Evolution of Web Services |
|
|
17 | (3) |
|
2.5 Server Operations in a Data-Center |
|
|
20 | (5) |
|
2.6 Server-Based Web Services |
|
|
25 | (1) |
|
2.7 Service-Oriented Architecture |
|
|
26 | (2) |
|
2.8 Building an Enterprise SOA Solution |
|
|
28 | (2) |
|
2.9 Top-Down Versus Bottom-Up Approach |
|
|
30 | (1) |
|
2.10 Enterprise Service Bus (ESB) |
|
|
31 | (2) |
|
2.11 Enterprise Implementation on Private Clouds |
|
|
33 | (2) |
|
2.12 Enterprise Implementation on Hybrid Clouds |
|
|
35 | (1) |
|
|
35 | (2) |
|
2.14 Open Web Application Security Project |
|
|
37 | (2) |
|
|
39 | (1) |
|
|
39 | (1) |
|
|
40 | (1) |
3 Cloud Computing Pyramid |
|
41 | (10) |
|
3.1 Roots of Cloud Computing |
|
|
41 | (3) |
|
3.2 Essential Characteristics of Cloud Computing |
|
|
44 | (1) |
|
3.3 Cloud Players and Their Concerns |
|
|
45 | (2) |
|
3.4 Considerations for Cloud Data Centers |
|
|
47 | (2) |
|
|
48 | (1) |
|
|
48 | (1) |
|
|
49 | (1) |
|
|
49 | (2) |
4 Features of Private and Public Clouds |
|
51 | (10) |
|
4.1 Customer Expectations of Cloud Computing |
|
|
51 | (2) |
|
4.2 Interoperability of Cloud Computing |
|
|
53 | (1) |
|
4.3 Reliability of Cloud Computing |
|
|
53 | (2) |
|
4.4 Performance of Cloud Computing |
|
|
55 | (1) |
|
|
56 | (3) |
|
|
59 | (1) |
|
|
59 | (1) |
|
|
60 | (1) |
5 Cloud Workload Characterization |
|
61 | (24) |
|
|
61 | (1) |
|
5.2 Some Background on Workload Characterization |
|
|
62 | (3) |
|
5.3 Top-Level Cloud Workload Categorization |
|
|
65 | (1) |
|
5.4 Cloud Workload Categories |
|
|
66 | (4) |
|
|
70 | (2) |
|
5.5.1 Data Buses Between Servers |
|
|
71 | (1) |
|
5.6 Example Workload Categorizations |
|
|
72 | (1) |
|
5.7 Temporal Variability of Workloads |
|
|
72 | (4) |
|
5.8 Low-Level or Hardware Metrics of Computer Utilization |
|
|
76 | (1) |
|
5.9 Dynamic Monitoring and Cloud Resource Allocation |
|
|
77 | (1) |
|
5.10 Benefits to Cloud Service Providers |
|
|
78 | (2) |
|
|
80 | (1) |
|
|
81 | (1) |
|
|
81 | (4) |
6 Cloud Management and Monitoring |
|
85 | (8) |
|
|
85 | (1) |
|
6.2 Introduction to Cloud Setup and Basic Tools |
|
|
85 | (1) |
|
6.3 Noisy Neighbors in a Cloud |
|
|
86 | (1) |
|
6.4 Cloud Management Requirements |
|
|
87 | (1) |
|
6.5 Essentials of Monitoring |
|
|
88 | (1) |
|
6.6 Some Example of Monitoring Tools |
|
|
89 | (2) |
|
|
91 | (1) |
|
|
92 | (1) |
|
|
92 | (1) |
7 Cloud Computing and Information Security |
|
93 | (22) |
|
7.1 Background and Definitions |
|
|
93 | (2) |
|
7.2 Security Concerns of Cloud Operating Models |
|
|
95 | (1) |
|
7.3 Identity Authentication |
|
|
96 | (4) |
|
|
100 | (1) |
|
7.5 Secure Storage and Computation |
|
|
100 | (1) |
|
|
101 | (1) |
|
7.7 Traditional Versus Internet Security Issues |
|
|
102 | (3) |
|
7.8 Variations and Special Cases for Security Issues with Cloud Computing |
|
|
105 | (3) |
|
|
105 | (1) |
|
7.8.2 Secure Communication |
|
|
106 | (1) |
|
7.8.3 An Example Security Scenario for Cloud Computing |
|
|
107 | (1) |
|
7.9 A Few Key Challenges Related to Cloud Computing and Virtualization |
|
|
108 | (2) |
|
7.10 Some Suggested Security Practices for Cloud Computing |
|
|
110 | (1) |
|
|
111 | (1) |
|
|
112 | (1) |
|
|
112 | (3) |
8 Migrating to Cloud |
|
115 | (8) |
|
8.1 Cloud Business Models |
|
|
115 | (1) |
|
|
116 | (1) |
|
|
117 | (2) |
|
|
119 | (1) |
|
|
120 | (1) |
|
|
120 | (1) |
|
|
121 | (2) |
9 Migrating a Complex Industry to Cloud |
|
123 | (18) |
|
|
123 | (1) |
|
|
124 | (1) |
|
9.3 A Brief History of EDA Tools and Flows |
|
|
125 | (3) |
|
9.3.1 The Nascent Years of the 70s |
|
|
125 | (1) |
|
|
126 | (1) |
|
9.3.3 Growing up in the 90s |
|
|
126 | (1) |
|
9.3.4 Maturing into the First Decade of Twenty-First Century |
|
|
127 | (1) |
|
9.3.5 From 2010s till Now, EDA Stable |
|
|
127 | (1) |
|
9.4 EDA Flow Steps Mapping to Cloud |
|
|
128 | (5) |
|
9.5 Considerations for Cloud Computing Adoption |
|
|
133 | (3) |
|
|
136 | (1) |
|
|
137 | (1) |
|
|
138 | (3) |
10 Costing and Billing Practices in Cloud |
|
141 | (18) |
|
10.1 Cloud as a Service (CaaS): The Billing Imperatives |
|
|
141 | (1) |
|
10.1.1 Billing and Best Practices |
|
|
141 | (1) |
|
|
142 | (1) |
|
10.3 Amazon EC2 Motivations and Setup |
|
|
143 | (3) |
|
10.3.1 Amazon's On-Demand Instances |
|
|
144 | (1) |
|
10.3.2 Amazon Spot Instances |
|
|
144 | (1) |
|
10.3.3 Amazon Reserved Instances |
|
|
145 | (1) |
|
10.3.4 Amazon Dedicated Instances and Dedicated Hosts |
|
|
145 | (1) |
|
10.4 Motivation and Methods for Right Sizing Customer VMs |
|
|
146 | (3) |
|
|
146 | (1) |
|
10.4.2 Elastic Load Balancing |
|
|
147 | (1) |
|
|
148 | (1) |
|
|
149 | (3) |
|
10.6 Capacity Forecasting |
|
|
152 | (1) |
|
10.7 Optimizations Across Clouds |
|
|
153 | (2) |
|
10.8 Types of Cloud Service-Level Agreements |
|
|
155 | (2) |
|
|
157 | (1) |
|
|
157 | (1) |
|
|
158 | (1) |
11 Analytics in the Cloud |
|
159 | (12) |
|
11.1 Background and Problem Statement |
|
|
159 | (3) |
|
11.2 Introduction to MapReduce |
|
|
162 | (1) |
|
11.3 Introduction to Hadoop |
|
|
162 | (3) |
|
11.4 Usage of Amazon's MapReduce |
|
|
165 | (2) |
|
11.5 Twitter Sentimental Analysis Using Cloud |
|
|
167 | (1) |
|
11.6 Future Possibilities |
|
|
168 | (1) |
|
|
169 | (1) |
|
|
169 | (2) |
12 Future Trends in Cloud Computing |
|
171 | (14) |
|
12.1 Revisiting History of Computing |
|
|
171 | (1) |
|
12.2 Current Limitations of Cloud Computing |
|
|
171 | (2) |
|
12.3 Emergence of Internet of Things (IoT) |
|
|
173 | (1) |
|
12.4 Emergence of Machine Learning |
|
|
174 | (2) |
|
12.5 Emergence of Edge Computing |
|
|
176 | (1) |
|
12.6 Security Issues in Edge Computing |
|
|
177 | (1) |
|
12.7 Security Considerations for Edge Computing |
|
|
178 | (2) |
|
|
180 | (1) |
|
12.9 Example of an IoT-Based Cloud Service |
|
|
181 | (1) |
|
|
182 | (1) |
|
|
183 | (1) |
|
|
183 | (2) |
13 A Quick Test of Your Cloud Fundamentals Grasp |
|
185 | (10) |
14 Hands-On Project to Use Cloud Service Provider |
|
195 | (46) |
|
14.1 Project 1: Install Lamp Stack on Amazon EC2 |
|
|
195 | (22) |
|
14.1.1 Installing Lamp Web Server on AWS via EC2 |
|
|
195 | (10) |
|
14.1.2 Installing Wordpress |
|
|
205 | (12) |
|
|
217 | (1) |
|
14.2 Project 2: Install PHP on Your AWS Instance |
|
|
217 | (2) |
|
14.3 Project 3: Enhance Security of Your AWS Instance |
|
|
219 | (2) |
|
14.4 Project 4: Setup a Load Balancer for Your AWS Instance |
|
|
221 | (6) |
|
14.4.1 Elastic Load Balancer Setup |
|
|
221 | (5) |
|
14.4.2 Unique Features of AWS Load Balancer |
|
|
226 | (1) |
|
14.5 Project 5: Use Elastic IP for Your AWS Instance |
|
|
227 | (2) |
|
14.5.1 How to Make an Instance Elastic |
|
|
227 | (1) |
|
|
227 | (2) |
|
|
229 | (10) |
|
|
239 | (2) |
Appendix A |
|
241 | (18) |
Appendix B: Additional Considerations for Cloud Computing |
|
259 | (6) |
Appendix C: Suggested List of Additional Cloud Projects |
|
265 | (2) |
Index |
|
267 | |