The main purpose of this book is to include all the cloud-related technologies in a single platform, so that researchers, academicians, postgraduate students, and those in the industry can easily understand the cloud-based ecosystems.
Table of ContentsList of Figures
List of Tables
Foreword
Preface
Acknowledgments
Acronyms
Part I: Cloud Computing Architecture
1. Basics of Cloud ComputingSouvik Pal, Dac-Nhuong Le, Prasant Kumar Pattnaik
1.1 Evolution of Cloud Computing
1.2 Cluster Computing
1.2.1 The Architecture of Cluster Computing Environment
1.2.2 Components of Computer Cluster
1.3 Grid Computing
1.3.1 Grid-Related Technologies
1.3.2 Levels of Deployment
1.3.3 Architecture of Grid Computing Environment
1.4 Mobile Computing
1.4.1 Characteristics of Mobile Computing
1.4.2 Characteristics of Mobile Networks
1.5 Summary
Exercises
References
2. Introduction to Cloud ComputingSouvik Pal, Dac-Nhuong Le, Prasant Kumar Pattnaik
2.1 Definition of Cloud Computing
2.2 Characteristics of Cloud
2.2.1 Elasticity and Scalability
2.2.2 Metered and Billing of Service
2.2.3 Self-Service Allocation of Resources
2.2.4 Application Programming Interface (APIs)
2.2.5 Efficiency Measurement Service
2.2.6 Device and Location Interdependency
2.2.7 Customization
2.2.8 Security
2.3 Cloud Computing Environment
2.3.1 Access to Supporting Business Agility
2.3.2 Minimizing Investment Expenditures
2.3.3 Public Cloud Computing Environment
2.3.4 Private Cloud Computing Environment
2.3.5 Hybrid Cloud Computing Environment
2.3.6 Community Cloud Computing Environment
2.4 Cloud Services
2.4.1 Resources as a Service (RaaS)
2.4.2 Infrastructure as a Service (IaaS)
2.4.3 Platform as a Service (PaaS)
2.4.4 Software as a Service (SaaS)
2.4.5 Network as a Service (NaaS)
2.4.6 Desktop as a Service (DaaS/VDI)
2.4.7 Recovery as a Service (DRaaS)
2.5 Security Paradigms and Issues of Cloud Computing
2.6 Major Cloud Service Providers
2.6.1 IaaS CSPs
2.6.2 PaaS CSPs
2.6.3 SaaS CSPs
2.7 Summary
Exercises
References
3. Architectural Framework for Cloud ComputingSouvik Pal, Dac-Nhuong Le, Prasant Kumar Pattnaik
3.1 Challenges of Cloud Computing Environment
3.2 Architectural Framework for Cloud Computing
3.2.1 Service-Oriented Architecture (SOA)
3.2.2 SOA Characterization
3.2.3 Life Cycle of Services in SOA
3.2.4 Integrating SOA and the Cloud
3.2.5 Cloud Architecture
3.3 Architectural Workflow and Co-ordination of Multiple Activities
3.3.1 Characteristics of Workflow
3.3.2 Need for Workflow
3.4 Examples of Workflow Tools
3.5 Summary
Exercises
References
4. Virtualization Environment in Cloud ComputingSouvik Pal, Dac-Nhuong Le, Prasant Kumar Pattnaik
4.1 Introduction
4.1.1 Need of Virtualization in Cloud Computing Environment
4.1.2 Virtualization versus Traditional Approach
4.2 Virtualization and Virtual Machine
4.2.1 Advantages of Virtualization Technique in Cloud Computing Environment
4.2.2 Category of Virtual Machine
4.3 Virtualization Model for Cloud Computing
4.3.1 Distributed Resources of Physical Hosts
4.3.2 Hypervisor Monitoring Environment (HME)
4.3.3 Platform Service
4.3.4 Software Service
4.3.5 Broker Service
4.3.6 Business Service
4.4 Categorization of Guest OS Virtualization Techniques
4.4.1 Full Virtualization
4.4.2 Paravirtualization
4.4.3 Hardware-Assisted Virtualization
4.5 Mapping Technique of Virtual Machine to Physical Machine in a Private Cloud
4.6 Drawbacks of Virtualization
4.7 Summary
Exercises
References
5. Classification of Virtualization EnvironmentSouvik Pal, Dac-Nhuong Le, Prasant Kumar Pattnaik
5.1 Introduction
5.2 Classification
5.2.1 Scheduling-Based Environment
5.2.2 Load Distribution-Based Environment
5.2.3 Energy-Aware-Based Environment
5.2.4 Operational-Based Environment
5.2.5 Distribution Pattern-Based Environment
5.2.6 Transaction-Based Environment
5.3 Summary
Exercises
References
Part II: Cloud Computing Data Storage
6. An Approach to Live Migration of Virtual Machines in Cloud Computing Environment Dac-Nhuong Le, Souvik Pal, Prasant Kumar Pattnaik
6.1 Introduction
6.2 Need of Live Migration of Virtual Machine
6.3 Advantages of Live Migration
6.4 A Design Approach to Live Migration
6.4.1 Live Migration Process
6.5 Security Issues
6.5.1 Possible Attacks
6.5.2 Solutions
6.6 Summary
Exercises
References
7. Reliability Issues in Cloud Computing EnvironmentDac-Nhuong Le, Souvik Pal, Prasant Kumar Pattnaik
7.1 Introduction
7.1.1 Research Problem Statement
7.1.2 Research Aim
7.1.3 Research Question
7.2 Literature Review
7.2.1 Cloud Service Models
7.2.2 Elements of Reliable Cloud Computing
7.2.3 Cloud Computing Gaps and Concerns
7.2.4 Trends in Cloud Computing
7.3 Reliability Issues in Cloud Computing Research
7.3.1 Research Methodology
7.3.2 Research Strategy
7.3.3 Data Collection
7.3.4 Sampling
7.3.5 Data Analysis and Findings
7.4 Findings
7.4.1 Lack of Effort to Address Reliability and Availability Issues 1
7.4.2 Performance Issues
7.4.3 Privacy Issues
7.5 Summary
Exercises
References
8. Cloud DatabaseDac-Nhuong Le, Souvik Pal, Prasant Kumar Pattnaik
8.1 Introduction
8.2 Non-Relational Data Models
8.2.1 Transactions in Cloud Databases
8.2.2 Advantages of Cloud Database
8.3 Heterogeneous Databases in DaaS
8.3.1 Relational and Non-Relational Database
8.3.2 Centralized and Distributed Database
8.3.3 Structured and Unstructured Database
8.3.4 Infrastructure-Based and Infrastructureless Databases
8.3.5 SQL-Based and NoSQL-Based Databases
8.4 Study of a Document-Oriented Cloud Database - MongoDB
8.4.1 Data Model
8.4.2 Replication
8.4.3 Sharding
8.4.4 Architecture
8.4.5 Consistency
8.4.6 Failure Handling
8.5 CAP Theorem for Cloud Database Transaction
8.6 Issues in Live Migration of Databases in Cloud
8.7 Cloud Database Classification Based on Transaction Processing
8.7.1 ACID-Based Cloud Database
8.7.2 NoACID-Based Cloud Database
8.8 Commercially Available Cloud Database Platform
8.8.1 Amazon Web Services
8.8.2 Microsoft Windows Azure
8.8.3 Google App Engine
8.9 Summary
Exercises
References
9. Cloud-Based Data StorageDac-Nhuong Le, Souvik Pal, Prasant Kumar Pattnaik
9.1 Relevant Hadoop Tools
9.2 Hadoop Distributed File System (HDFS)
9.2.1 HDFS Architecture
9.2.2 Data Read Process in HDFS
9.2.3 Data Write Process in HDFS
9.2.4 Authority Management of HDFS
9.2.5 Limitations of HDFS
9.3 Data Mining Challenges with Big Data
9.4 MapReduce
9.4.1 MapReduce Architecture
9.4.2 MapReduce Procedure
9.4.3 Limitations of MapReduce
9.5 Next Generation of MapReduce: YARN
9.5.1 YARN Compared to MapReduce 1.0 (MRv1)
9.5.2 YARN and MapReduce 2.0 (MRv2)
9.5.3 YARN Architecture
9.5.4 Advantages of YARN
9.6 Classification of Data Mining Systems
9.6.1 Classification According to Kind of Databases Mined
9.6.2 Classification According to Kind of Knowledge Mined
9.6.3 Classification According to Kind of Techniques Utilized
9.6.4 Classification According to the Applications Adapted
9.7 Summary
Exercises
References
10. Auditing Concept in Cloud ComputingDac-Nhuong Le, Souvik Pal, Prasant Kumar Pattnaik
10.1 Introduction
10.2 Data Security in Cloud Computing Environment
10.2.1 Characteristics of a Secure Cloud Computing Environment
10.2.2 Need for Auditing in Cloud Computing Environment
10.2.3 Auditing Background Within Third-Party Service Provider
10.3 Cloud Auditing Outsourcing Life Cycle Phases
10.4 Auditing Classification
10.5 Auditing Service
10.5.1 How Third-Party Service Provider is Enabling Auditing Service
10.5.2 Auditing Process Analysis
10.5.3 Privacy and Integrity
10.5.4 Cloud-Auditing Architecture Analysis
10.6 Summary
Exercises
References
Part III: Cloud Computing Implementation, Security and Applications
11 Security Paradigms in Cloud ComputingPrasant Kumar Pattnaik, Dac-Nhuong Le, Souvik Pal
11.1 Security Paradigms and Issues
11.2 Cloud Security Challenges
11.3 Cloud Economics
11.4 Security of Big Data in Cloud
11.4.1 The Biggest Risk: Data Breach
11.4.2 Data Loss
11.4.3 Account or Service Traffic Hijacking
11.4.4 Insecure Interfaces and APIs
11.4.5 Denial of Service
11.4.6 Malicious Insiders
11.4.7 Abuse of Cloud Users
11.4.8 Inadequate Due Diligence
11.4.9 Vulnerabilities in Shared Technology
11.5 Security as a Service in Cloud
11.6 Summary
Exercises
References
12. Privacy Preservation Issues in Cloud ComputingPrasant Kumar Pattnaik, Dac-Nhuong Le, Souvik Pal
12.1 Privacy Issues in Cloud Storage
12.1.1 Encryption Methods
12.1.2 Access Control Mechanisms
12.1.3 Query Integrity/Keyword Searches
12.1.4 Auditability Schemes
12.2 Privacy and Security
12.2.1 Performance Unpredictability, Latency and Reliability
12.2.2 Portability and Interoperability
12.2.3 Data Breach Through Fiber-Optic Networks
12.2.4 Data Storage over IP Networks
12.2.5 Data Storage and Security in Cloud
12.3 Threats to Security in Cloud Computing
12.3.1 Basic Security
12.3.2 Network-Level Security
12.3.3 Application-Level Security
12.4 Security Issues in Cloud Deployment Models
12.4.1 Security Issues in a Public Cloud
12.4.2 Security Issues in a Private Cloud
12.5 Ensuring Security Against Various Types of Attacks
12.6 Survey of Privacy Preservation Using Fuzzy Set and Genetic Algorithm
12.6.1 Fuzzy-Based Approach for Privacy-Preserving Publication of Data
12.6.2 Privacy-Preserving Fuzzy Association Rules Hiding in Quantitative Data
12.6.3 A Rough Computing-Based Performance Evaluation Approach for Educational Institutions
12.6.4 A New Method for Preserving Privacy in Quantitative Association Rules Using Genetic Algorithm
12.6.5 Privacy Preserving in Association Rules Using a Genetic Algorithm
12.7 Summary
Exercises
References
13. Applications of Wireless Sensor Network in CloudPrasant Kumar Pattnaik, Dac-Nhuong Le, Souvik Pal
13.1 Introduction
13.2 Architectural Issues of Combining Cloud Computing and Wireless Sensor Networks
13.3 Sensor Network Overview
13.3.1 Terminology
13.3.2 Routing Protocols in WSNs
13.4 Application Scenarios
13.4.1 Military Use
13.4.2 Weather Forecasting
13.4.3 Healthcare
13.4.4 Transport Monitoring
13.5 Summary
Exercises
References
14. Applications of Mobile Cloud ComputingPrasant Kumar Pattnaik, Dac-Nhuong Le, Souvik Pal
14.1 What is Mobile Cloud Computing?
14.2 The Architecture of Mobile Cloud Computing
14.3 Characteristics of Mobile Cloud Computing
14.4 Advantages of Mobile Cloud Computing
14.5 Mobile Cloud Applications
14.5.1 Mobile Commerce
14.5.2 Mobile Learning
14.5.3 Mobile Healthcare
14.5.4 Mobile Gaming
14.5.5 Mobile Social Network
14.5.6 Multimedia Sharing
14.6 Summary
Exercises
References
15. Big Data in Cloud ComputingPrasant Kumar Pattnaik, Dac-Nhuong Le, Souvik Pal
15.1 Introduction to Big Data
15.2 Big Data vs. Cloud Computing
15.3 Big Data and the Cloud
15.4 Cloud Computing to Support Big Data
15.4.1 Cloud Storage for Big Data Storage
15.4.2 Cloud Computing for Big Data Processing
15.4.3 Cloud Computing for Big Data Analytics
15.4.4 Cloud Computing for Big Data Sharing and Remote Collaboration
15.5 Opportunities and Challenges
15.5.1 Pros of Putting Big Data in the Cloud
15.5.2 Potential Challenges of Big Data in the Cloud
15.6 Summary
Exercises
References
Part IV: Cloud Computing Simulator Tools
16. CloudSim: A Simulator for Cloud Computing EnvironmentDac-Nhuong Le, Souvik Pal, Prasant Kumar Pattnaik
16.1 Introduction
16.2 Main Features
16.3 CloudSim Architecture
16.3.1 Modeling the Cloud
16.3.2 Modeling the VM Allocation
16.3.3 Modeling the Cloud Market
16.3.4 Modeling the Network Behavior
16.3.5 Modeling a Federation of Clouds
16.3.6 Modeling Dynamic Workloads
16.3.7 Modeling Data Center Power Consumption
16.3.8 Modeling Dynamic Entities Creation
16.4 Design and Implementation of CloudSim
16.5 Setting up Development Environments
16.6 How to Use CloudSim with Eclipse
References
17. OpenFaaSPrasant Kumar Pattnaik, Dac-Nhuong Le, Souvik Pal
17.1 Introduction
17.2 OpenFaaS Architecture
17.3 OpenFaaS Installation
17.3.1 Development Environment with Docker Swarm
17.3.2 Multi-Node Cluster with Docker Swarm
17.3.3 Production Environment with Kubernetes
17.3.4 Installing OpenFaaS Using Helm
17.3.5 Install OpenShift
17.4 Considerations
17.5 Operation of OpenFaaS
17.5.1 Setup and Configuration of the Open FaaS Command Line Tool
17.5.2 OpenFaaS Store
17.5.3 Management and Usage of Functions
17.5.4 Development of Functions
17.5.5 Working with Docker Registries
17.5.6 Web UI 303 References
18. OpenNebulaPrasant Kumar Pattnaik, Dac-Nhuong Le, Souvik Pal
18.1 Project Goal and Environment
18.2 Set Up Masternode with Frontend
18.2.1 Install Components
18.2.2 Starting the Frontend
18.3 Set Up Worker Node with KVM
18.3.1 Install Components
18.3.2 Establish an SSH Communication Pipeline between Master and Worker 18.3.3 Network Configuration
18.4 Register Worker Node
18.5 Deploy VM
References
19. OpenStackDac-Nhuong Le, Souvik Pal, Prasant Kumar Pattnaik
19.1 OpenStack
19.2 Terminologies in OpenStack
19.3 OpenStack Architecture
19.3.1 Compute (Nova)
19.3.2 Networking (Neuron)
19.3.3 Image
19.3.4 Object Storage (Swift)
19.3.5 Block Storage (Cinder)
19.4 Logical Architecture
19.5 OpenStack Installation Guide
19.5.1 Hardware Requirements
19.5.2 Networking Requirements
19.6 OpenStack Work
References
20. EucalyptusSouvik Pal, Dac-Nhuong Le, Prasant Kumar Pattnaik
20.1 Introduction to Eucalyptus
20.1.1 Eucalyptus Overview
20.1.2 Eucalyptus Architecture
20.1.3 Eucalyptus Components
20.2 Eucalyptus Installation
20.2.1 System Requirements
20.2.2 Services Placement
20.2.3 Eucalyptus Features
20.2.4 Networking Modes
20.2.5 Install Repositories
20.3 Configure Eucalyptus
20.4 Amazon Web Services Compatibility
References
Glossary
AuthorsBack to Top