Introduction To Cloud Computing
Introduction To Cloud Computing
Cloud computing
The cloud" refers to servers that are accessed over the Internet, and the software and
databases that run on those servers.
Cloud servers are located in data centers all over the world.
By using cloud computing, users and companies do not have to manage physical servers
themselves or run software applications on their own machines.
Cloud computing is the on-demand availability of computing resources (such as storage
and infrastructure), as services over the internet.
It eliminates the need for individuals and businesses to self-manage physical resources
themselves, and only pay for what they use.
Cloud Computing Architecture
cloud computing technology is used by both small and large organizations to store the
information in cloud and access it from anywhere at anytime using the internet
connection.
Cloud computing architecture is a combination of service-oriented
architecture and event-driven architecture.
Cloud computing architecture is divided into the following two parts -
• Front End
• Back End
Front End:
The front end is used by the client. It contains client-side interfaces and applications that are
required to access the cloud computing platforms.
The front end includes web servers (including Chrome, Firefox, internet explorer, etc.), thin & fat
clients, tablets, and mobile devices.
Back End
The back end is used by the service provider. It manages all the resources that are required to
provide cloud computing services.
It includes a huge amount of data storage, security mechanism, virtual machines, deploying
models, servers, traffic control mechanisms, etc.
Components of Cloud Computing Architecture
4. Runtime Cloud
Runtime Cloud provides the execution and runtime environment to the virtual machines.
5. Storage
Storage is one of the most important components of cloud computing. It provides a huge amount
of storage capacity in the cloud to store and manage data.
6. Infrastructure
It provides services on the host level, application level, and network level. Cloud infrastructure
includes hardware and software components such as servers, storage, network devices,
virtualization software, and other storage resources that are needed to support the cloud
computing model.
Components of Cloud Computing Architecture
7. Management
Management is used to manage components such as application, service, runtime cloud, storage,
infrastructure, and other security issues in the backend and establish coordination between them.
8. Security
Security is an in-built back end component of cloud computing. It implements a security
mechanism in the back end.
9. Internet
The Internet is medium through which front end and back end can interact and communicate with
each other.
cloud service models
PaaS cloud computing platform is created for the programmer to develop, test, run, and manage
the applications.
Characteristics of PaaS
• Accessible to various users via the same development application.
• Integrates with web services and databases.
• Builds on virtualization technology, so resources can easily be scaled up or down as per the
organization's need.
• Support multiple languages and frameworks.
• Provides an ability to "Auto-scale".
Example: AWS Elastic Beanstalk, Windows Azure, Heroku, Force.com, Google App Engine,
Apache Stratos, Magento Commerce Cloud, and OpenShift.
Software as a Service (SaaS)
SaaS is also known as "on-demand software". It is a software in which the applications are hosted by a cloud
service provider. Users can access these applications with the help of internet connection and web browser.
Characteristics of SaaS
• Managed from a central location
• Hosted on a remote server
• Accessible over the internet
• Users are not responsible for hardware and software updates. Updates are applied automatically.
• The services are purchased on the pay-as-per-use basis
Example: BigCommerce, Google Apps, Salesforce, Dropbox, ZenDesk, Cisco WebEx, ZenDesk, Slack, and
GoToMeeting.
Difference between IaaS, PaaS, and SaaS
It provides a virtual data center to store It provides virtual platforms and tools to It provides web software and apps to
information and create platforms for app create, test, and deploy apps. complete business tasks.
development, testing, and deployment.
It provides access to resources such as It provides runtime environments and It provides software as a service to the
virtual machines, virtual storage, etc. deployment tools for applications. end-users.
IaaS provides only Infrastructure. PaaS provides Infrastructure+Platform. SaaS provides Infrastructure+Platform
+Software.
Public cloud
Minimal Investment - As a pay-per-use service, there is no large upfront cost and is ideal
for businesses who need quick access to resources
No Hardware Setup - The cloud service providers fully fund the entire Infrastructure
No Infrastructure Management - This does not require an in-house team to utilize the
public cloud.
Limitations of Public Cloud
Data Security and Privacy Concerns - Since it is accessible to all, it does not fully protect
against cyber-attacks and could lead to vulnerabilities.
Reliability Issues - Since the same server network is open to a wide range of users, it can
lead to malfunction and outages
Service/License Limitation - While there are many resources you can exchange with
tenants, there is a usage cap
Private Cloud
Companies that look for cost efficiency and greater control over data & resources will find
the private cloud a more suitable choice.
It means that it will be integrated with your data center and managed by your IT team.
Alternatively, you can also choose to host it externally.
The private cloud offers bigger opportunities that help meet specific organizations'
requirements when it comes to customization.
It's also a wise choice for mission-critical processes that may have frequently changing
requirements.
Benefits of Private Cloud
Data Privacy - It is ideal for storing corporate data where only authorized personnel gets
access
Security - Segmentation of resources within the same Infrastructure can help with better
access and higher levels of security.
Supports Legacy Systems - This model supports legacy systems that cannot access the
public cloud.
Limitations of Private Cloud
Higher Cost - With the benefits you get, the investment will also be larger than the public
cloud. Here, you will pay for software, hardware, and resources for staff and training.
Fixed Scalability - The hardware you choose will accordingly help you scale in a certain
direction
High Maintenance - Since it is managed in-house, the maintenance costs also increase.
Community Cloud
The community cloud operates in a way that is similar to the public cloud.
There's just one difference - it allows access to only a specific set of users who share
common objectives and use cases.
This type of deployment model of cloud computing is managed and hosted internally or by
a third-party vendor. However, you can also choose a combination of all three.
Benefits of Community Cloud
Smaller Investment - A community cloud is much cheaper than the private & public cloud
and provides great performance
Setup Benefits - The protocols and configuration of a community cloud must align with
industry standards, allowing customers to work much more efficiently.
Limitations of Community Cloud
Shared Resources - Due to restricted bandwidth and storage capacity, community resources
often pose challenges.
Not as Popular - Since this is a recently introduced model, it is not that popular or available
across industries
Hybrid Cloud
As the name suggests, a hybrid cloud is a combination of two or more cloud architectures.
While each model in the hybrid cloud functions differently.
A company with critical data will prefer storing on a private cloud, while less sensitive
data can be stored on a public cloud. The hybrid cloud is also frequently used for 'cloud
bursting'. It means, supposes an organization runs an application on-premises, but due to
heavy load, it can burst into the public cloud.
Benefits of Hybrid Cloud
• Cost-Effectiveness - The overall cost of a hybrid solution decreases since it majorly uses
the public cloud to store data.
• Security - Since data is properly segmented, the chances of data theft from attackers are
significantly reduced.
• Flexibility - With higher levels of flexibility, businesses can create custom solutions that fit
their exact requirements
Limitations of Hybrid Cloud
• Complexity - It is complex setting up a hybrid cloud since it needs to integrate two or more
cloud architectures
• Specific Use Case - This model makes more sense for organizations that have multiple use
cases or need to separate critical and sensitive data
A Comparative Analysis of Cloud Deployment Models
Setup and ease of use Easy Requires professional IT Requires professional IT Requires professional IT
Team Team Team
Cost-Effectiveness Most affordable Most expensive Cost is distributed Cheaper than private but
among members more expensive than
public
1.On-Demand Self-Service
Cloud computing allows on-demand self-services.
Services include storage, networking, analysis, etc.
Users can select and use single or multiple services depending on their needs.
Users can make use of resources following their needs and specifications.
They are charged at the end of the billing cycle based on how much they use the services
provided by the cloud service providers.
Characteristics of Cloud Computing
2.Resource Pooling
Resource pooling is one of the core components of cloud computing.
A cloud service provider can provide each client with different services based on their
demands by employing resource pooling to divide resources across many clients.
Resource pooling is a multi-client approach for location independence, network
infrastructure pooling, storage systems, etc.
The process of real-time resource assignment does not affect the client's experience.
This is often used in wireless technologies like a radio transmission
Characteristics of Cloud Computing
3.Measured Service
Cloud systems automatically manage and manage resource utilization by using a metering
capability.
The consumption of resources is tracked for each application and tenant; it will give both
the user and the resource supplier an account of what has been utilized.
Monitoring, regulating, and reporting resource utilization allows for transparency for the
service provider and the service user.
The metering capability is built into some level of service abstraction, which enables
transparency between the customer and the service provider.
Characteristics of Cloud Computing
In a completely connected network (CCN) each node is connected to all other nodes in the
network.
Completely connected networks guarantee fast delivery of messages from any source node
to any destination node (only one link has to be traversed).
Notice also that since every node is connected to every other node in the network, routing
of messages between nodes becomes a straightforward task.
Completely connected networks are, however, expensive in terms of the number of links
needed for their construction.
Limited Connection Networks
Limited connection networks (LCNs) do not provide a direct link from every node to
every other node in the network.
communications between some nodes have to be routed through other nodes in the
network.
Two important conditions for LCN:
1. the need for a pattern of interconnection among nodes.
2. the need for a mechanism for routing messages around the network until they reach their
destinations.
A number of regular interconnection patterns have evolved over the years for LCNs these
patterns include:
linear arrays;
ring (loop) networks;
two-dimensional arrays (nearest-neighbor mesh);
tree networks;
hypercube networks
In a linear array, each node is connected to its two immediate neighboring nodes.
If the two nodes at the extreme ends of a linear array network are connected, then the resultant
network has ring (loop) architecture.
linear arrays are simple in their architecture and have simple routing mechanisms, they tend to
be slow.
The processors must be able to share a set of main memory modules & I/O devices in a
multiprocessor system. This sharing capability can be provided through interconnection
structures. The interconnection structure that is commonly used can be given as follows.
Time shared / Common Bus
1. Cross-bar Switch
2. Multiport Memory
3. Multistage Switching Network
Time-shared / Common Bus :In a multiprocessor system, the time-shared bus
interconnection provides a common communication path connecting all the functional
units.
In a multiprocessor system, the time shared bus interconnection provides a common
communication path connecting all the functional units like processor, I/O processor,
memory unit etc
To communicate with any functional unit, processor needs the bus to transfer the data.
To do so, the processor first need to see that whether the bus is available / not by checking the status of
the bus.
If the bus is used by some other functional unit, the status is busy, else free.
A processor can use bus only when the bus is free.
The sender processor puts the address of the destination on the bus & the destination unit identifies it.
In order to communicate with any functional unit, a command is issued to tell that unit, what work is
to be done.
The other processors at that time will be either busy in internal operations or will sit free, waiting to
get bus.
This Single-Bus Multiprocessor Organization is easiest to reconfigure & is simple. This
interconnection structure contains only passive elements. The bus interfaces of sender & receiver units
controls the transfer operation here.
Multiport Memory System employs separate buses between each memory module and
each CPU.
A processor bus comprises the address, data and control lines necessary to communicate
with memory.
Each memory module connects each processor bus. At any given time, the memory module
should have internal control logic to obtain which port can have access to memory.
The priority is established for memory access associated with each processor by the
physical port position that its bus occupies in each module.
Advantage:-
High transfer rate can be achieved because of multiple paths
Disadvantage:-
• It requires expensive memory control logic and a large number of cables and connectors.
• It is only good for systems with small number of processors.
Crossbar Switch
•
•multistage interconnect network is formed by cascading multiple single stage
switches. The switches can then use their own routing algorithm or controlled by a
centralized router, to form a completely interconnected network.
•
An Omega network consists of multiple stages of 2*2 switching elements. Each
input has a dedicated connection to an output.
An N*N omega network has log(N) number of stages and N/2 number of switching
elements in each stage for perfect shuffle between stages.
Thus network has complexity of 0(N log(N)). Each switching element can employ
its own switching algorithm. Consider an 8*8 omega network.
There are 8! = 40320 1-to-1 mappings from input to output.
There are 12 switching element for total permutation of 2^12 = 4096. Thus, it is a
blocking network.
routing