0% found this document useful (0 votes)
25 views36 pages

CC Solutions 1

The document provides an overview of cloud computing, including definitions, deployment models (public, private, hybrid, community), and service models (IaaS, PaaS, SaaS). It discusses the benefits of cloud computing such as on-demand self-service, resource pooling, and lower costs, as well as characteristics of greenfield projects and the Cloud Cube Model. Additionally, it covers cluster architecture, design principles, resource management, and middleware in cluster systems.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
25 views36 pages

CC Solutions 1

The document provides an overview of cloud computing, including definitions, deployment models (public, private, hybrid, community), and service models (IaaS, PaaS, SaaS). It discusses the benefits of cloud computing such as on-demand self-service, resource pooling, and lower costs, as well as characteristics of greenfield projects and the Cloud Cube Model. Additionally, it covers cluster architecture, design principles, resource management, and middleware in cluster systems.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 36

Module 1

1. Define Cloud Computing. Explain the NIST model with a neat


diagram.
Cloud computing refers to applications and services that run on a distributed network
using virtualized resources and accessed by common Internet protocols and
networking standards.

Deployment models

A deployment model defines the purpose of the cloud and the nature of how the
cloud is located.

The NIST definition for the four deployment models is as follows:

1. Public cloud: The public cloud infrastructure is available for public use
alternatively for a large industry group and is owned by an organization selling cloud
services.

2. Private cloud: The private cloud infrastructure is operated for the exclusive use
of an organization. The cloud may be managed by that organization or a third party.
Private clouds may be either on- or off-premises.
3. Hybrid cloud: A hybrid cloud combines multiple clouds (private, community of
public) where those clouds retain their unique identities, but are bound together as a
unit. A hybrid cloud may offer standardized or proprietary access to data and
applications, as well as application portability.

4. Community cloud: A community cloud is one where the cloud has been
organized to serve a common function or purpose.

Service models

1. Infrastructure as a Service:
• IaaS provides virtual machines, virtual storage, virtual infrastructure, and
other hardware assets as resources that clients can provision.
• The IaaS service provider manages all the infrastructure, while the client is
responsible for all other aspects of the deployment. This can include the
operating system, applications, and user interactions with the system.
Examples :Amazon Elastic Compute Cloud (EC2) , Eucalyptus , GoGrid,
FlexiScale, Linode, Rack Space Cloud , Terremark
2. Platform as a Service:
• PaaS provides virtual machines, operating systems, applications, services,
development frameworks, transactions, and control structures.
• The service provider manages the cloud infrastructure, the operating systems,
and the enabling software. The client is responsible for installing and managing
the application that it is deploying. Example: Force.com, GoGrid Cloud Center
,Google App Engine ,Windows Azure Platform
3. Software as a Service:
• SaaS is a complete operating environment with applications, management,
and the user interface.
• In the SaaS model, the application is provided to the client through a thin
client interface and the customer’s responsibility begins and ends with entering
and managing its data and user interaction.
Example: Google Apps ,Oracle On Demand , SalesForce.com ,SQL Azure
2. List and explain benefits of Cloud Computing and additional
advantages.
Benefits of Cloud computing and additional advantages

• On-demand self-service: A client can provision computer resources without the


need for interaction with cloud service provider personnel.
• Broad network access: Access to resources in the cloud is available over the
network using standard methods in a manner that provides platform-independent
access to clients of all types.
• Resource pooling: A cloud service provider creates resources that are pooled
together in a system that supports multi-tenant usage.
• Rapid elasticity: Resources can be rapidly and elastically provisioned. The
system can add resources by either scaling up systems or scaling out systems
and scaling may be automatic or manual.
• Measured service: The use of cloud system resources is measured, audited, and
reported to the customer based on a metered system.
Additional benefits

• Lower costs: Because cloud networks operate at higher efficiencies and with
greater utilization, significant cost reductions are often encountered.
• Ease of utilization: Depending upon the type of service being offered, you may
find that you do not require hardware or software licenses to implement your
service.
• Quality of Service: The Quality of Service (QoS) is something that you can
obtain under contract from your vendor.
• Reliability: The scale of cloud computing networks and their ability to provide
load balancing and failover makes them highly reliable, often much more
reliable than what you can achieve in a single organization.
• Outsourced IT management: A cloud computing deployment lets someone else
manage your computing infrastructure while you manage your business.
• Simplified maintenance and upgrade: Because the system is centralized, you can
easily apply patches and upgrades.
• Low Barrier to Entry: In particular, upfront capital expenditures are dramatically
reduced. In cloud computing, anyone can be a giant at any time.

3. Explain the Scalable computing over the internet with a neat diagram.

On the HPC side,

• supercomputers (massively parallel processors or MPPs) are gradually replaced by


clusters of cooperative computers out of a desire to share computing resources.

• The cluster is often a collection of homogeneous compute nodes that are physically
connected in close range to one another.

On the HTC side,

• peer-to-peer (P2P) networks are formed for distributed file sharing and content
delivery applications. A P2P system is built over many client machines.

• Peer machines are globally distributed in nature. P2P, cloud computing, and web
service platforms are more focused on HTC applications than on HPC applications.
Clustering and P2P technologies lead to the development of computational grids or
data grids.

4. What are Greenfield projects & list the characteristics which are
required for a datacenters.
A greenfield project refers to a new initiative that is built from scratch, without any
existing infrastructure, constraints, or legacy systems. As the various datacentres grew
in size, businesses have developed their datacentres as “green-field” projects.
Characteristics of Green field projects -
• Have access to low-cost power
• Leverage renewable power source
• Be near abundant water
• Be sited where high-speed network backbone connections can be made
• Keep land costs modest and occupation unobtrusive
• Obtain tax breaks
• Optimize the overall system latency
5. Explain the Cloud Cube Model with a neat diagram.

The Open Group maintains an association called the Jericho Forum whose main focus
is how to protect cloud networks. The group has an interesting model that attempts to
categorize a cloud network based on four dimensional factors.

1. Physical location of the data: Internal (I) / External (E) determines your
organization’s boundaries.
2. Ownership: Proprietary (P) / Open (O) is a measure of not only the technology
ownership, but of interoperability, ease of data transfer, and degree of vendor
application lock-in.
3. Security boundary: Perimeterised (Per) / De-perimiterised (D-p) is a measure of
whether the operation is inside or outside the security boundary or network
firewall.
4. Sourcing: Insourced or Outsourced means whether the service is provided by the
customer or the service provider.
Taken together, the fourth dimension corresponds to two different states in the eight
possible cloud forms: Per (IP, IO, EP, EO) and D-p (IP, IO, EP, EO). The sourcing
dimension addresses the deliverer of the service. What the Cloud Cube Model is
meant to show is that the traditional notion of a network boundary being the network’s
firewall no longer applies in cloud computing.
6. Explain the Cluster Architecture with a neat diagram.

The architecture of a typical server cluster built around a low-latency, high-bandwidth


interconnection network. This network can be as simple as a SAN (e.g., Myrinet) or a
LAN (e.g., Ethernet).
• To build a larger cluster with more nodes, the interconnection network can be built with
multiple levels of Gigabit Ethernet, Myrinet, or InfiniBand switches.
• Through hierarchical construction using a SAN, LAN, or WAN, one can build scalable
clusters with an increasing number of nodes. The cluster is connected to the Internet via
a virtual private network (VPN) gateway.
• The gateway IP address locates the cluster. The system image of a computer is decided
by the way the OS manages the shared cluster resources. Most clusters have loosely
coupled node computers.
• All resources of a server node are managed by their own OS. Thus, most clusters have
multiple system images as a result of having many autonomous nodes under different OS
control.

Module 2
1.Explain the Cluster Architecture with a neat diagram.

• The figure shows a simple cluster of computers built with commodity components and
fully supported with desired SSI features and HA capability.
• The processing nodes are commodity workstations, PCs, or servers. These commodity
nodes are easy to replace or upgrade with new generations of hardware. The node
operating systems should be designed for multiuser, multitasking, and multithreaded
applications.
• The processing nodes are commodity workstations, PCs, or servers. These commodity
nodes are easy to replace or upgrade with new generations of hardware.
• The node operating systems should be designed for multiuser, multitasking, and
multithreaded applications. The nodes are interconnected by one or more fast
commodity networks.
• These networks use standard communication protocols and operate at a speed that
should be two orders of magnitude faster than that of the current TCP/IP speed over
Ethernet.
• The network interface card is connected to the node’s standard I/O bus (e.g., PCI).
When the processor or the operating system is changed, only the driver software
needs to change.
An availability middleware offers HA services. An SSI layer provides a single-entry
point, a single file hierarchy, a single point of control, and a single job management
system. Single memory may be realized with the help of the compiler or a runtime
library.
• In addition to running sequential user programs, the cluster supports parallel
programming based on standard languages and communication libraries using PVM,
MPI, or OpenMP. The programming environment also includes tools for debugging,
profiling, monitoring, and so forth.

2. Describe the Design Principles of Computer Clusters.


1. Scalability: Clustering of computers is based on the concept of modular growth. The
scalability could be limited by a number of factors, such as the multicore chip
technology, cluster topology, packaging method, power consumption, and cooling
scheme applied.

2. Packaging: Cluster nodes can be packaged in a compact or a slack fashion.

• In a compact cluster, the nodes are closely packaged in one or more racks sitting in
a room, and the nodes are not attached to peripherals
• In a slack cluster, the nodes are attached to their usual peripherals and they may be
located in different rooms, different buildings, or even remote regions.

3.Control

In a centralized cluster, all the nodes are owned, controlled, managed, and
administered by a central operator.
In a decentralized cluster, the nodes have individual owners.

4.Homogeneity
• A homogeneous cluster uses nodes from the same platform, that is, the same
processor architecture and the same operating system; often, the nodes are from
the same vendors.
• A heterogeneous cluster uses nodes of different platforms. Interoperability is
an important issue in heterogeneous clusters.

5. Security

• Intracluster communication can be either exposed or enclosed. In an exposed


cluster, the communication paths among the nodes are exposed to the outside
world.
• In an enclosed cluster, intracluster communication is shielded from the outside
world, which alleviates the aforementioned problems.

6 . Dedicated versus Enterprise Clusters

• A dedicated cluster is typically installed in a deskside rack in a central computer


room. It is homogeneously configured with the same type of computer nodes and
managed by a single administrator group like a frontend host.
• An enterprise cluster is mainly used to utilize idle resources in the nodes. The
nodes are typically geographically distributed, and are not necessarily in the same
room or even in the same building. The nodes are individually owned by multiple
owners.

3.Illustrate a scenario where Resource Management in Clusters is


critical.
The shared-nothing architecture is used in most clusters, where the nodes are connected
through the I/O bus. The shared-nothing configuration simply connects two or more
autonomous computers via a LAN such as Ethernet.

The shared-disk architecture is in favor of small-scale availability clusters in business


applications. When one node fails, the other node takes over. The shared disk can hold
checkpoint files or critical system images to enhance cluster availability. Without shared
disks, check-pointing, rollback recovery, failover,and failback are not possible in a
cluster.

The shared-memory cluster in Part (c) is much more difficult to realize. The nodes
could be connected by a scalable coherence interface (SCI) ring, which is connected
to the memory bus of each node through an NIC module. In the other two
architectures, the interconnect is attached to the I/O bus. The memory bus operates at
a higher frequency than the I/O bus.
4. Discuss any four fundamental design issues in cluster systems.

Scalable Performance: This refers to the fact that scaling of leads to a


proportional increase in performance. Of course, both scale-up and scale-down
capabilities are needed, depending on application demand or cost-effectiveness
considerations. Clustering is driven by scalability.
Single-System Image (SSI): A set of workstations connected by an Ethernet
network is not necessarily a cluster. A cluster is a single system.
Availability Support: Clusters can provide cost-effective HA capability with
lots of redundancy in processors, memory, disks, I/O devices, networks, and
operating system images. However, to realize this potential, availability
techniques are required.
Cluster Job Management: Clusters try to achieve high system utilization
from traditional workstations or PC nodes that are normally not highly utilized.
Job management software is required to provide batching, load balancing,
parallel processing, and other functionality. Special software tools are needed
to manage multiple jobs simultaneously.
Internode Communication: Because of their higher node complexity, cluster
nodes cannot be packaged as compactly as MPP nodes. The internode physical
wire lengths are longer in a cluster than in an MPP. This is true even for
centralized clusters. Clusters often use commodity networks (e.g., Ethernet)
with standard protocols such as TCP/IP.
Fault Tolerance and Recovery: Clusters of machines can be designed to
eliminate all single points of failure. Through redundancy, a cluster can tolerate
faulty conditions up to a certain extent. Heartbeat mechanisms can be installed
to monitor the running condition of all nodes. In case of a node failure, critical
jobs running on the failing nodes can be saved by failing over to the surviving
node machines. Rollback recovery schemes restore the computing results
through periodic checkpointing.
5. Explain the relationship among clustering middleware at the job
management, programming, and implementation levels.

Middleware support for SSI clustering are supported by middleware developed at


three cluster application levels:
• Management level: This level handles user applications and provides a job
management system such as GLUnix, MOSIX, Load Sharing Facility (LSF), or
Codine.
• Programming level :This level provides single file hierarchy (NFS, xFS, AFS,
Proxy) and distributed shared memory (TreadMark, Wind Tunnel)
• Implementation level :This level supports a single process space, checkpointing,
process migration, and a single I/O space. These features must interface with the
cluster hardware and OS platform.

6. Differentiate the following terms related to clusters:


I) Centralized versus decentralized clusters
Centralized cluster: all the nodes are owned, controlled, managed, and
administered by a central .
Decentralized cluster: the nodes have individual owners. The owner can
reconfigure, upgrade, or even shut down the workstation at any time.
operator.
II) Enclosed versus exposed clusters

Exposed cluster: The communication paths among the nodes are exposed to the
outside world. An outside machine can access the communication paths, and
thus individual nodes, using standard protocols (e.g., TCP/IP).
Enclosed cluster: Intracluster communication is shielded from the outside
world, which alleviates the aforementioned problems.

III) Dedicated versus enterprise clusters


A dedicated cluster is typically installed in a deskside rack in a central computer
room. It is homogeneously configured with the same type of computer nodes and
managed by a single administrator group like a frontend host.
An enterprise cluster is mainly used to utilize idle resources in the nodes. The
nodes are typically geographically distributed, and are not necessarily in the same
room or even in the same building.

7. Explain i) The working principle of GPU cluster for massive


parallelism

• SSI (Single System Image) and HA (High Availability) features in a cluster are
not free and require support at various system levels.
• They must be supported by hardware, software, middleware, or OS extensions.
• Any change in hardware design and OS extensions must be done by the
manufacturer. The hardware and OS support could be cost prohibitive to
ordinary users.
• Close to the user application end, middleware packages are needed at the
cluster management level: one for fault management to support failover and
failback.
• Another desired feature is to achieve HA using failure detection and recovery
and packet switching.
• To support high availability (HA), the Linux operating system must be
modified, and specialized drivers are required to enable HA, I/O operations,
and hardware device support.
At the hardware level, specialized components are needed to support hot-
swappable devices and provide router interfaces.

ii) any 2 Fault tolerant cluster configuration.


Hot standby server clusters
• In a hot standby cluster, only the primary node actively performs useful work.
• The standby node is powered on and runs monitoring programs to send
heartbeat signals checking the primary node's status.
• The standby node does not run other useful workloads. The primary node
mirrors data to shared disk storage.
• Shared disk storage is accessible by the standby node. The standby node
requires a second copy of the data.

Active-takeover clusters

• The architecture is symmetric among multiple server nodes.


• Both servers are primary and perform useful work simultaneously.
• Both failover and failback are supported on all server nodes.
• When a node fails, user applications fail over to an available node in the cluster.
• Users may experience delays or data loss for unsaved data at the last
checkpoint, depending on failover time.

Failover cluster

• Failover is a critical feature for modern clusters in commercial applications.


• It ensures the remaining system takes over services from the failed component.
• The failover mechanism encompasses failure diagnosis, notification, and
recovery functions.
• Failure diagnosis involves detecting and locating the failed component causing
the issue.
• Heartbeat is a common technique where cluster nodes exchange a stream of
heartbeat messages.
• Absence of heartbeat messages signals either a node failure or network
connection failure.

8. Explain the classification of cluster family.


Cluster family can be classified into three categories.
Compute clusters The compute clusters do not handle many I/O operations,
such as database services. When a single compute job requires frequent
communication among the cluster nodes, the cluster must share a dedicated
network, and thus the nodes are mostly homogeneous and tightly coupled. This
type of clusters is also known as a Beowulf cluster.
High-Availability clusters HA (high-availability) clusters are designed to be
fault-tolerant and achieve HA of services. HA clusters operate with many
redundant nodes to sustain faults or failures.
Load-balancing clusters These clusters shoot for higher resource utilization
through load balancing among all participating nodes in the cluster. All nodes
share the workload or function as a single virtual machine (VM). Requests
initiated from the user are distributed to all node computers to form a cluster.
Module 3
1. Explain the Implementation Levels of Virtualization.

1. Instruction Set Architecture Level


At the ISA level, virtualization is performed by emulating a given ISA by the
ISA of the host machine. Instruction set emulation leads to virtual ISAs created
on any hardware machine. The basic emulation method is through code
interpretation. An interpreter program interprets the source instructions to
target instructions one by one. For better performance, dynamic binary
translation is desired. This approach translates basic blocks of dynamic source
instructions to target instructions.
2. Hardware Abstraction Level
Hardware-level virtualization is performed right on top of the bare hardware.
On the one hand, this approach generates a virtual hardware environment for
a VM. On the other hand, the process manages the underlying hardware
through virtualization. The idea is to virtualize a computer’s resources, such
as its processors, memory, and I/O devices. The intention is to upgrade the
hardware utilization rate by multiple users concurrently.
3. Operating System Level
This refers to an abstraction layer between traditional OS and user
applications. OS-level virtualization creates isolated containers on a single
physical server and the OS instances to utilize the hardware and software in
data centers. The containers behave like real servers. OS-level virtualization is
commonly used in creating virtual hosting environments to allocate hardware
resources among a large number of mutually distrusting users.
4. Library Support Level
Most applications use APIs exported by user-level libraries rather than using
lengthy system calls by the OS. Since most systems provide well-documented
APIs, such an interface becomes another candidate for virtualization.
Virtualization with library interfaces is possible by controlling the
communication link between applications and the rest of a system through API
hooks.
5. User-Application Level
Virtualization at the application level virtualizes an application as a VM. On a
traditional OS, an application often runs as a process. Therefore, application-
level virtualization is also known as process-level virtualization. Any program
written in the HLL and compiled for this VM will be able to run on it.
2. Explain Xen Architecture and analyze how this architecture
supports virtualization.

• Xen is an open-source hypervisor program developed by Cambridge


University. Xen is a microkernel hypervisor, which separates the policy from
the mechanism. The Xen hypervisor implements all the mechanisms, leaving
the policy to be handled by Domain 0.
• Xen does not include any device drivers natively. It just provides a mechanism
by which a guest OS can have direct access to the physical devices. As a result,
the size of the Xen hypervisor is kept rather small. Xen provides a virtual
environment located between the hardware and the OS.
• A number of vendors are in the process of developing commercial Xen
hypervisors, among them are Citrix XenServer and Oracle VM. The core
components of a Xen system are the hypervisor, kernel, and applications.
• The organization of the three components is important. Like other
virtualization systems, many guest OSes can run on top of the hypervisor.
However, not all guest OSes are created equal, and one in Virtual Machines
and Virtualization of Clusters and Data Centers particular controls the others.
• The guest OS, which has control ability, is called Domain 0, and the others are
called Domain U. Domain 0 is a privileged guest OS of Xen. It is first loaded
when Xen boots without any file system drivers being available.
• Domain 0 is designed to access hardware directly and manage devices.
Therefore, one of the responsibilities of Domain 0 is to allocate and map
hardware resources for the guest domains (the Domain U domains). For
example, Xen is based on Linux and its security level is C2.
• Its management VM is named Domain 0, which has the privilege to manage
other VMs implemented on the same host. If Domain 0 is compromised, the
hacker can control the entire system. So, in the VM system, security policies
are needed to improve the security of Domain 0.
• Domain 0, behaving as a VMM, allows users to create, copy, save, read,
modify, share, migrate, and roll back VMs as easily as manipulating a file,
which flexibly provides tremendous benefits for users.

3. Explain the COD Partitioning a physical cluster into multiple


virtual clusters with a neat diagram.

• Developed by researchers at Duke University, the COD (Cluster-on-Demand)


project is a virtual cluster management system for dynamic allocation of
servers from a computing pool to multiple virtual clusters.
• The COD partitions a physical cluster into multiple virtual clusters (vClusters).
vCluster owners specify the operating systems and software for their clusters
through an XML-RPC interface.
• The vClusters run a batch schedule from Sun’s GridEngine on a web server
cluster. The COD system can respond to load changes in restructuring the
virtual clusters dynamically.
• The Duke researchers used the Sun GridEngine scheduler to demonstrate that
dynamic virtual clusters are an enabling abstraction for advanced resource
management in computing utilities such as grids.
• The system supports dynamic, policy-based cluster sharing between local users
and hosted grid services. Attractive features include resource reservation,
adaptive provisioning, scavenging of idle resources, and dynamic instantiation
of grid services.
• The COD servers are backed by a configuration database. This system provides
resource policies and template definition in response to user requests.

4. Analyze the Live migration process of a VM from one host to


another with a neat diagram.
Steps 0 and 1: Start migration. This step makes preparations for the migration,
including determining the migrating VM and the destination host. Although users
could manually make a VM migrate to an appointed host, in most circumstances,
the migration is automatically started by strategies such as load balancing and
server consolidation.

Steps 2: Transfer memory. Since the whole execution state of the VM is stored in
memory, sending the VM’s memory to the destination node ensures continuity of
the service provided by the VM. All of the memory data is transferred in the first
round, and then the migration controller recopies the memory data which is
changed in the last round. These steps keep iterating until the dirty portion of the
memory is small enough to handle the final copy. Although precopying memory
is performed iteratively, the execution of programs is not obviously interrupted.

Step 3: Suspend the VM and copy the last portion of the data. The migrating VM’s
execution is suspended when the last round’s memory data is transferred. Other
nonmemory data such as CPU and network states should be sent as well. During
this step, the VM is stopped and its applications will no longer run. This “service
unavailable” time is called the “downtime” of migration, which should be as short
as possible so that it can be negligible to users.

Steps 4 and 5: Commit and activate the new host. After all the needed data is
copied, on the destination host, the VM reloads the states and recovers the
execution of programs in it, and the service provided by this VM continues. Then
the network connection is redirected to the new VM and the dependency to the
source host is cleared. The whole migration process finishes by removing the
original VM from the source host.
6. Explain the concept of Physical versus Virtual clusters.

The provisioning of VMs to a virtual cluster is done dynamically to have the


following interesting properties:

a. The virtual cluster nodes can be either physical or virtual machines. Multiple
VMs running with different OSes can be deployed on the same physical node.
b. A VM runs with a guest OS, which is often different from the host OS, that
manages the resources in the physical machine, where the VM is implemented.
c. The purpose of using VMs is to consolidate multiple functionalities on the same
server. This will greatly enhance server utilization and application flexibility.
d. VMs can be colonized (replicated) in multiple servers for the purpose of
promoting distributed parallelism, fault tolerance, and disaster recovery.
• The size of a virtual cluster can grow or shrink dynamically, similar to the way
an overlay network varies in size in a peer-to-peer (P2P) network.

• The failure of any physical nodes may disable some VMs installed on the
failing nodes. But the failure of VMs will not pull down the host system.

7. What are the advantages of OS level Virutalization.


Advantages of OS level virtualization
Compared to hardware-level virtualization, the benefits of OS
extensions are twofold:
• VMs at the operating system level have minimal startup/shutdown
costs, low resource requirements, and high scalability and
• OS-level VM, it is possible for a VM and its host environment to
synchronize state changes when necessary.
• These benefits can be achieved via two mechanisms of OS-level
virtualization:
• All OS-level VMs on the same physical machine share a single
operating system kernel.
• The virtualization layer can be designed in a way that allows processes
in VMs to access as many resources of the host machine as possible, but
never to modify them.

Disadvantage of OS level virtualization:


• All the VMs at operating system level on a single container must have
the same kind of guest operating system.
• The access requests from a VM need to be redirected to the VM’s local
resource partition on the physical machine.
• There are two ways to implement virtual root directories.
• Duplicating common resources to each VM partition; or sharing most
resources with the host environment and only creating private resource
copies on the VM on demand.
• The first way incurs significant resource costs and overhead on a
physical machine.
• This issue neutralizes the benefits of OS-level virtualization, compared
with hardware assisted virtualization.
• Therefore, OS-level virtualization is often a second choice.

8. Explain the basic concept of vCUDA Architecture with a neat


diagram.
CUDA is a programming model and library for general-purpose GPUs.
The vCUDA employs a client-server model to implement CUDA
virtualization. It consists of three user space components: the vCUDA
library, a virtual GPU in the guest OS (which acts as a client), and the
vCUDA stub in the host OS (which acts as a server). The vCUDA library
resides in the guest OS as a substitute for the standard CUDA library. It
is responsible for intercepting and redirecting API calls from the client
to the stub. vCUDA also creates vGPUs and manages them.
Module 4
1. Discuss the features of AWS (Amazon Web Service).

• VMs can be used to share computing resources both flexibly and safely.
Amazon has been a leader in providing public cloud services. Amazon
applies the IaaS model in providing its services.
• EC2 provides the virtualized platforms to the host VMs where the cloud
application can run. S3 (Simple Storage Service) provides the object-
oriented storage service for users.
• EBS (Elastic Block Service) provides the block storage interface which can
be used to support traditional applications.
• SQS stands for Simple Queue Service, and its job is to ensure a reliable
message service between two processes. The message can be kept reliably
even when the receiver processes are not running.
• Users can access their objects through SOAP with either browsers or other
client programs which support the SOAP standard.
• Amazon offers queuing and notification services (SQS and SNS), which are
implemented in the AWS cloud. Using the AWS platform, they can service
large numbers of Internet users and make profits through those paid
services.
• ELB automatically distributes incoming application traffic across multiple
Amazon EC2 instances and allows user to avoid nonoperating nodes and to
equalize load on functioning images. Both autoscaling and ELB are enabled
by CloudWatch which monitors running instances.
• CloudWatch is a web service that provides monitoring for AWS cloud
resources, starting with Amazon EC2. It provides customers with visibility
into resource utilization, operational performance, and overall demand
patterns, including metrics such as CPU utilization, disk reads and writes,
and network traffic.
• The Elastic MapReduce capability is equivalent to Hadoop running on the
basic EC2 offering. AWS Import/Export allows one to ship large volumes
of data to and from EC2 by shipping physical disks.Amazon CloudFront
implements a content distribution network.

2. Explain cloud service models at different service levels with a


neat diagram.
i.) Infrastructure as a Service: This model allows users to use virtualized IT
resources for computing, storage, and networking. In short, the service is
performed by rented cloud infrastructure. The user can deploy and run his
applications over his chosen OS environment. The user does not manage or control
the underlying cloud infrastructure, but has control over the OS, storage, deployed
applications, and possibly select networking components. This IaaS model
encompasses storage as a service, compute instances as a service, and
communication as a service.
ii.) Platform as a Service (PaaS) To be able to develop, deploy, and manage the
execution of applications using provisioned resources demands a cloud platform
with the proper software environment. Such a platform includes operating system
and runtime library support. This has triggered the creation of the PaaS model to
enable users to develop and deploy their user applications. The cloud provider
supports user application development and testing on a well-defined service
platform.
iii.) Software as a Service (SaaS):
The SaaS model provides software applications as a service. As a result, on the
customer side, there is no upfront investment in servers or software licensing. On
the provider side, costs are kept rather low, compared with conventional hosting
of user applications. Customer data is stored in the cloud that is either vendor
proprietary or publicly hosted to support PaaS and IaaS. The best examples of SaaS
services include Google Gmail and docs, Microsoft SharePoint, and the CRM
software from Salesforce.com.The benefits of using cloud services are evident in
these SaaS applications.

3.List and explain the Cloud design objectives.


Cloud design Objectives

➢ Shifting computing from desktops to data centers Computer processing,


storage, and software delivery is shifted away from desktops and local servers
and toward data centers over the Internet.
➢ Service provisioning and cloud economics Providers supply cloud services
by signing SLAs with consumers and end users. The services must be efficient
in terms of computing, storage, and power consumption. Pricing is based on a
pay-as-you-go policy.
➢ Scalability in performance The cloud platforms and software and
infrastructure services must be able to scale in performance as the number of
users increases.
➢ Data privacy protection Can you trust data centers to handle your private
data and records? This concern must be addressed to make clouds successful
as trusted services.
➢ High quality of cloud services The QoS of cloud computing must be
standardized to make clouds interoperable among multiple providers.
➢ New standards and interfaces This refers to solving the data lock-in problem
associated with data centers or cloud providers. Universally accepted APIs and
access protocols are needed to provide high portability and flexibility of
virtualized applications.

4.Explain the public, private and hybrid clouds functional


architecture and its connectivity with a neat diagram.
1. Public Clouds
• A public cloud is built over the Internet and can be accessed by any user
who has paid for the service. Public clouds are owned by service providers
and are accessible through a subscription. Many public clouds are available,
including Google App Engine (GAE), Amazon Web Services (AWS),
Microsoft Azure, IBM Blue Cloud, and Salesforce.com’s Force.com.
• The providers of the aforementioned clouds are commercial providers that
offer a publicly accessible remote interface for creating and managing VM
instances within their proprietary infrastructure. A public cloud delivers a
selected set of business processes. The application and infrastructure
services are offered on a flexible price-per-use basis.
2. Private Clouds
• A private cloud is built within the domain of an intranet owned by a single
organization. Therefore, it is client owned and managed, and its access is
limited to the owning clients and their partners. Its deployment was not
meant to sell capacity over the Internet through publicly accessible
interfaces
• Private clouds give local users a flexible and agile private infrastructure to
run service workloads within their administrative domains. A private cloud
is supposed to deliver more efficient and convenient cloud services. It may
impact the cloud standardization, while retaining greater customization and
organizational control.

3. Hybrid Clouds
➢ A hybrid cloud is built with both public and private clouds .
➢ Private clouds can also support a hybrid cloud model by supplementing
local infrastructure with computing capacity from an external public
cloud.
➢ A hybrid cloud provides access to clients, the partner network, and third
parties. In summary, public clouds promote standardization, preserve
capital investment, and offer application flexibility.
➢ Private clouds attempt to achieve customization and offer higher
efficiency, resiliency, security, and privacy. Hybrid clouds operate in the
middle, with many compromises in terms of resource sharing.

5. List and Explain the Data – center management issues.


• Making common users happy. The data center should be designed to provide
quality service to the majority of users for at least 30 years.
• Controlled information flow Information flow should be streamlined.
Sustained services and high availability (HA) are the primary goals.
• Multiuser manageability. The system must be managed to support all
functions of a data center, including traffic flow, database updating, and
server maintenance.
• Scalability to prepare for database growth. The system should allow growth
as workload increases. The storage, processing, I/O, power, and cooling
subsystems should be scalable.
• Reliability in virtualized infrastructure Failover, fault tolerance, and VM live
migration should be integrated to enable recovery of critical applications
from failures or disasters.
• Low cost to both users and providers. The cost to users and providers of the
cloud system built over the data centers should be reduced, including all
operational costs.
• Security enforcement and data protection Data privacy and security defense
mechanisms must be deployed to protect the data center against network
attacks and system interrupts and to maintain data integrity from user abuses
or network attacks.
• Green information technology Saving power consumption and upgrading
energy efficiency are in high demand when designing and operating current
and future data centers.

Module 5

1. Explain the OGSA architecture with a neat diagram.

OGSA services fall into seven broad areas, defined in terms of capabilities frequently
required in a grid scenario. These services are summarized as follows:

Infrastructure Services Refer to a set of common functionalities, such as naming,


typically required by higher level services.
• Execution Management Services Concerned with issues such as starting and
managing tasks, including placement, provisioning, and life-cycle management.
Tasks may range from simple jobs to complex workflows or composite services.

• Data Management Services Provide functionality to move data to where it is needed,


maintain replicated copies, run queries and updates, and transform data into new
formats. These services must handle issues such as data consistency, persistency, and
integrity. An OGSA data service is a web service that implements one or more of the
base data interfaces to enable access to, and management of, data resources in a
distributed environment. The three base interfaces, Data Access, Data Factory, and
Data Management, define basic operations for representing, accessing, creating, and
managing data.

• Resource Management Services Provide management capabilities for grid


resources: management of the resources themselves, management of the resources as
grid components, and management of the OGSA infrastructure

• Security Services Facilitate the enforcement of security-related policies within a


organization, and supports safe resource sharing. Authentication, authorization, and
integrity assurance are essential functionalities provided by these services.

• Information Services Provide efficient production of, and access to, information
about the grid and its constituent resources. The term “information” refers to dynamic
data or events used for status monitoring; relatively static data used for discovery;
and any data that is logged.

• Self-Management Services Support service-level attainment for a set of services


with as much automation as possible, to reduce the costs and complexity of managing
the system. These services are essential in addressing the increasing complexity of
owning and operating an IT infrastructure.

2 Explain how the Data in a UDDI registry is organized as different


instance types.
4.Explain the Simple web service interaction among provider, user
and UDDI registry with a neat diagram.
(for both question the answer is same)

UDDI provides a set of APIs. Two basic types of API operations are applied to UDDI
components:

• UDDI Inquiry API In order to find the set of registry entries such as business,
service, binding, or tMode, details matching a particular search criterion (find_) or
details of an entry corresponding to a given UDDI key (get_) operation can be used.

• UDDI Publishers API This enables add, modify, and delete entries by providing
save_ and delete_ operations. In addition to the aforementioned look-up APIs, UDDI
also defines generalpurpose operation types, such as the next 4 specialized APIs.

• UDDI Security API Allows users to get and discard authentication tokens
(get_autToken, discard_autToken)

• UDDI Custody and Ownership Transfer API Enables registries to transfer the
custody of information among themselves and to transfer ownership of these
structures one another (transfer_entities, transfer_custody)
• UDDI Subscription API Enables monitoring of changes in a registry by subscribing
to track new, modified, and deleted entries (delete_subscription,
get_subscriptionResults, get_subscriptions, save_subscriptions)

• UDDI Replication API Supports replication of information between registries so


that different registries can be kept synchronized.

3.Write a neat diagram on Three-tier system Architecture.

5. Explain the Simple REST interaction between user and server in


HTTP specification with a neat diagram.

REST is a software architecture style for distributed systems, particularly distributed


hypermedia systems, such as the World Wide Web. It has recently gained popularity
among enterprises such as Google, Amazon, Yahoo!, and especially social networks such
as Facebook and Twitter because of its simplicity, and its ease of being published and
consumed by clients.
The REST architectural style is based on four principles.
1. Resource Identification through URIs: The RESTful web service exposes a
set of resources which identify targets of interaction with its clients. A resource
is a conceptual mapping to a set of entities. Each particular resource is identified
by a unique name, or more precisely, a Uniform Resource Identifier (URI) which
is of type URL, providing a global addressing space for resources involved in an
interaction between components as well as facilitating service discovery. The
URIs can be bookmarked or exchanged via hyperlinks, providing more
readability and the potential for advertisement.
2. Uniform, Constrained Interface: Interaction with RESTful web services is done
via the HTTP standard, client/server cacheable protocol. Resources are
manipulated using a fixed set of four CRUD (create, read, update, delete) verbs
or operations: PUT, GET, POST, and DELETE. PUT creates a new resource,
which can then be destroyed by using DELETE. GET retrieves the current state
of a resource. POST transfers a new state onto a resource.
3. Self-Descriptive Message: A REST message includes enough information to
describe how to process the message. This enables intermediaries to do more with
the message without parsing the message contents. In REST, resources are
decoupled from their representation so that their content can be accessed in a
variety of standard formats .REST provides multiple/alternate representations of
each resource. Metadata about the resource is available and can be used for
various purposes, such as cache control, transmission error detection,
authentication or authorization, and access control.
4. Stateless Interactions: The REST interactions are “stateless” in the sense that
the meaning of a message does not depend on the state of the conversation.
Stateless communications improve visibility, since a monitoring system does not
have to look beyond a single request data field in order to determine the full nature
of the request reliability as it facilitates the task of recovering from partial failures,
and increases scalability as discarding state between requests allows the server
component to quickly free resources.

You might also like