The vendors providing Cloud computing are called Cloud services. The “cloud” in cloud computing refers to the internet. Therefore, cloud computing refers to providing computing services like storage, CPU, networking, RAM, servers, etc. over the Internet. However, cloud computing has evolved over the years and thereby, providing a range of services like software development platforms, tools, enhanced infrastructure management, etc.
The major cloud service providers in the market include Google, Amazon, IBM, Oracle, SAP, etc. A perfect example of cloud computing is Google docs. All your documents are stored in Google cloud and you can access your documents from anywhere, anytime and from any device without having any specific software (Document viewer/editor) installed in your system. Your documents and application through which you can access your documents, both are available in the cloud.
The below figure gives an overall view of cloud computing.
Cloud computing can be implemented in a number of ways based on the organisation’s or individual’s requirement and business needs. Cloud infrastructure can be setup in a number of ways, which are referred to as cloud deployment models.
The types of deployment models are as follows −
This type of cloud is freely available for public use. It can be owned by big companies or government organisations providing free of cost services. For Example - Gmail, Dropbox, Microsoft Azure, etc.
Private cloud is used exclusively by a single organisation for their internal purposes. They are generally, accompanied by firewalls restricting the general public from using the cloud. For example, a big MNC operating private cloud for its multiple subsidiaries or business unit for their internal computing/sharing resources.
It is a model between public and private cloud. Only selected organisations or communities of users having the same line of business or same agenda have access to this type of cloud. For example, all the banks maintaining a common cloud having the database of loan defaulters, which is shared among the banks to refer while issuing a fresh loan.
This type of cloud infrastructure is a mixture of any of the deployment models discussed above (Public, Private and Community). For example, a large company maintaining a hybrid cloud of public and private. All the sensitive information of the companies like future strategies, internal policies, etc. are stored and processed in private cloud while public information such as product details, prices, orders are processed and stored in a public cloud.
There are also cloud service models, which are categorised based on the services offered by the cloud service providers. We have discussed the three service models of cloud below −
This is the most fundamental level of cloud service, where in customer only takes computing resources or virtual hardware like storage, CPU, RAM, etc. from the cloud service providers. The customer takes complete ownership of managing applications, operating systems, software, databases, etc. in the cloud. For example − Rackspace, Digital ocean, etc.
This is one level further to IaaS. Here, along with the computing resources/virtual hardware, operating system, some software service and tools are also provided by the cloud service providers. The customer takes ownership of developing application using those software services/tools and maintaining it. For example − Google App Engine, Apache Stratos, ServiceNow, etc.
This service model offers fully functional, ready to use software over the internet. The service provider takes the complete ownership of managing the software, servers, database, infrastructure, etc. The SaaS services can be free or available at monthly/yearly prices. For example: Salesforce, Google Apps, ServiceNow, etc.
We can summarise the deployment model and service model of the cloud based on the below figure.
ServiceNow is a highly flexible application which provides the option of PaaS as well as SaaS. Its SaaS offering provides fully functional workflow automation and ITSM tools, while its PaaS offering, allows the user to develop a custom application on the top of existing suite, as per the business requirement. We will study more about this in later sections.