Finally we talk about "Cloud" which is the most popular "Tech" in today’s Modern World, So let's start with the basics by looking at the word “Cloud”, it may mean that it's something which is hazy, not clear or going by the google definition “state or cause of gloom, suspicion, trouble, or worry”, all these words are basically trying to hint that whatever is there behind that cloud doesn’t want to be visible to us or probably we don’t want to look at what is behind that cloud, or we are only interested in what services we are going to get out of that cloud without bothering much for what's behind it
But "curiosity kills the cat" and the whole point of having this discussed over here is to know what is there behind the curtain.
Let’s forget about the cloud for one moment and talk about our existing traditional IT infrastructures, we have datacenters with all components such as Servers, storage, network switches, internet, MPLS, virtualization, applications, databases, etc. all hosted in a datacenter, guess what? this entire infrastructure can be called: “The Cloud”; but do remember that the old traditional name which we use for this kind of setup is "On-Premise"
If you ask a Banking customer where is his money or transaction details stored? most of them would have no clue about the IT infrastructure but rather they only know that it is there somewhere with the bank; something which is not visible and he is not interested in it but he is interested in the Banking services and is able to check his account balance 24/7”, so, whenever he logs in into his account he is comforted by a number which shows his account balance, so what this implies is that the IT Infrastructure of the Bank is just a Cloud for a customer about which he doesn’t have too much knowledge
In a nutshell if you want to visualize cloud then just imagine a datacenter in front of you with all your Applications hosted over there
So, we went through an analogy of cloud but if I were to name this type of cloud what would it be? you can call it as a “Private cloud” where an organization has setup all these devices, hardware and software in a datacenter, only the Rack-space and power belongs to datacenter site owners and financial organization pays end to end for all the other components involved.
So, to make it very simple, the most basic definition of a Cloud is a Datacenter with Servers, storage, network devices, internet, Applications, services, and the way you “store and consume” these applications define what type of Cloud you are dealing with
Although I have started with Private cloud definition, but the real crux of this section is in understanding the Public cloud which operates differently and has its own advantages, so let’s differentiate all types of Clouds:
Private Cloud
Infrastructure and software services hosted at traditional datacenter service providers such as Netmagic, Reliance, CTRLs, etc. From here the services are provided to any organization or customer, for e.g., almost all financial institutions have their Infrastructure hosted in such datacenters, this type of engagement is also called Colocation.
Public Cloud
It is quite easy to understand this now as we have understood what private cloud is, Public cloud service providers provide services to all public on their own infrastructure, the major differentiating point between the private cloud and the Public cloud is that in a Private Cloud the IT infrastructure is not shared with multiple subscribers whereas in a public cloud the underlying infrastructure is shared with multiple customers. Here when I say infrastructure, I mean the actual Physical servers and devices which are separate for each customer in case of the Private cloud. Although in a Public cloud the underlying Infrastructure is shared with multiple customers but there is enough security between them, what I mean to say is that there is a “logical segregation between customer tenants” and by no means the Customer A can access Customer B's Data
AWS, Azure, Google & Oracle are the major players in the Public cloud arena.
Community cloud
It’s a kind of private cloud where you host a shared infrastructure for a specific industry only, for example IFTAS can be referred to as a community cloud where it provides services to multiple “Banking customers only" over its shared infrastructure, for e.g., hosted SFMS services.
Another example can be someone hosting a community cloud which only hosts the setup for Pharma companies and again the underlying infrastructure is being shared amongst these companies but logically they are having segregation between their setups.
Advantages of a Public Cloud
· Pay per use model
· Elasticity
· Cost Benefits
· Power cost - Nil
· Rack space cost - Nil
· Virtualization license cost - Nil
· Management and support cost of all the Infra - Nil
· Patching and maintenance cost - Nil
· Hardware cost - Nil
· Application platform cost - Nil
· Time to market is awesome (Time in which you can deploy and go-live new applications)
· Security is anytime better than On-Premise
· SLA is Equivalent or better than On-Premise
It's just a service for you, you use it and pay only for that particular service.
Here is the complex part of a Public Cloud, which is not so complex if you put a little bit of effort to understand the mechanics behind it, ok so a Public Cloud has thousands of services which are continuously running but primarily its categorized into few "top level" services on which applications are built and those are:
IAAS (Infrastructure as a Service)
IAAS is VM and VM is IAAS, the best way to understand IAAS is imagining a VM given to you with an operating system on top of it, that’s it! its IAAS. To understand better if you imagine the layers of IAAS then from hardware to VM is abstracted from you and top of the VM you can install any OS, then application server then your build /code, that’s IAAS for you
PAAS (Platform as a Service)
The ideal way in which an application is hosted is at the base layer we have hardware then the Hypervisor then VM, then operating system, then Application server then comes the build or the actual application, again in a traditional environment all these components up to the “Application Build” have to be deployed layer by layer and have a cost involved from purchase to license to support, but in a PAAS service you get all the components up to the “Application server” readymade as a platform and totally abstracted from the customer, you may just need to upload your code / build on this readymade “platform” and start running your application. Isn’t it awesome??
SAAS (Software as a Service)
After understanding IAAS and PAAS it's not much difficult to understand what SaaS is, all the way from hardware to the “Application Build” is managed by the cloud service provider and we just plugin into the service and use it.
Some Examples would be Gmail, Yahoo, Sharepoint, O365, etc
So, these are some basic concepts which would be a good starting point if you are new to cloud, these concepts would help build a strong foundation to build up your knowledge on any public cloud provider.
Another tip from my end would be to pick up any one cloud provider (Don’t try to learn multiple clouds at the same time) and learn the internal concepts and services offered, automatically you would understand the other cloud systems, its just the names of the services may slightly differ, but the underlying concept is the same
Another important trend which I have noticed is that all Financial institutions whether its Banking or NBFC are now incumbent to migrate their applications on cloud because the benefits which you get from moving your applications on cloud are immense and not migrating to cloud can push you behind in the race of digitization and Business transformation