Cloud computing is the access to computers and their functionality via the Internet or a local area network. Users of a cloud request this access from a set of web services that manage a pool of computing resources (i.e., machines, network, storage, operating systems, application development environments, application programs). When granted, a fraction of the resources in the pool is dedicated to the requesting user until he or she releases them.
It is called "cloud computing" because the user cannot actually see or specify the physical location and organization of the equipment hosting the resources they are ultimately allowed to use. That is, the resources are drawn from a "cloud" of resources when they are granted to a user and returned to the cloud when they are released.
A "cloud" is a set of machines and web services that implement cloud computing.
Cloud Computing: What is Cloud Computing?
The Three Ways to Cloud Compute
What is the Relationship Between Virtualization and Cloud Computing?
Virtualization is the ability to run "virtual machines" on top of a "hypervisor." A virtual machine (VM) is a software implementation of a machine (i.e., a computer) that executes programs like a physical machine. Each VM includes its own kernel, operating system, supporting libraries and applications. A hypervisor provides a uniform abstraction of the underlying physical machine.
Multiple VMs can execute simultaneously on a single hypervisor. The decoupling of the VM from the underlying physical hardware allows the same VM to be started on different physical machines. Thus virtualization is seen as an enabler for cloud computing, allowing the cloud computing provider the necessary flexibility to move and allocate the computing resources requested by the user wherever the physical resources are available.
How Are Clouds Classified?
Given the broad definition of the term "cloud," the current taxonomy differentiates clouds both in terms of cloud service offerings and cloud types. When categorizing cloud service offerings, we often refer to clouds in terms of "service style" depending on the portion of the software stack delivered as a service.
The most common service styles are referred to by the acronyms *Iaas, Paas, and Saas.
Cloud "types" (including public, private, and hybrid) refer to the nature of access and control with respect to use and provisioning of virtual and physical resources.
What Are the Most Popular Cloud Service Styles?
Infrastructure as a Service (IaaS)
IaaS clouds provide access to collections of virtualized computer hardware resources, including machines, network, and storage. With IaaS, users assemble their own virtual cluster on which they are responsible for installing, maintaining, and executing their own software stack.
Platform as a Service (PaaS)
PaaS style clouds provide access to a programming or runtime environment with scalable compute and data structures embedded in it. With PaaS, users develop and execute their own applications within an environment offered by the service provider.
Software as a Service (SaaS)
SaaS style clouds deliver access to collections of software application programs. SaaS providers offer users access to specific application programs controlled and executed on the provider's infrastructure. SaaS is often referred to as "Software on Demand."
Public clouds provide access to computing resources for the general public over the Internet. The public cloud provider allows customers to self-provision resources typically via a web service interface. Customer's rent access to resources as needed on a pay-as-you-go basis. Public clouds offer access to large pools of scalable resources on a temporary basiswithout the need for capital investment in data center infrastructure
Private clouds give users immediate access to computing resources hosted within an organization's infrastructure. Users self-provision and scale collections of resources drawn from the private cloud, typically via web service interface, just as with a public cloud. However, because it is deployed within the organization's existing data center—and behind the organization's firewall—a private cloud is subject to the organization's physical, electronic, and procedural security measures and thus offers a higher degree of security over sensitive code and data. In addition, private clouds consolidate and optimize the performance of physical hardware through virtualization, and can thus markedly improve data center efficiency while reducing operational expense.
Colocation is where you provide the equipment, and the colocation provider hosts it in their data center and provides the space, power, rack, and bandwidth. The cloud is not a place, rather software and/or hardware available via the Internet.
Smaller operations and startups usually opt for the cloud because of the scalable cost, low overheard, and no need for an IT staff. Larger enterprises often go the colocation route to house their servers because it saves money in the long run, and it offers the benefit and flexibility that comes with total server control.
HYBRID CLOUD: This is a co-existence of public cloud and private cloud environments. Hybrid combines on-premises or colocation servers with public clouds so that data and applications can move between the two clouds for increased agility, security, and cost-effectiveness.
A hybrid cloud combines computing resources (e.g., machines, network, storage, etc.) drawn from one or more public clouds and one or more private clouds at the behest of its users.
Cloud computing is the delivery of computing as a service rather than a product, whereby shared resources, software, and information are provided to computers and other devices as a utility (like the electricity grid) over a network (typically the Internet).
http://en.wikipedia.org/wiki/Cloud_computing
Public Clouds
A public cloud is one in which the services and infrastructure are provided off-site over the Internet
A public cloud is the obvious choice when
Your standardized workload for applications is used by lots of people, such as e-mail.
You need to test and develop application code.
You have SaaS (Software as a Service) applications from a vendor who has a well-implemented security strategy.
You need incremental capacity (the ability to add computer capacity for peak times).
You’re doing collaboration projects.
You’re doing an ad-hoc software development project using a Platform as a Service (PaaS) offering cloud
Private Clouds
A private cloud is one in which the services and infrastructure are maintained on a private network.
the company to still purchase and maintain all the software and infrastructure
A private cloud is the obvious choice when
Your business is part of an industry that must conform to strict security and data privacy issues.
Hybrid Clouds
You can use a public cloud to interact with the clients but keep their data secured within a private cloud.
Your company wants to use a SaaS application but is concerned about security.
Your SaaS vendor can create a private cloud just for your company inside their firewall.
They provide you with a virtual private network (VPN) for additional security.
cloud computing key benefits include scalability, instant provisioning, virtualized resources and ability to expand the server base quickly.
Public Cloud Computing
the public cloud is by definition a multi-tenant environment
pay-as-you-go” model
No Contracts –you’re only paying by the hour – if you want to shut down your server after only 2 hours of use, there is no contract requiring your ongoing use of the server.
Private Cloud Computing
Compliance – Sarbanes Oxley(SOX), PCI and HIPAA compliance can not be delivered through a public cloud deployment.
Hybrid Deployments – If a dedicated server is required to run a high speed database application, that hardware can be integrated into a private cloud, in effect, hybridizing the solution between virtual servers and dedicated servers. This can’t be achieved in a public cloud.
Platform as a service (PaaS) is the delivery of a computing platform and solution stack as a service. PaaS offerings facilitate deployment of applications without the cost and complexity of buying and managing the underlying hardware and software and provisioning hosting capabilities,providingall of the facilities required to support the complete life cycle of building and delivering web applications and services entirely available from the Internet
Cloud infrastructure services, also known as "infrastructure as a service" (IaaS), deliver computer infrastructure – typically a platform virtualization environment – as a service, along with raw (block) storage and networking. Rather than purchasing servers, software, data-center space or network equipment, clients instead buy those resources as a fully outsourced service. Suppliers typically bill such services on a utility computing basis; the amount of resources consumed (and therefore the cost) will typically reflect the level of activity. http://en.wikipedia.org/wiki/Cloud_computing
Infrastructure as a Service is a provision model in which an organization outsources the equipment used to support operations, including storage, hardware, servers and networking components. The service provider owns the equipment and is responsible for housing, running and maintaining it. The client typically pays on a per-use basis
IaaS is one of three main categories of cloud computing service. The other two are Software as a Service (SaaS) and Platform as a Service (PaaS). http://searchcloudcomputing.techtarget.com/definition/Infrastructure-as-a-Service-IaaS
Infrastructure as a service (IaaS)
In the most basic cloud-service model & according to the IETF (Internet Engineering Task Force), providers of IaaS offer computers – physical or
(more often) virtual machines – and other resources. (A hypervisor, such as Xen, Oracle VirtualBox, KVM, VMware ESX/ESXi, or Hyper-V runs the virtual machines as guests. Pools of hypervisors within the cloud operational support-system can support large numbers of virtual machines and the ability to scale services up and down according to customers' varying requirements.) IaaS clouds often offer additional resources such as a virtual-machine disk image library, raw block storage, and file or object storage, firewalls, load balancers, IP addresses, virtual local area networks (VLANs), and software bundles. IaaS-cloud providers supply these resources on-demand from their large pools installed in data centers.
IaaS vs. PaaS vs. SaaS
On-premises software (sometimes abbreviated as "on-prem") is installed and runs on computers on the premises (in the building) of the person or organization using the software, rather than at a remote facility such as a server farm or cloud. On-premises software is sometimes referred to as “shrinkwrap” software, and off-premises software is commonly called “software as a service” ("SaaS") or “cloud computing”.
Software as a service (SaaS)
Software as a service (SaaS) is a software licensing and delivery model in which software is licensed on a subscription basis and is centrally hosted.
It is sometimes referred to as "on-demand software".
SaaS provides a complete software solution which you purchase on a pay-as-you-go basis from a cloud service provider.
You rent the use of an app for your organisation and your users connect to it over the Internet, usually with a web browser. All of the underlying infrastructure, middleware, app software and app data are located in the service provider’s data center.
The service provider manages the hardware and software and with the appropriate service agreement, will ensure the availability and the security of the app and your data as well.
https://azure.microsoft.com/en-in/overview/what-is-saas/
Software as a service (SaaS) allows users to connect to and use cloud-based apps over the Internet. Common examples are email, calendaring and office tools (such as Microsoft Office 365).
Software as a service (SaaS) is a way of delivering centrally hosted applications over the Internet—as a service
SaaS applications are sometimes called web-based software, on-demand software, or hosted software
Whatever the name, SaaS applications run on a SaaS provider’s servers
Instead of installing and maintaining software, you simply access it via the Internet, freeing yourself from complex software and hardware management.
The provider manages access to the application, including security, availability, and performance
What are the Advantages of SaaS?
High adoption
Lower initial costs
Painless upgrades
Seamless integration
SaaS customers have no hardware or software to buy, install, maintain, or update.
SaaS Characteristics
A good way to understand the SaaS model is by thinking of a bank, which protects the privacy of each customer while providing service that is reliable and secure—on a massive scale. A bank’s customers all use the same financial systems and technology without worrying about anyone accessing their personal information without authorization.
https://www.salesforce.com/saas/
Software as a service (SaaS)
Software as a service is a software licensing and delivery model in which software is licensed on a subscription basis and is centrally hosted It is sometimes referred to as "on-demand software"
formerly referred to as "software plus services" by Microsoft SaaS is typically accessed by users using a thin client via a web browser.
a common delivery model for many business applications, including office software, messaging software, payroll processing software, etc
https://en.wikipedia.org/wiki/Software_as_a_service
OpenSaaS is open source software that is also available as software-as-a-service.
Examples have been around for some time, such as WordPress.
Our first product, NuData, is the turnkey hosted and enterprise supported version of DKAN, an open source configuration (or "distribution") of Drupal that provides a robust government open data publishing platform. DKAN is open source, collaboratively built and hosted on Drupal.org (as well as mirrored on GitHub).
Our second product is NuApps, a turnkey SaaS version of OpenCivic, a Drupal distribution for managing hackathons, app stores and app contests.
https://opensource.com/government/14/1/opensaas-and-government-innovation
SaaS does not provide users with a copy of the executable file; they can’t touch it or see it. Therefore, it’s pretty impossible for users to see what it does or change it. Open source code, on the other hand, is openly available to anyone and is a huge accelerator of growth, since it encourages collaborative effort from thousands of developers.
OpenSaaSbasically provides customers with the best of both worlds:
It’s open source so you can build your own platforms with it and customize all you want.
It’s SaaS, which means you can choose not to manage the platform at all, you can simply pay your software provider.
https://www.getopensocial.com/blog/community-management/opensaas-platform
XaaS is a general, collective term that refers to the delivery of anything as a service.
https://searchcloudcomputing.techtarget.com/definition/XaaS-anything-as-a-service
This model is usually calledXaaS or Anything-as-a-service. It includes all the services in a cloud that customers
can order over the Internet. "X" can be changed: IaaS refers to infrastructure as a service,
PaaS — a platform for development, SaaS — a software as a service.
Other kinds of XaaS
Database as a service (DBaaS), Storage-as-a-Service), desktop as a service (DaaS), communications as a service (CaaS), monitoring as a service (MaaS) and even malware as a service (MaaS).
https://www.ispsystem.com/news/xaas
As-a-Service is a computing model where services and technology are made available on demand over a network to a consumer. Typically content services involve three stages: creating or acquiring content, managing or processing content and delivering or publishing content.
For the purposes of this discussion, we can define content as structured content like news articles, product catalogs or blog posts as well as file-based or unstructured content that includes digital assets and static files such as documents, images or videos
A CDAAS solution would provide at least the following capabilities:
Content API for searching a content repository and reading/fetching various types of content in a modular fashion.
API services like throttling, security policies, rights management, independently scalable calls, response transformation capabilities etc.
Caching, CDN support for file-based content delivery and webhooks/triggers to refresh cached content.
API discovery, documentation, SDKs and a developer portal for API.
Content analytics, reporting and real-time monitoring of API with alerts based on usage trends.
The target audience for CDAAS could be internal customers of a business who need to build content-rich web, mobile, chatbot, IOT or other applications, partners or customers who need syndicated content for their own systems or an API team that builds out content-based microservices for various business initiatives.
Desktop virtualization is software technology that separates the desktop environment and associated application software from the physical client device that is used to access it.
Desktop virtualization can be usedin conjunction with application virtualization and (Windows) user profile management systems, now termed "user virtualization," to provide a comprehensive desktop environment management system