Unit-3: Cloud Management:
3.1 Tasks of Cloud management
3.2 Cloud Storage Devices: (Block storage, File Storage)
3.3 Cloud Storage Classes: (Managed and Unmanaged)
3.3.1 Cloud Virtualization: 3.3.1.1 Hypervisor
3.3.1.2 Types of Hardware Virtualization: (Full, Emulation,
Para)
3.1 Tasks of Cloud management
Cloud computing management is maintaining and controlling the
cloud services and resources be it public, private or hybrid. Some of its
aspects include load balancing, performance, storage, backups, capacity,
deployment etc. To do so a cloud managing personnel needs full access
to all the functionality of resources in the cloud. Different software
products and technologies are combined to provide a cohesive cloud
management strategy and process.
As we know Private cloud infrastructure is operated only for a single
organization, so that can be managed by the organization or by a third
party. Public cloud services are delivered over a network that is open and
available for public use. In this model, the IT infrastructure is owned by a
private company and members of the public can purchase or lease data
storage or computing capacity as needed. Hybrid cloud environments are
a combination of public and private cloud services from different
providers. Most organizations store data on private cloud servers for
privacy concerns, while leveraging public cloud applications at a lower
price point for less sensitive information. The combination of both the
public and private cloud are known as Hybrid cloud servers.
Need of Cloud Management:
Cloud is nowadays preferred by huge organizations as their primary data
storage. A small downtime or an error can cause a great deal of loss and
inconvenience for the organizations. So as to design, handle and
maintain a cloud computing service specific members are responsible
who make sure things work out as supposed and all arising issues are
addressed.
Cloud Management Platform:
A cloud management platform is a software solution that has a robust
and extensive set of APIs that allow it to pull data from every corner of
the IT infrastructure. A CMP allows an IT organization to establish a
structured approach to security and IT governance that can be
implemented across the organization’s entire cloud environment.
Cloud Management Tasks:
The below figure represents different cloud management tasks:
Cloud Management Tasks
Auditing System Backups –
It is required to audit the backups from time to time to ensure restoration
of randomly selected files of different users. This might be done by the
organization or by the cloud provider.
Flow of data in the system –
The managers are responsible for designing a data flow diagram that
shows how the data is supposed to flow throughout the organization.
Vendor Lock-In –
The managers should know how to move their data from a server to
another in case the organization decides to switch providers.
Knowing provider’s security procedures –
The managers should know the security plans of the provider, especially
Multitenant use, E-commerce processing, Employee screening and
Encryption policy.
Monitoring the Capacity, Planning and Scaling abilities –
The manager should know if their current cloud provider is going to meet
their organization’s demand in the future and also their scaling
capabilities.
Monitoring audit log –
In order to identify errors in the system, logs are audited by the managers
on a regular basis.
Solution Testing and Validation –
It is necessary to test the cloud services and verify the results and for
error-free solutions.
3.2 Cloud Storage Devices: (Block storage, File Storage)
Cloud storage devices, particularly in the context of block storage, refer to
the storage infrastructure provided by cloud service providers to store
data in a structured manner. Block storage is one of the common types of
storage services offered in cloud computing, and it is often used for
applications that require high-performance, low-latency access to data.
Here are key aspects of cloud storage devices in the context of
block storage:
1. Block Storage Basics:
Divided into Blocks: Block storage breaks data into blocks of fixed sizes
(e.g., 512 bytes, 4 KB, or 8 KB).
Low-Level Access: Users can read or write data at the block level,
enabling more granular control over data storage.
2. Cloud Service Providers (CSPs):
Infrastructure Providers: Cloud service providers, such as Amazon Web
Services (AWS), Microsoft Azure, and Google Cloud Platform (GCP), offer
block storage services as part of their infrastructure offerings.
On-Demand Resources: Users can provision and manage block storage
resources based on their requirements, scaling up or down as needed.
3. Key Characteristics:
Performance: Block storage is known for its high-performance
capabilities, making it suitable for applications like databases and virtual
machines where low-latency access is critical.
Scalability: Cloud storage devices provide scalability, allowing users to
adjust their storage capacity based on changing needs.
4. Use Cases:
Databases: Block storage is commonly used for database systems that
require fast and direct access to storage resources.
Virtual Machines (VMs): Many virtualization solutions use block storage
to store operating system and application data for VMs.
5. Redundancy and Data Protection:
Data Replication: Cloud storage devices often provide options for data
replication across multiple physical locations for redundancy and data
protection.
Snapshots: Users can create snapshots of block storage volumes to
capture a point-in-time copy of the data, facilitating data backups and
recovery.
6. Pricing Models:
Pay-as-You-Go: Cloud storage services typically follow a pay-as-you-go
model, allowing users to pay for the storage capacity they consume.
Tiered Storage: Some CSPs offer different storage classes or tiers with
varying performance characteristics and costs.
7. Integration with Other Services:
APIs: Cloud storage devices are accessed and managed through APIs,
allowing seamless integration with other cloud services and applications.
Ecosystem: Users can leverage additional cloud services, such as
compute resources, networking, and security, in conjunction with block
storage.
In summary, cloud storage devices in the context of block storage provide
scalable, high-performance storage solutions that are essential for various
cloud-based applications, particularly those requiring low-latency access
and precise control over data storage.
Here are some key aspects of cloud storage devices in the
context of file storage:
1. Remote Servers:
Cloud storage relies on remote servers that are owned and maintained by
service providers. These servers are often located in data centers around
the world.
Users do not need to worry about the physical upkeep of hardware, as the
responsibility falls on the cloud service provider.
2. Accessibility:
Cloud storage allows users to access their files from any device with
internet connectivity, such as computers, smartphones, and tablets.
Users can also access their files from different locations, enabling
collaboration and easy sharing.
3. Scalability:
Cloud storage services typically offer scalable solutions, allowing users to
adjust their storage needs based on requirements.
Users can purchase additional storage space as needed without the need
for physical hardware upgrades.
4. Data Synchronization:
Cloud storage often includes synchronization features, ensuring that files
are updated across all connected devices. Changes made on one device
are reflected on others.
5. Security:
Cloud storage services implement security measures, including
encryption, to protect user data during transmission and storage.
Users can set access permissions, control who can view or edit files, and
benefit from the security infrastructure maintained by the service
provider.
6. Backup and Recovery:
Cloud storage serves as a reliable backup solution. Files are stored
redundantly across multiple servers, reducing the risk of data loss due to
hardware failures.
Many cloud storage services offer versioning, allowing users to recover
previous versions of files.
7. Collaboration Features:
Many cloud storage platforms include collaboration features, such as real-
time editing, comments, and sharing options, facilitating teamwork and
project management.
Popular examples of cloud storage services include Dropbox, Google
Drive, Microsoft OneDrive, and Amazon S3. Each service may offer
different features, pricing models, and integrations, catering to various
user needs and preferences.
3.3 Cloud Storage Classes: (Managed and Unmanaged)
When discussing cloud storage, the terms "managed" and "unmanaged"
refer to the level of control and responsibility that users have over the
storage infrastructure and associated tasks. These terms are often used in
the context of cloud storage services provided by cloud service providers
(CSPs). Let's explore the concepts of managed and unmanaged cloud
storage:
Managed Cloud Storage:
1. Definition:
Control by CSP: In managed cloud storage, the cloud service
provider takes care of the underlying infrastructure, maintenance,
and operational aspects of the storage service.
Abstraction of Complexity: Users are abstracted from the
complexities of managing hardware, software updates, and other
low-level tasks.
2. Key Features:
Automation: Managed storage services typically include
automated processes for tasks such as data replication, backups,
and scaling.
Service-Level Agreements (SLAs): CSPs provide SLAs that
specify performance, availability, and reliability commitments.
3. Advantages:
Simplicity: Users can focus on using storage rather than managing
the infrastructure.
Scalability: Managed services often offer easy scalability, allowing
users to adjust storage capacity as needed.
Reduced Operational Overhead: Less operational overhead for
users as maintenance and updates are handled by the CSP.
4. Use Cases:
General Data Storage: Suitable for general-purpose data storage
needs.
Backup and Recovery: Managed services often provide built-in
backup and recovery features.
Unmanaged Cloud Storage:
1. Definition:
User Control: In unmanaged cloud storage, users have more
control over the storage infrastructure, including configuring,
managing, and maintaining the storage environment.
Responsibility for Tasks: Users are responsible for tasks such as
data replication, backups, and ensuring system updates.
2. Key Features:
Manual Configuration: Users manually configure and manage
various aspects of the storage environment, such as setting up
storage volumes and defining access controls.
More Flexibility: Offers more flexibility in terms of customization
and configuration.
3. Advantages:
Customization: Users have greater flexibility to customize storage
configurations to meet specific requirements.
Full Control: Users have full control over the storage environment
and can implement specific security and compliance measures.
4. Use Cases:
Specialized Requirements: Suitable for situations where
specialized configurations or compliance requirements must be met.
Advanced Users: More appropriate for users with advanced
knowledge and expertise in storage management.
Considerations:
Complexity vs. Control: The choice between managed and unmanaged
storage often involves a trade-off between the simplicity offered by
managed services and the greater control provided by unmanaged
services.
Cost Implications: Managed services may come with a higher cost but
can potentially reduce operational costs associated with managing
infrastructure manually.
Skill Level: Unmanaged services require a higher level of expertise and
operational involvement from users.
Ultimately, the decision between managed and unmanaged cloud storage
depends on the specific needs, preferences, and expertise of the users or
organizations leveraging the storage services.
3.3.1 Cloud Virtualization:
Cloud virtualization refers to the use of virtualization technology in cloud
computing environments to create virtual instances of computing
resources, such as virtual machines (VMs), storage, and networks.
Virtualization enables the abstraction of physical hardware, allowing
multiple virtual instances to run on a single physical machine. This
abstraction brings several benefits, including resource optimization,
flexibility, and improved management of computing infrastructure.
Here are key aspects of cloud virtualization:
1. Virtual Machines (VMs):
Hypervisor Technology: Cloud virtualization relies on hypervisors
(also known as Virtual Machine Monitors or VMMs) to create and
manage virtual machines. Hypervisors enable multiple VMs to run
on a single physical host.
Isolation: VMs provide isolation between different workloads,
allowing them to run independently on the same physical hardware.
2. Resource Pooling:
Pooling Resources: Cloud virtualization allows for the pooling of
physical computing resources, such as CPU, memory, and storage,
into a shared resource pool.
Dynamic Allocation: Resources can be dynamically allocated and
reassigned based on demand, optimizing resource utilization.
3. Elasticity and Scalability:
On-Demand Scaling: Cloud virtualization enables on-demand
scaling of resources. Users can provision or de-provision virtual
instances based on workload requirements.
Auto-Scaling: Automated scaling mechanisms can dynamically
adjust the number of virtual instances in response to changes in
demand.
4. Types of Virtualization:
Server Virtualization: Involves creating multiple virtual instances
of a physical server.
Storage Virtualization: Abstracts physical storage resources into
a virtualized layer, providing a unified view of storage.
Network Virtualization: Virtualizes networking components,
allowing the creation of virtual networks that operate independently
of the underlying physical infrastructure.
5. Benefits:
Resource Efficiency: Virtualization allows for better utilization of
hardware resources by running multiple workloads on a single
physical server.
Cost Savings: Consolidating workloads on fewer physical servers
can lead to cost savings in terms of hardware, power, and cooling.
Flexibility: Virtualization provides flexibility in managing and
configuring computing resources, making it easier to adapt to
changing business requirements.
6. Hypervisors:
Type 1 Hypervisor (Bare Metal): Installed directly on the
physical hardware, providing better performance and efficiency.
Type 2 Hypervisor (Hosted): Installed on top of an operating
system, suitable for development and testing environments.
7. Containers and Virtualization:
Containerization: In addition to traditional virtualization,
containerization technologies like Docker provide lightweight,
portable, and efficient packaging of applications and their
dependencies.
8. Cloud Virtualization Services:
Infrastructure as a Service (IaaS): Cloud providers offer
virtualized infrastructure resources, including VMs, storage, and
networking.
Platform as a Service (PaaS): Provides a higher level of
abstraction, allowing developers to focus on application
development without managing the underlying infrastructure.
In summary, cloud virtualization plays a crucial role in cloud computing by
providing a flexible, scalable, and efficient way to manage computing
resources. It enables users to abstract and optimize their infrastructure
while supporting the dynamic and on-demand nature of cloud services.
3.3.1.1 Hypervisor
A hypervisor, also known as a Virtual Machine Monitor (VMM), is a
software or hardware component that enables the virtualization of
computer hardware, allowing multiple operating systems (OS) to run on a
single physical machine. The primary purpose of a hypervisor is to
manage and allocate the resources of the underlying hardware to the
virtual machines (VMs) running on it. There are two main types of
hypervisors: Type 1 (bare-metal) and Type 2 (hosted).
1. Type 1 Hypervisor (Bare-Metal Hypervisor):
Directly on Hardware: Type 1 hypervisors run directly on the bare
metal of the physical hardware without the need for a host
operating system.
High Performance: Because there is no underlying host OS, Type
1 hypervisors generally offer better performance and efficiency
compared to Type 2 hypervisors.
Common Use Cases: Data centers, server virtualization, cloud
infrastructure.
2. Type 2 Hypervisor (Hosted Hypervisor):
On Top of Host OS: Type 2 hypervisors run on top of a host
operating system and rely on the host OS for resource
management.
Ease of Use: Typically used for development, testing, and desktop
virtualization, as they are easier to set up on a standard desktop or
laptop.
Common Use Cases: Virtualization for testing environments,
software development.
Key Functions and Features of Hypervisors:
1. Resource Virtualization:
CPU: Hypervisors allocate CPU resources to virtual machines,
ensuring fair and efficient utilization.
Memory: The hypervisor manages memory allocation and access
for each virtual machine.
2. Device Emulation:
I/O Devices: Hypervisors emulate virtual versions of physical
input/output devices, allowing VMs to interact with them.
3. Isolation:
VM Isolation: Hypervisors provide isolation between virtual
machines, preventing one VM from affecting the others. Each VM
operates independently as if it were running on dedicated hardware.
4. Snapshot and Cloning:
Snapshots: Hypervisors allow the creation of snapshots, which are
point-in-time images of a VM's state. Snapshots can be used for
backup and recovery.
Cloning: Hypervisors enable the cloning of VMs, making it easy to
replicate and deploy virtualized environments.
5. Live Migration:
Dynamic Movement: Some hypervisors support live migration,
allowing virtual machines to be moved from one physical host to
another without service interruption.
6. Hypervisor Types:
VMware vSphere/ESXi, Microsoft Hyper-V, KVM/QEMU, Xen:
Examples of popular Type 1 hypervisors.
Oracle VirtualBox, VMware Workstation, Parallels: Examples
of popular Type 2 hypervisors.
7. Cloud Computing:
Foundation for Cloud Infrastructure: Hypervisors play a crucial
role in cloud computing by enabling the efficient use of physical
resources and providing the basis for creating and managing virtual
machines in cloud environments.
Hypervisors are fundamental to the field of virtualization, facilitating the
consolidation of workloads, improving resource utilization, and providing
flexibility in managing computing resources in both data center and
desktop environments.
3.3.1.2 Types of Hardware Virtualization: (Full, Emulation, Para)
Hardware virtualization, also known as platform virtualization, involves
creating virtual versions of computer hardware platforms. There are
several types of hardware virtualization, with full virtualization, emulation,
and paravirtualization being the most common.
1. Full Virtualization:
Description: In full virtualization, the hypervisor presents a
complete and virtualized set of hardware to the guest operating
systems. Guest OSes are unaware that they are running in a
virtualized environment.
Advantages:
Guest OSes do not need to be modified.
High compatibility with various operating systems.
Disadvantages:
Can introduce some performance overhead due to the need to
translate between virtual and physical hardware.
2. Emulation:
Description: Emulation involves mimicking the entire hardware
environment, including the CPU architecture, through software. This
allows running software or operating systems that are not designed
for the host machine's architecture.
Advantages:
Provides compatibility for running software on different
architectures.
Disadvantages:
Tends to be slower than full virtualization due to the emulation
layer.
Resource-intensive as it requires translating instructions on-
the-fly.
3. Paravirtualization:
Description: Paravirtualization is a form of virtualization in which
the guest operating system is aware that it is running in a
virtualized environment. The guest OS is modified to communicate
directly with the hypervisor for better performance.
Advantages:
Reduced overhead as the guest OS cooperates with the
hypervisor.
Generally offers better performance compared to full
virtualization.
Disadvantages:
Requires modification of the guest OS, which may not be
feasible for all operating systems.
Limited compatibility compared to full virtualization.
Each type of hardware virtualization has its strengths and weaknesses,
and the choice of which to use depends on the specific use case and
requirements. Full virtualization is often used in scenarios where
compatibility with a wide range of operating systems is crucial. Emulation
is employed when running software on different architectures is
necessary, even at the cost of performance. Para virtualization strikes a
balance by offering good performance while requiring some cooperation
from the guest operating system. The selection of the appropriate
virtualization approach depends on factors such as performance
considerations, compatibility requirements, and the level of control over
the guest operating systems.