it is the presentation which shows the various topics of the loud computing
1. Note: It's highly recommended that you prepare each exam topic thoroughly. You can use the recorded
sessions
for additional details and in-depth discussions of each topic. These recordings can be a valuable resource to
solidify your
understanding. The following slides highlight important topics that you should focus on during your
preparation.
Topic
Cloud Computing COMP 20038
2. Distributed Computing
1. As networking technology had improved, moving from IBM’s Token Ring configurations (or even the use of
low-speed modems over twisted copper pairs) and DEC’s DECnet to fully standardized Ethernet
connections, the possibility had arisen of different computers carrying out compute actions on different
parts or types of data.
2. This opened up the possibility of optimizing the use of available resources across a whole network.
3. In came client–server computing. The main business logic would be run on the larger servers in the data
center.
3. Distributed Computing
Definition
A distributed system consists of multiple autonomous computers that
communicate through a computer network.
Distributed computing utilizes a network of many computers, each
accomplishing a portion of an overall task, to achieve a computational result
much more quickly than with a single computer.”
“Distributed computing is any computing that involves multiple computers
remote from each other but each have a role in a computation
3
4. Introduction
A distributed system is one in which hardware or software components located at
networked computers communicate and coordinate their actions only by message
passing.
In the term distributed computing, the word distributed means spread out across
space. Thus, distributed computing is an activity performed on a spatially
distributed system.
These networked computers may be in the same room, same campus, same country, or
in different
4
6. Grid Computing
Grid computing is a form of distributed computing whereby a "super and
virtual computer" is composed of a cluster of networked, loosely coupled
computers, acting in concert to perform very large tasks.
Grid computing (Foster and Kesselman, 1999) is a growing technology that
facilitates the executions of large-scale resource intensive applications on
geographically distributed computing resources.
Facilitates flexible, secure, coordinated large scale resource sharing among
dynamic collections of individuals, institutions, and resource Enable
communities (“virtual organizations”) to share
28
8. Grid Applications
Data and computationally intensive applications
This technology has been applied to computationally-intensive scientific, mathematical, and
academic problems like drug discovery, economic forecasting, seismic analysis back office
data processing in support of e- commerce
a. A chemist may utilize hundreds of processors to screen thousands of compounds per
hour.
b. Teams of engineers worldwide pool resources to analyze terabytes of structural
data.
c. Meteorologists seek to visualize and analyze petabytes of climate data with
enormous computational demands.
d. Resource sharing
e. Computers, storage, sensors, networks, …
9. A typical view of Grid environment
User
Resource Broker
Grid Resources
Grid Information Service
A User sends computation or data
intensive application to Global Grids in
order to speed up the execution of the
application.
A Resource Broker distribute the jobs in an
application to the Grid resources based on user’s
QoS requirements and details of available Grid
resources for further executions.
Grid Resources (Cluster, PC, Supercomputer,
database, instruments, etc.) in the Global Grid
execute the user jobs.
Grid Information Service system
collects the details of the available Grid
resources and passes the information
to the resource broker.
Details of Grid resources
Processed jobs
1
2
Grid application
3
Computation result
Computational jobs
4
9
10. Definition of Cloud Computing
4
Cloud computing is a model for enabling ubiquitous, convenient, on-
demand network access to a shared pool of configurable computing
resources (e.g., networks, servers, storage, applications, and services) that
can be rapidly provisioned and released with minimal management effort
or service provider interaction.
This cloud model is composed of five essential characteristics, three
service models, and four deployment Models
11. 5
The following image shows that cloud computing is composed of five
essential characteristics, three deployment models, and four service
models as shown in the following figure:
12. Cloud Design Objectives
8
1. Shifting computing from desktops to data centers
2. Service provisioning and cloud economics
3. Scalability in performance
4. Data privacy protection
5. High quality of cloud services
6. New standards and interfaces
13. Essential Characteristics:
On-demand self-service. A consumer can unilaterally provision computing capabilities, such as server time and
network storage, as needed automatically without requiring human interaction with each service provider.
Broad network access. Capabilities are available over the network and accessed through standard mechanisms
that promote use by heterogeneous thin or thick client platforms (e.g., mobile phones, tablets, laptops, and
workstations).
Resource pooling. The provider’s computing resources are pooled to serve multiple consumers using a multi-tenant
model, with different physical and virtual resources dynamically assigned and reassigned according to consumer
demand. There is a sense of location independence in that the customer generally has no control or knowledge over
the exact location of the provided resources but may be able to specify location at a higher level of abstraction (e.g.,
country, state, or data center). Examples of resources include storage, processing, memory, and network bandwidth.
Rapid elasticity. Capabilities can be elastically provisioned and released, in some cases automatically, to scale
rapidly outward and inward commensurate with demand. To the consumer, the capabilities available for
provisioning often appear to be unlimited and can be appropriated in any quantity at any time.
• Measured Service. Cloud Computing systems automatically control and optimize resource use by leveraging a
metering capability1 at some level of abstraction appropriate to the type of service
16. Benefits of Virtualization
•Optimizes utilization of IT resources
•Reduces cost and management complexity
•Reduces deployment time
•Increases flexibility
•Encapsulation - VMs can be described in a file
• Possible to ‘snapshot’
• Easy to move
•Enables running multiple operating systems
•Consolidation & and use of unused computation power
•Resource management
•High availability & disaster recovery
•Safe testing of new software
33. Cloud computing allows computer
users to conveniently rent access to
fully featured applications, to software
development and deployment
environments, and to access storage,
compute and network resources.
33
34. configurable computing resources(e.g.,
networks, servers storage, applications, and services)
that can be rapidly provisioned and released with
minimal management effort or service provider
interaction. This cloud model promotes availability
and is composed of five essential characteristics, three
service models, and four deployment models.
34
35. Infrastructure as a Service (IaaS) - The
capability provided to the consumer
is to provision processing, storage,
networks, and other fundamental
computing resources where the
consumer is able to deploy and run
arbitrary software, which can
include operating systems and
applications. The consumer does
not manage or control the
underlying cloud infrastructure but
has control over operating systems,
storage, deployed applications, and
possibly limited control of select
networking components (e.g., host
firewalls).
35
Infrastructure as a Service
36. Platform as a Service (PaaS) - The capability provided to
the consumer is to deploy onto the cloud infrastructure
consumer-created or - acquired applications created using
programming languages and tools
infrastructure including network, servers,
operating systems, or storage, but has control
over the deployed applications and possibly
application hosting environment configurations.
Platform as a Service
37. Software as a Service (SaaS) - The
capability provided to the consumer is to
use the provider’s applications running on a
cloud infrastructure. The applications are
accessible from various client devices
through a thin client interface such as a Web
browser (e.g., Web-based email). The
consumer does not manage or control the
underlying cloud infrastructure including
network, servers, operating systems,
storage, or even individual application
capabilities, with the possible exception of
limited user- specific application
configuration settings.
Software as a Service
38. Paraphrasing NIST’s
definitions
• Infrastructure as a service (IaaS)
The provision of a base layer of elastic, shared compute,
storage and network resources. The user then applies and
manages all the software above this, from operating system
all the way through to the applications themselves.
39. • Platform as a service (PaaS)
The provision of an IaaS infrastructure layer along with
components of the software (generally, the operating
system, database and so on). The user then applies and
manages the rest of the software stack to meet their needs.
40. • Software as a service (SaaS)
The provision of a total service: a shared-resource platform
along with a total software stack. The end user uses the
system but has few capabilities around managing it.
43. This presentation demonstrates the major
areas where cloud can play vital role and
their scope in the Cloud computing
Technology.
ECG Analysis in the
cloud
Protein structure
prediction
Gene Expression Data
Analysis
Satellite Image Processing
CRM and ERP
Social
Networking
Cloud Applications
45. Cloud Deployment Models
The four deployment models are
Private cloud
The cloud implementation is owned, operated and used by one
organization alone.
some public cloud providers offer a pseudo-private cloud service
where a part of their overall cloud is partitioned off for use by a
single organization only.
Some providers do offer purely dedicated private clouds where
they provision either just the dedicated hardware (IaaS) or the
dedicated hardware and the cloud stack (PaaS) to the customer
46. Cloud Deployment Models
The four deployment models are
Public cloud
The cloud implementation is owned and operated by
a third party organization, with a range of customers
sharing the underlying hardware platform.
Customers may also share all (SaaS) or part (PaaS) of
the software stack implemented on the hardware.
47. Cloud Deployment Models
The four deployment models are
Hybrid cloud
A mix of private and public cloud. This is where the majority of
organizations will find themselves.
Hybrid cloud is a cloud computing environment that uses a mix
of on-premises, private cloud and third-party, public cloud
services with orchestration between the two platforms
By allowing workloads to move between private and public
clouds as computing needs and costs change, hybrid cloud gives
businesses greater flexibility and more data deployment
options.
48. Cloud Deployment Models
The four deployment models are
Community cloud
A collaborative platform where infrastructure is shared across
a group of organizations (or even individuals) with a common
aim.
The overall management of the shared resources is normally
allocated to a single member of the group.
Community cloud is mainly being used in academia and social
research, where resources are shared in such a manner as to
allow either dedicated shared resources or excess resources
in existing clouds to be used for a ‘greater good’.
49. Advantages of Cloud Computing
Cost Savings: Perhaps, the most significant cloud computing benefit is in terms of IT cost savings.
Businesses, no matter what their type or size, exist to earn money while keeping capital and operational
expenses to a minimum. With cloud computing, you can save substantial capital costs with zero in-
house server storage and application requirements. The lack of on-premises infrastructure also removes
their associated operational costs in the form of power, air conditioning and administration costs. You
pay for what is used and disengage whenever you like - there is no invested IT capital to worry about.
It’s a common misconception that only large businesses can afford to use the cloud, when in fact, cloud
services are extremely affordable for smaller businesses.
Reliability: With a managed service platform, cloud computing is much more reliable and consistent
than in-house IT infrastructure. Most providers offer a Service Level Agreement which guarantees
24/7/365 and 99.99% availability. Your organization can benefit from a massive pool of redundant IT
resources, as well as quick failover mechanism - if a server fails, hosted applications and services can
easily be transited to any of the available servers.
50. Manageability: Cloud computing provides enhanced and simplified IT management
and maintenance capabilities through central administration of resources, vendor
managed infrastructure and SLA backed agreements. IT infrastructure updates and
maintenance are eliminated, as all resources are maintained by the service provider.
You enjoy a simple web-based user interface for accessing software, applications and
services – without the need for installation - and an SLA ensures the timely and
guaranteed delivery, management and maintenance of your IT services.
Strategic Edge: computing resources give you a competitive edge over competitors,
as time you require for IT procurement is virtually nil. Your company can deploy
mission critical applications that deliver
Advantages of Cloud Computing
51. Lower computer costs:
You do not need a high-powered and high-priced computer to run cloud computing's
web-based applications.
Since applications run in the cloud, not on the desktop PC, your desktop PC does not
need the processing power or hard disk space demanded by traditional desktop
software.
When you are using web-based applications, your PC can be less expensive, with a
smaller hard disk, less memory, more efficient processor...
In fact, your PC in this scenario does not even need a CD or DVD drive, as no software
programs have to be loaded and no document files need to be saved.
Advantages of Cloud Computing
52. Improved performance:
With few large programs hogging your computer's memory, you will see
better performance from your PC.
Computers in a cloud computing system boot and run faster because
they have fewer programs and processes loaded into memory…
Reduced software costs:
Instead of purchasing expensive software applications, you can get
most of what you need for free-ish!
most cloud computing applications today, such as the Google Docs
suite.
better than paying for similar commercial software
which alone may be justification for switching to cloud applications.
Advantages of Cloud Computing
53. Unlimited storage capacity:
Cloud computing offers virtually limitless storage.
Your computer's current 1 Tbyte hard drive is small compared to the hundreds
of Pbytes available in the cloud.
Increased data reliability:
Unlike desktop computing, in which if a hard disk crashes and destroy all your
valuable data, a computer crashing in the cloud should not affect the storage
of your data.
if your personal computer crashes, all your data is still out there in the cloud,
still accessible
In a world where few individual desktop PC users back up their data on a
regular basis, cloud computing is a
data-safe computing platform!
Advantages of Cloud Computing
54. Universal document access:
That is not a problem with cloud computing, because you do not take your
documents with you.
Instead, they stay in the cloud, and you can access them whenever you have a
computer and an Internet connection
Documents are instantly available from wherever you are
Latest version availability:
When you edit a document at home, that edited version is what you see when
you access the document at work.
The cloud always hosts the latest version of your documents
as long as you are connected, you are not in danger of having an outdated
version
Advantages of Cloud Computing
56. Calculate Monthly Cost on AWS
Scenario
A company plans to host a web application on AWS and needs to
estimate the monthly cost accurately.
Problem Statement
Calculate the monthly cost of hosting a web application on
Amazon Web Services (AWS).
Challenge
Understanding the cost components involved in hosting a web
application and optimizing for cost-efficiency.
57. Breakdown of Cost Calculation
Solution Steps
Identify Resources: List the resources required, including EC2
instance specifications (vCPUs, RAM, storage).
Determine Usage: Estimate usage metrics such as hours of
operation and data transfer volume.
Research Pricing: Understand AWS pricing models example EC2
instances and data transfer.
Cost Estimation: Calculate the cost for the EC2 instance and data
transfer based on usage and pricing.
Optimization Strategies: Explore strategies for optimizing costs,
such as selecting the right instance type and optimizing data
transfer.
58. Formulas Calculations Total Monthly Cost
Detailed Solution
Cost Components: Breakdown of cost components for EC2
instance, unit price, and data transfer.
Formulas: Formulas for calculating costs based on service instance
usage, unit price you pay, and data transfer volume you use.
Total cloud cost = Cost of Instance + Cost of Data Transfer
Example:
Total Cost = Cost of EC2 Instance + Cost of Data Transfer
Total Cost = (Cost per Hour of EC2 Instance * Number of Hours in a
Month) + (Data Transfer per Visitor * Number of Visitors * Cost per
GB)
59. Calculate Monthly Cost on AWS
Scenario 1
A company plans to host a web application on AWS and needs to
estimate the monthly cost accurately.
Problem Statement
Calculate the monthly cost of hosting a web application on AWS.
The application uses an EC2 instance with 2 vCPUs, 8 GB of RAM,
and 100 GB of SSD storage. It receives 10,000 monthly visitors,
with each visitor accessing 10 MB of data. The hourly cost of the
EC2 Instance is $0.10, and the data transfer cost per GB is $0.09.
60. Breakdown of Cost Calculation
Solution Steps
Total Cost = Cost of EC2 Instance + Cost of Data Transfer
Total Cost= (Cost per Hour of EC2 Instance * Number of Hours in
a Month) + (Data Transfer per Visitor * Number of Visitors * Cost
per GB)
61. Formulas Calculations Total Monthly Cost
Detailed Solution
Total Cost = Cost of EC2 Instance + Cost of Data Transfer = (Cost
per Hour of EC2 Instance * Number of Hours in a Month) + (Data
Transfer per Visitor * Number of Visitors * Cost per GB)
Total Cost = ($0.10 * 24 * 30) + (10 MB * 10,000 * $0.09 / 1024
MB)
Total Cost = $72 + $8.78
Total Cost = $80.79 per month
62. Calculate Monthly Cost on AWS
Scenario 2
A company plans to host an EC2 instance on Amazon Web Services
(AWS) and needs to estimate the monthly cost accurately.
Problem Statement
Calculate the monthly cost of hosting a server on AWS using an EC2
instance with 2 vCPUs, 8 GB of RAM, and Amazon Elastic Block Store
(EBS) 500 GB of SSD storage. Capacity to handle 10,000 mobile
users uploading six “10MB per 30-second” video, Region: US East (N.
Virginia), Data transfer: 1 TB/month. EC2 instance cost: $0.096 per
hour, EBS storage cost: $0.10 per GB-month, Data transfer cost:
$0.09 per GB, and Video processing time: 2 minutes.
63. Breakdown of Cost Calculation
Solution Steps
Total Cost = Cost of EC2 Instance + Cost of Data Transfer
Total Cost= (Cost per Hour of EC2 Instance * Number of Hours in
a Month) + (Data Transfer per Visitor * Number of Visitors * Cost
per GB)
64. Formulas Calculations Total Monthly Cost
Detailed Solution
Total Cost = Cost of EC2 Instance + Cost of Data Transfer = (Cost per
Hour of EC2 Instance * Number of Hours in a Month) + (Data
Transfer per Visitor * Number of Visitors * Cost per GB)
Number of videos: 10,000 users x 6 videos = 60,000 videos
Total data transfer: 60,000 videos x 10MB = 600,000 MB or 600 GB
EC2 instance cost: $0.096 per hour x 24 hours x 30 days = $69.12
EBS storage cost: $0.10 per GB-month x 500 GB = $50.00
Data transfer cost: $0.09 per GB x 600 GB = $54.00
Total Cost = Cost of EC2 Instance +EBS storage cost+ Cost of Data
Transfer
Total Cost = $69.12 + $50.00 + $54.00
Total Cost = $173.12 per month
65. Calculate Monthly Cost on AWS
Scenario 3
Plan to store a compressed video file size of 100 MB and stream
for 60 minutes on the AWS for the 1000 users. Needs to estimate
the general monthly cost.
Problem Statement
Calculate the general monthly cost to store and stream video at
AWS. The AWS uses an Amazon S3 standard storage of 10GB,
which costs around $0.023 per GB/month. For the streaming
Amazon CloudFront content delivery network for 60 min video at
1080p resolution to 1000 viewers in US at $0.085 per GB.
66. Breakdown of Cost Calculation
Solution Steps
Total Cost = Cost of storage + Cost of streaming
Cost of storage = 10x $0.023 = $0.23 per month
Cost of streaming = 1000x$0.085 per GB = $85 per month
Total Cost= $85.23 per month
#14:Virtual layer is deployed on the physical layer. It specifies the entities that operate at this layer, such as virtualization software, resource pools, and virtual resources. The key function of this layer is to abstract physical resources, such as compute, storage, and network, and making them appear as virtual resources. Other key functions of this layer include executing the requests generated by control and forwarding requests to the physical layer to get them executed. Examples of requests generated by control layers include creating pools of resources and creating virtual resources.
#15:Virtualization refers to the logical abstraction of physical resources, such as compute, network, and storage that enables a single hardware resource to support multiple concurrent instances of systems or multiple hardware resources to support single instance of system. For example, a single disk drive can be partitioned and presented as multiple disk drives to a compute system. Similarly, multiple disk drives can be concatenated and presented as a single disk drive to a compute system.
With virtualization, it is also possible to make a resource appear larger or smaller than it actually is. Further, the abstraction of physical resources due to virtualization enables multitenant environment, which improves utilization of the physical resources.
#16:Virtualization when deployed offers several benefits to build a cloud infrastructure. It enables consolidation of IT resources that helps service providers to optimize their utilization of infrastructure resource. Improving the utilization of IT assets can help service providers to reduce the costs associated with the purchasing of a new hardware. It also reduces space and energy costs associated with maintaining the resources. Moreover, less people are required to administer these resources, which further lower the cost. Virtual resources are created using software that enables service providers to deploy infrastructure faster as compared to deploying physical resources. Virtualization increases flexibility by allowing to create and reclaim the logical resources that are based on business requirements.
#17:While building cloud infrastructure, virtual layer is deployed on physical layer. This layer enables fulfilling two key characteristics of cloud infrastructure: resource pooling and rapid elasticity.
Virtual layer specifies the entities that operate at this layer, such as virtualization software, resource pools, and virtual resources. Virtual layer is built by deploying virtualization software on compute systems, network devices, and storage devices.
#18:The software used for compute virtualization is known as the hypervisor. The hypervisor is a software that is installed on a compute system and enables multiple operating systems to run concurrently on a physical compute system. The hypervisor along with hypervisor management software (also known as control software, which is discussed in ‘Control Layer’ unit) is the fundamental component for deploying software defined compute environment. The hypervisor abstracts the physical compute hardware to create multiple virtual machine, which to the operating systems look and behave like physical compute systems. The hypervisor provides standardized hardware resources, such as processor, memory, network, and disk to all the virtual machines.
A hypervisor has two key components: kernel and virtual machine manager (VMM). A hypervisor kernel provides the same functionality like the kernel of any other operating system, including process creation, file system management, and process scheduling. It is designed and optimized to run multiple virtual machines concurrently. A VMM abstracts hardware and appears as a physical compute system with processor, memory, I/O devices, and other components that are essential for operating systems and applications to run. Each virtual machine is assigned a VMM that gets a share of the processor, memory, I/O devices, and storage from the physical compute system to successfully run the virtual machine.
#19:Hypervisors can be categorized into two types: bare-metal hypervisor and hosted hypervisor. A bare-metal hypervisor is directly installed on the hardware. It has direct access to the hardware resources of the compute system. Therefore, it is more efficient than a hosted hypervisor. However, this type of hypervisor may have limited device drivers built-in. Therefore, hardware certified by the hypervisor vendor is usually required to run bare-metal hypervisors. A bare-metal hypervisor is designed for enterprise data centers and cloud infrastructure. It also supports advanced capabilities such as resource management, high availability, security, and so on. In contrast to a bare-metal hypervisor, a hosted hypervisor is installed as an application on an operating system. In this approach, the hypervisor does not have direct access to the hardware and all requests must pass through the operating system running on the physical compute system. Hosted hypervisors are compatible with all the devices that are supported by the operating system on which it is installed. Using this type of hypervisor adds overhead compared to a bare-metal hypervisor, because there are many services and processes running on an operating system that are consuming compute system resources. Therefore, a hosted hypervisor is most suitable for development, testing, and training purposes.
#20:The network virtualization software is either built into the operating environment of a network device, installed on an independent compute system (discussed in ‘Control Layer’ unit) or available as hypervisor’s capability. The network virtualization software abstracts physical network resources to create virtual resources such as virtual LANs or virtual SANs.
The network virtualization software built into the network device operating environment has the ability to abstract the physical network. It has the ability to divide a physical network into multiple virtual networks, such as virtual LANs and virtual SANs.
The network virtualization software installed on an independent compute system is the fundamental component for deploying software defined network environment. This software provides a single control point to the entire network infrastructure enabling automated and policy based network management.
The network virtualization can also be available as hypervisor’s capability, which emulates network connectivity among VMs on a physical compute system. This software enables creating virtual switches that appears to the VM as physical switches.
#21:The storage virtualization software is either built into the operating environment of a storage device, installed on an independent compute system (discussed in ‘Control Layer’ unit), or available as hypervisor’s capability. The storage virtualization software abstracts physical storage resources to create virtual resources, such as virtual volumes or virtual arrays.
The storage virtualization software built into the array operating environment has the ability to pool and abstract the physical storage devices and present it as a logical storage.
The storage virtualization software installed on an independent compute system is the fundamental component for deploying software defined storage environment. The software has the ability to pool and abstract the existing physical storage devices and present it as an open storage platform. With the help of control software (discussed in ‘Control Layer’ unit), the storage virtualization software can perform tasks such as virtual volume creation apart from creating virtual arrays. This software provide a single control point to the entire storage infrastructure, enabling automated and policy based management.
The storage virtualization can also be available as hypervisor’s capability, which enables creating virtual disk that appears to the operating systems as physical disk drives.
#22:A virtual machine (VM) is a logical compute system that, like a physical compute system, runs an operating system (OS) and applications. A VM is created by a hosted or a bare-metal hypervisor installed on a physical compute system. A VM has a self-contained operating environment, comprising OS, applications, and virtual hardware, such as a virtual processor, memory, storage, and network resources. An OS, called—a ‘guest’ OS—is installed on a VM in the same way like it is installed on a physical compute system. From the perspective of the guest OS, the VM appears as a physical compute system. As discussed in lesson 1, a virtual machine monitor (VMM) is responsible for the execution of a VM. Each VM has a dedicated VMM. Each VM has its own configuration for hardware, software, network, security, and so on. The VM behaves like a physical compute system, but does not have direct access either to the underlying host OS (when a hosted hypervisor is used) or to the hardware of the physical compute system on which it is created. The hypervisor translates the VM’s resource requests and maps the virtual hardware of the VM to the hardware of the physical compute system. For example, a VM’s I/O requests to a virtual disk drive are translated by the hypervisor and mapped to a file on the physical compute system’s disk drive.
Compute virtualization software enables creating and managing several VMs—each with a different OS of its own—on a physical compute system or on a compute cluster. In a cloud environment, a provider typically provisions VMs to consumers to deploy their applications. The VM hardware and software are configured to meet the application’s requirements. The VMs of consumers are isolated from each other so that the applications and the services running on one VM do not interfere with those running on other VMs. The isolation also provides fault tolerance so that if one VM crashes, the other VMs remain unaffected.
#23:The slide lists the common types of virtual networks.
#24:A virtual LAN (VLAN) is a virtual network consisting of virtual and/or physical switches, which divides a LAN into smaller logical segments. A VLAN groups the nodes with a common set of functional requirements, independent of the physical location of the nodes. In a multi-tenant cloud environment, the provider typically creates and assigns a separate VLAN to each consumer. This provides a private network and IP address space to a consumer, and ensures isolation from the network traffic of other consumers.
Traditionally in a physical network, a router is typically used to create a LAN and the LAN is further segmented by using switches and hubs. In a physical LAN, the nodes, switches, and routers are physically connected to each other and must be located in the same area. VLANs enable a network administrator to logically segment a LAN, and the nodes do not have to be physically located on the same LAN. For example, a cloud provider may place the VMs of a consumer in the same VLAN, and the VMs may be on the same compute system or different ones. Also, if a node is moved to another location, depending on the VLAN configuration, it may still stay on the same VLAN without requiring any reconfiguration. This simplifies network configuration and administration. A node (VM, physical compute system, or storage system) may be a member of multiple VLANs, provided the OS, hypervisor, and storage array OS support such configurations.
To configure VLANs, an administrator first defines the VLANs on the physical and virtual switches. Each VLAN is identified by a unique 12-bit VLAN ID (as per IEEE specification 802.1Q). The next step is to configure the VLAN membership based on different techniques, such as port-based, MAC-based, protocol-based, IP subnet address-based, or application-based. In the port-based technique, membership in a VLAN is defined by assigning a VLAN ID to a physical or virtual switch port or port group. In the MAC-based technique, the membership in a VLAN is defined on the basis of the MAC address of the node. In the protocol-based technique, different VLANs are assigned to different protocols based on the protocol type field found in the OSI Layer 2 header. In the IP subnet address-based technique, membership is based on the network IP subnet address of the OSI Layer 3 header. In the application-based technique, a specific application, for example, a file transfer protocol (FTP) application can be configured to execute on one VLAN. A detailed discussion on these VLAN configuration techniques is beyond the scope of this course.
#25:A private VLAN (PVLAN) is an extension of the VLAN standard and further segregates the nodes within a VLAN into sub-VLANs. A PVLAN is made up of a primary VLAN and one or more secondary (or private) VLANs. The primary VLAN is the original VLAN that is being segregated into smaller groups. Each secondary PVLAN exists only inside the primary VLAN. It has a unique VLAN ID and isolates the OSI Layer 2 traffic from the other PVLANs. Primary VLANs are promiscuous, which means that ports on the PVLANs can communicate with ports configured as the primary VLAN. Routers are typically attached to promiscuous ports.
There are two types of secondary PVLANs within a primary VLAN: Isolated and Community.
Isolated: A node attached to a port in an isolated secondary PVLAN can only communicate with the promiscuous PVLAN.
Community: A node attached to a port in a community secondary PVLAN can communicate with the other ports in the same community PVLAN as well as with the promiscuous PVLAN. Nodes in different community PVLANs cannot communicate with each other.
To configure PVLANs, the PVLAN feature must be supported and enabled on a physical switch or a distributed virtual switch. To create PVLANs, the administrator first creates standard VLANs on a switch, and then configures the VLANs as primary and secondary. The figure on the slide illustrates how different types of PVLANs enable and restrict communications between VMs (nodes) that are connected to a distributed virtual switch.
PVLANs enable a cloud provider to support a larger number of consumers and addresses the issues with scalability encountered in VLANs. If a service provider assigns one VLAN per customer, it limits the number of consumers that can be supported. Also, a block of addresses are assigned to each consumer VLAN, which can result in unused IP addresses. Additionally, if the number of nodes in the VLAN increases, the number of assigned addresses may not be large enough to accommodate them. In a PVLAN, all members share a common address space, which is allocated to the primary VLAN. When nodes are connected to secondary VLANs, they are assigned IP addresses from the block of addresses allocated to the primary VLAN. When new nodes are added in different secondary VLANs, they are assigned subsequent IP addresses from the pool of addresses.
(Cont'd)
#26:PVLANs also provide an additional layer of security between the nodes that belong to the same VLAN. They also simplify the administrative overhead of maintaining access control lists (ACLs) on different VLANs, which restrict network traffic movement between VLANs. Further, a provider can ensure network traffic isolation by configuring isolated PVLANs. Without isolated PVLANs, segregating network traffic from different consumers requires creating a large number of discrete VLANs.
#27:A stretched VLAN is a VLAN that spans across multiple sites over a WAN connection. In a typical multi-site environment, two sites are connected over an OSI Layer 3 WAN connection and all network traffic between them is routed. Because of the routing, it is not possible to transmit OSI Layer 2 WAN traffic between the nodes in the two sites. A stretched VLAN extends a VLAN across the sites and enables nodes in the two different sites to communicate over a WAN as if they are connected to the same network.
Stretched VLANs also allow the movement of VMs between sites without having to change their network configurations. This enables the creation of high-availability clusters, VM migration, and application and workload mobility across sites. For example, in the event of a disaster or during the maintenance of one site, a provider typically moves VMs to an alternate site. Without a stretched VLAN, the IP addresses of the VMs must be changed to match the addressing scheme at the other site.
Stretched VLANs may be created by simply connecting two sites using long distance fiber and can be configured using different methods depending upon the underlying WAN technology. Stretched VLANs may be created by simply connecting two sites using long distance fiber, Dense Wave Division Multiplexing (DWDM), Coarse Wave Division Multiplexing (CWDM), multi-protocol label switching (MPLS) network, and IP network. An elaboration of these methods is beyond the scope of this course.
#28:A VXLAN is a OSI Layer 2 overlay network built on a OSI Layer 3 network. An overlay network is a virtual network that is built on top of existing network. VXLANs, unlike stretched VLANs, are based on LAN technology. VXLANs use the MAC Address-in-User Datagram Protocol (MAC-in-UDP) encapsulation technique. In this scheme, a VXLAN header is added to the original Layer 2 (MAC) frame, which is then placed in a UDP-IP packet and tunneled over a Layer 3 network. Communication is established between two tunnel end points called Virtual Tunnel Endpoints (VTEPs). At the transmitting node, a VTEP encapsulates the network traffic into a VXLAN header and at the destination node, a VTEP removes the encapsulation before presenting the original Layer 2 packet to the node. VXLANs enable the creation of a logical network of nodes across different networks. In case of VM communication, the VTEP is built into the hypervisor on the compute system hosting the VMs. VXLANs enable the separation of nodes, such as VMs, from physical networks. They allow the VMs to communicate with each other using the transparent overlay scheme over physical networks that could span Layer 3 boundaries. This provides a means to extend a Layer 2 network across sites. The VMs are unaware of the physical network constraints and only see the virtual Layer 2 adjacency.
Nodes are identified uniquely by the combination of their MAC addresses and a VXLAN ID. VXLANs use a 24-bit VXLAN ID, which makes it theoretically possible to have up to 16 million Layer 2 VXLANs co-existing on a common Layer 3 infrastructure. VXLANs make it easier for administrators to scale a cloud infrastructure while logically isolating the applications and resources of multiple consumers from each other. VXLANs also enable VM migration across sites and over long distances.
#29:A virtual SAN (VSAN) or virtual fabric is a logical fabric created on a physical FC or FCoE SAN. A VSAN enables communication between a group of nodes with a common set of requirements, independent of their physical location in the fabric. A VSAN functions conceptually in the same way as a VLAN. Each VSAN behaves and is managed as an independent fabric. Each VSAN has its own fabric services, configuration, and set of FC addresses. Fabric-related configurations in one VSAN do not affect the traffic in another VSAN. Also, the events causing traffic disruptions in one VSAN are contained within that VSAN and are not propagated to the other VSANs. Similar to a stretched VLAN, a VSAN may be extended across sites by using long distance fiber, DWDM, CWDM, or FCIP links to carry the FC frames.
#30:To configure VSANs on a fabric switch, the VSANs are first defined with specific VSAN IDs. Then the F_Ports on the switch are assigned the VSAN IDs to include them in the respective VSANs. If an N_Port connects to an F_Port that belongs to a VSAN, it becomes a member of that VSAN.
Note: VSAN vs. Zone
Both VSANs and zones enable node ports within a fabric to be logically segmented into groups. But they are not same and their purposes are different. There is a hierarchical relationship between them. An administrator first assigns physical ports to VSANs and then configures independent zones for each VSAN. A VSAN has its own independent fabric services, but the fabric services are not available on a per-zone basis.
#31:The FCoE protocol enables transmission of FC SAN traffic through a LAN that supports Data Center Bridging (DCB) functionalities. The FC frames remain encapsulated into Ethernet frames during transmission through the LAN. If VLANs and VSANs are created on the LAN and FC SAN respectively, a mapping is required between the VLANs and VSANs. The mapping determines which VLAN will carry FC traffic that belongs to a VSAN. The mapping of VSAN to VLAN is performed at the FCoE switch. Multiple VSANs are not allowed to share a VLAN. Hence, a dedicated VLAN must be configured at the FCoE switch for each VSAN. Also, it is recommended that VLANs that carry regular LAN traffic should not be used for VSAN traffic.
The figure on the slide shows an example of a mapping between VLANs and VSANs. In the example, the FCoE switch is configured with four VLANs: VLAN 100, VLAN 200, VLAN 300, and VLAN 400. The Ethernet switch is configured with two VLANs: VLAN 100 and VLAN 200. Both VLAN 100 and VLAN 200 transfer regular Ethernet traffic to enable compute-to-compute communication. The fabric switch has VSAN 100 and VSAN 200 configured. To allow data transfer between the compute system and the FC fabric through the FCoE switch, VSAN 100 and VSAN 200 must be mapped to VLANs configured on the FCoE switch. Since VLAN 100 and VLAN 200 are already being used for LAN traffic, VSAN 100 and VSAN 200 should be mapped to VLAN 300 and VLAN 400, respectively.
#41:According to Organization for the Advancement of Structured Information Standards (OASIS), a reference model is an abstract framework for understanding the significant relationships among the entities of some environment, and for the development of consistent standards or specifications supporting that environment. A reference model is based on a small number of unifying concepts and may be used as a basis for education and explaining standards. A reference model is not directly tied to any standards, technologies, or other concrete implementation details, but it does seek to provide a common semantics that can be used unambiguously across and between different implementations.
Key goals of reference model are:
Conveys fundamental principles and basic functionality of a system it represents
Facilitates efficient communication of system details between stakeholders
Provides a point of reference for system designers to extract system specifications
Enhances an individual’s understanding of the representative system
Documents the system for future reference and provides a means for collaboration
#42:The cloud computing reference model is an abstract model that characterizes and standardizes the functions of a cloud computing environment by partitioning it into abstraction layers and cross-layer functions. This reference model groups the cloud computing functions and activities into five logical layers and three cross-layer functions.
The five layers are physical layer, virtual layer, control layer, service orchestration layer, and service layer. Each of these layers specifies various types of entities that may exist in a cloud computing environment, such as compute systems, network devices, storage devices, virtualization software, security mechanisms, control software, orchestration software, management software, and so on. It also describes the relationships among these entities.
The three cross-layer functions are business continuity, security, and service management. Business continuity and security functions specify various activities, tasks, and processes that are required to offer reliable and secure cloud services to the consumers. Service management function specifies various activities, tasks, and processes that enable the administrations of the cloud infrastructure and services to meet the provider’s business requirements and consumer’s expectations.