Cloud Computing Interview Question
Cloud Computing Interview Question
In Simplest terms, cloud computing means storing and accessing the data and programs on remote servers that
are hosted on internet instead of computer’s hard drive or local server. Cloud computing is also referred as
Internet based computing.
Cloud computing architecture refers to the components and sub components required for cloud computing.
These component typically refer to:
1. Front end(fat client, thin client)
2. Back end platforms(servers,storage)
3. Cloud based delivery and a network(Internet, Intranet, Inter cloud).
Hosting a cloud:
There are three layers in cloud computing.Companies use these layers based on the service they provide.
Infrastructure
Platform
Application
At the bottom is the foundation, the Infrastructure where the people start and begin to build. This is the layer
where the cloud hosting lives.
As the time passes, as the number of members increases, there would be more traffic on the network and your
server will get slow down. This would cause a problem.
A few years ago, the websites are put in the server somewhere, in this way you have to run around or buy and
set number of servers. It costs a lot of money and takes lot of time. You pay for these servers when you are
using and as well as when you are not using.This is called hosting.
This problem is overcome by cloud hosting. With Cloud Computing, you have access to computing power
when you needed. Now, your website is put in the cloud server as you put it on dedicated server.People start
visiting your website and if you suddenly need more computing power, you would scale up according to the
need.
Benefits of Cloud Hosting :
1. Scalability: With Cloud hosting, it is easy to grow and shrink the number and size of servers based on
the need.
This is done by either increasing or decreasing the resources in the cloud.This ability to alter plans due to
fluctuation in business size and needs is a superb benefit of cloud computing especially when experiencing
a sudden growth in demand.
2. Instant: Whatever you want is instantly available in the cloud.
3. Save Money: An advantage of cloud computing is the reduction in hardware cost. Instead of
purchasing in-house equipment, hardware needs are left to the vendor. For companies that are growing
rapidly, new hardware can be a large, expensive, and inconvenience. Cloud computing alleviates these
issues because resources can be acquired quickly and easily. Even better, the cost of repairing or replacing
equipment is passed to the vendors.
Along with purchase cost, off-site hardware cuts internal power costs and saves space. Large data centers
can take up precious office space and produce a large amount of heat. Moving to cloud applications or
storage can help maximize space and significantly cut energy expenditures.
4. Reliability: Rather than being hosted on one single instances of a physical server, hosting is delivered
on a virtual partition which draws its resource, such as disk space, from an extensive network of underlying
physical servers. If one server goes offline it will have no effect on availability, as the virtual servers will
continue to pull resource from the remaining network of servers.
5. Physical Security: The underlying physical servers are still housed within data centres and so benefit
from the security measures that those facilities implement to prevent people accessing or disrupting them
on-site.
3. Security:
Cloud-based services involve third-party for storage and security. Can one assume that a c3loud-based
company will protect and secure one’s data if one is using their services at a very low or for free? They may
share user’s information with others. Security presents a real threat to the cloud.
4. Sustainability:
This issue refers to minimizing the effect of cloud computing on the environment. Citing the server’s effects
on the environmental effects of cloud computing, in areas where climate favours natural cooling and renewable
electricity is readily available, the countries with favourable conditions, such as Finland, Sweden, and
Switzerland are trying to attract cloud computing data centres. But other than nature’s favours, would these
countries have enough technical infrastructure to sustain the high-end clouds?
5. Abuse:
While providing cloud services, it should be ascertained that the client is not purchasing the services of cloud
computing for a nefarious purpose. In 2009, a banking Trojan illegally used the popular Amazon service as a
command and control channel that issued software updates and malicious instruction to PCs that were infected
by the malware So the hosting companies and the servers should have proper measures to address these issues.
6, Higher Cost: If you want to use cloud services uninterruptedly then you need to have a powerful network
with higher bandwidth then ordinary internet networks and also if your organization is broad and large so
ordinary cloud service subscription won’t suit your organization. Otherwise, you might face hassle in utilizing
an ordinary cloud service while working on complex projects and applications. This is a major problem before
small organisations, that restricts them from diving into cloud technology for their business.
7. Recovery of lost data in contingency: Before subscribing any cloud service provider goes through all
norms and documentations and check whether their services match your requirements and sufficient well-
maintained resource infrastructure with proper upkeeping. Once you subscribed the service you almost
handover your data into the hands of the third party. If you are able to choose proper cloud service then in
future you don’t need to worry about the recovery of lost data in any contingency.
8. Upkeeping(management) of Cloud: Maintaining a cloud is a herculin task because a cloud architecture
contains a large resources infrastructure and other challenges and risks as well, user satisfaction etc. As users
usually pay for how much they have consumed the resources. So, some times it becomes hard to decide how
much should be charged in case if the user wants scalability and extend the services.
9. Lack of resources/skilled expertise: One of the major issue that companies and enterprises are going
through today is the lack of resources and skilled employees. Every second organization is seeming interested
or has already been moved to cloud services. That’s why the workload in the cloud is increasing so the cloud
service hosting companies need continuous rapidly advancement. Due to these factors, organizations are
having a tough time keeping up to date with the tools. As new tools and technologies are emerging every day
so more skilled/trained employees need to grow. These challenges can only be minimized through additional
training of IT and development staff.
10. Pay-per-use service charges: Cloud computing services are on-demand services a user can extend or
compress the volume of the resource as per needs. so you paid for how much you have consumed the
resources. It is difficult to define a certain pre-defined cost for a particular quantity of services. Such types of
up and downs and price variations make the implementation of cloud computing very difficult and intricate. It
is not easy for a firm’s owner to study consistent demand and fluctuations with the seasons and various events.
So it is hard to build a budget for a service that could consume several months of the budget in a few days of
heavy use
1. SOFTWARE AS A SERVICE
Software-as-a-Service (SaaS) is a way of delivering services and applications over the Internet. Instead of
installing and maintaining software, we simply access it via the Internet, freeing ourselves from the complex
software and hardware management.It removes the need to install and run applications on our own computers
or in the data centers eliminating the expenses of hardware as well as software maintenance.
SaaS provides a complete software solution which you purchase on a pay-as-you-go basis from a cloud
service provider.Most SaaS applications can be run directly from a web browser without any downloads or
installations required.The SaaS applications are sometimes called Web-based software, on-demand
software, or hosted software.
Advantages of SaaS :
1. Cost Effective : Pay only for what you use
2. Reduced time : Users can run most SaaS apps directly from their web browser without needing to
download and install any software.This reduces the time spent in installation and configuration, and can reduce
the issues that can get in the way of the software deployment.
3. Accessibility : We can Access app data from anywhere.
4. Automatic updates : Rather than purchasing new software, customers rely on a SaaS provider to
automatically perform the updates.
5. Scalability : It allows the users to access the services and features on demand.
The various companies providing software as a service are Cloud9 Analytics, Salesforce.com, Cloud Switch,
Microsoft Office 365, Eloqua, dropBox and Cloud Tran .
2. PLATFORM AS A SERVICE
PaaS is a category of cloud computing that provides a platform and environment to allow developers to build
applications and services over the internet. PaaS services are hosted in the cloud and accessed by users simply
via their web browser.
A PaaS provider hosts the hardware and software on its own infrastructure. As a result, PaaS frees users from
having to install in-house hardware and software to develop or run a new application.Thus, the development
and deployment of the application takes place independent of the hardware.
The consumer does not manage or control the underlying cloud infrastructure including network, servers,
operating systems, or storage, but has control over the deployed applications and possibly configuration
settings for the application-hosting environment.
Advantages of PaaS :
1. Simple and convenient for users : It provides much of the infrastructure and other IT services, which users
can access anywhere via a web browser.
2. Cost Effective : It charges for the services provided on a per-use basis thus eliminating the expenses one
may have for on-premises hardware and software.
3. Efficiently managing the lifecycle : It is designed to support the complete web application lifecycle:
building, testing, deploying, managing and updating.
4. Efficiency : It allows for higher-level programming with reduced complexity thus, the overall development
of the application can be more effective
The various companies providing Platform as a service are Amazon Web services, Salesforce, Windows
Azure, Google App Engine, cloud Bess and IBM smart cloud.
3. INFRASTRUCTURE AS A SERVICE
Infrastructure as a service (IaaS) is a service model that delivers computer infrastructure on an outsourced
basis to support various operations. Typically IaaS is a service where infrastructure is provided as an outsource
to enterprises such as networking equipments, devices, database and web servers.
Infrastructure as a service (IaaS) is also known as Hardware as a service (HaaS).IaaS customers pay on a
per-use basis, typically by the hour, week or month. Some providers also charge customers based on the
amount of virtual machine space they use.
It simply provides the underlying operating systems, security, networking, and servers for developing such
applications, services, and for deploying development tools, databases, etc.
Advantages of IaaS :
1. Cost Effective : Eliminates capital expense and reduces ongoing cost and IaaS customers pay on a per use
basis, typically by the hour, week or month.
2. Website hosting : Running websites using IaaS can be less expensive than traditional web hosting.
3. Security : The IaaS Cloud Provider may provide better security than your existing software.
4. Maintainence : There is no need to manage the underlying data center or the introduction of new releases of
the development or underlying software. This is all handled by the IaaS Cloud Provider.
The various companies providing Infrastructure as a service are Amazon web services, Bluestack, IBM,
Openstack, Rackspace and Vmware.
4. Anything AS A SERVICE
Most of the cloud service providers now a days offer anything as a service that is a compilation of all of the
above services including some additional services.
Types of Cloud
Cloud computing is an Internet-based computing in which shared the pool of resources are available over a
broad network access, these resources can e provisioned or released with minimum management efforts and
service provider interaction.
There are four types of cloud:
1. Public cloud
2. Private cloud
3. Hybrid cloud
4. Community cloud
Public cloud:
Public cloud are managed by third parties which provide cloud services over the internet to public, these
services are available as pay-as-you-go billing mode.
They offer solutions for minimizing IT infrastructure costs and act as a good option for handling peak loads on
the local infrastructure. They are a goto option for small enterprises, which are able to start their businesses
without large upfront investments by completely relying on public infrastructure for their IT needs.
A fundamental characteristic of public clouds is multitenancy. A public cloud is meant to serve multiple
users, not a single customer. A user requires a virtual computing environment that is separated, and most likely
isolated, from other users.
Private cloud :
Private clouds are distributed systems that work on a private infrastructure and providing the users with
dynamic provisioning of computing resources. Instead of a pay-as-you-go model as in public clouds, there
could be other schemes in that take into account the usage of the cloud and proportionally billing the different
departments or sections of an enterprise.
1. Customer information protection: In private cloud security concerns are less since customer data
and other sensitive information does not flow out of a private infrastructure.
2. Infrastructure ensuring SLAs: Private cloud provides specific operations such as appropriate
clustering, data replication, system monitoring and maintenance, and disaster recovery, and other uptime
services.
3. Compliance with standard procedures and operations: Specific procedures have to be put in place
when deploying and executing applications according to third-party compliance standards.This is not
possible in case of public cloud.
Hybrid cloud:
Hybrid cloud is a heterogeneous distributed system resulted by combining facilities of public cloud and private
cloud. For this reason they are also called heterogeneous clouds.
A major drawback of private deployments is the inability to scale on demand and to efficiently address peak
loads. Here public clouds are needed. Hence, a hybrid cloud takes advantages of both public and private cloud.
Community cloud:
Community clouds are distributed systems created by integrating the services of different clouds to address the
specific needs of an industry, a community, or a business sector.
In community cloud, the infrastructure is shared between organization which have shared concerns or tasks.
The cloud may be managed by an organization or a third party.
Sectors that use community clouds are:
1. Media industry: Media companies are looking for quick, simple, low-cost way for increasing
efficiency of content generation.Most media productions involve an extended ecosystem of partners. In
particular, the creation of digital content is the outcome of a collaborative process that includes movement
of large data, massive compute-intensive rendering tasks, and complex workflow executions.
2. Healthcare industry: In healthcare industry community clouds are used to share information and
knowledge on the global level with sensitive data in the private infrastructure.
3. Energy and core industry: In these sectors, the community cloud is used to cluster set of solution
which collectively addresses management, deployment, and orchestration of services and operations.
4. Scientific research: In this organization with common interests of science share large distributed
infrastructure for scientific computing.
BENEFITS OF VIRTUALIZATION
1. More flexible and efficient allocation of resources.
2. Enhance development productivity.
3. It lowers the cost of IT infrastructure.
4. Remote access and rapid scalability.
5. High availability and disaster recovery.
6. Pay peruse of the IT infrastructure on demand.
7. Enables running multiple operating systems.
Types of Virtualization:
1.Application Virtualization.
2.Network Virtualization.
3.Desktop Virtualization.
4.Storage Virtualization.
5.Server Virtualization.
6.Data virtualization.
1. Application Virtualization:
Application virtualization helps a user to have remote access of an application from a server. The server stores
all personal information and other characteristics of the application but can still run on a local workstation
through the internet. Example of this would be a user who needs to run two different versions of the same
software. Technologies that use application virtualization are hosted applications and packaged applications.
2. Network Virtualization:
The ability to run multiple virtual networks with each has a separate control and data plan. It co-exists together
on top of one physical network. It can be managed by individual parties that potentially confidential to each
other.
Network virtualization provides a facility to create and provision virtual networks—logical switches, routers,
firewalls, load balancer, Virtual Private Network (VPN), and workload security within days or even in weeks.
3. Desktop Virtualization:
Desktop virtualization allows the users’ OS to be remotely stored on a server in the data centre. It allows the
user to access their desktop virtually, from any location by a different machine. Users who want specific
operating systems other than Windows Server will need to have a virtual desktop. Main benefits of desktop
virtualization are user mobility, portability, easy management of software installation, updates, and patches.
4. Storage Virtualization:
Storage virtualization is an array of servers that are managed by a virtual storage system. The servers aren’t
aware of exactly where their data is stored, and instead function more like worker bees in a hive. It makes
managing storage from multiple sources to be managed and utilized as a single repository. storage
virtualization software maintains smooth operations, consistent performance and a continuous suite of
advanced functions despite changes, break down and differences in the underlying equipment.
5. Server Virtualization:
This is a kind of virtualization in which masking of server resources takes place. Here, the central-
server(physical server) is divided into multiple different virtual servers by changing the identity number,
processors. So, each system can operate its own operating systems in isolate manner. Where each sub-server
knows the identity of the central server. It causes an increase in the performance and reduces the operating cost
by the deployment of main server resources into a sub-server resource. It’s beneficial in virtual migration,
reduce energy consumption, reduce infrastructural cost, etc.
6. Data virtualization:
This is the kind of virtualization in which the data is collected from various sources and managed that at a
single place without knowing more about the technical information like how data is collected, stored &
formatted then arranged that data logically so that its virtual view can be accessed by its interested people and
stakeholders, and users through the various cloud services remotely. Many big giant companies are providing
their services like Oracle, IBM, At scale, Cdata, etc.
It can be used to performing various kind of tasks such as:
Data-integration
Business-integration
Service-oriented architecture data-services
Searching organizational data