Cloud Computing is a buzzword in the industry right now. Undoubtedly, it is one of the most trendy technology recently. It has been integrated in almost all tech companies in the world. However, did we really understand what it is and how it works?
What is “Cloud Computing”?
According to Microsoft’s definition:
Cloud Computing is the delivery of compute power, database storage, application, and other IT resources over the Internet (the “cloud”).
In the simplest terms, cloud computing means storing and accessing data and programs over the Internet instead of your computer’s hard drive. The cloud is just a metaphor for the Internet. Instead of having to build your own server, now you just need to rent everything and start working on the cloud!
Companies offering these computing services are called cloud providers. The three companies that are dominating the market are:
- Amazon – Amazon Web Services (AWS)
- Microsoft – Microsoft Azure
- Google – Google Cloud Platform
The services are charged based on usage (similar to electricity).
1. Cost Effective – Cloud computing eliminates the capital expense of buying hardware and software and setting up and running on-site datacenters, the racks of servers, the round-the-clock electricity for power and cooling, the IT experts for managing the infrastructure. It adds up fast.
2. Speed and Agility – Most cloud computing services are provided self service and on demand, so even vast amounts of computing resources can be provisioned in minutes, typically with just a few mouse clicks, giving businesses a lot of flexibility and taking the pressure off capacity planning.
3. Scalability – The benefits of cloud computing services include the ability to scale elastically. In cloud speak, that means delivering the right amount of IT resources – for example, more or less computing power, storage, bandwidth – right when its needed and from the right geographic location.
4. Productivity – On-site datacenters typically require a lot of “racking and stacking” – hardware set up, software patching and other time-consuming IT management chores. Cloud computing removes the need for many of these tasks, so IT teams can spend time on achieving more important business goals.
5. Security and Reliability – Cloud computing makes data backup, disaster recovery and business continuity easier and less expensive, because data can be mirrored at multiple redundant sites on the cloud provider’s network.
6. Mobility – Allow data to be accessed anywhere and anytime
That is cloud computing. However, we are going to discuss the architecture that drives it all; the essential loosely coupled components and sub-components that make the cloud work. Broadly speaking, we may divide the cloud computing architecture into two sections:
- Front end
- Back end
These ends connect to each other via a network, generally the Internet.
While the Front End is the User Interface where clients use Web Browser or Terminal to connect to Internet, the Back End, on the other hand, is where the cloud comes in action.
We can think the Back End as a stack of layers. From the bottom, the Infrastructure Layer consists of servers, CPUs, databases, storages. Moving on to the upper layer is the Software Platform Layer which is responsible for the cloud runtime environment and services. Running on top of it is the Application Layer which provides the client accessible to applications provided by the cloud providers.
Management of cloud includes activities such as event management, configuration and compliance, provisioning of resources, workload balancing and service integration.
Security of cloud includes features such as identity and access management, data encryption, segregation between the users and protection, VM isolation, secure VM migration, virtual network isolation, security intelligence and software, platform, and infrastructure security and security event and access monitoring. Security ensures:
- Access authentication and authorization
- Ensuring uninterrupted availability
- Maintaining client confidentiality
- Subscriber identity management
Type of Cloud Services
Accordingly, we can classify cloud services into the following three categories:
1. Infrastructure as a Service (IaaS)
Provide access to:
- Networking features
- Computers (virtual or on dedicated hardware)
- Data storage space
2. Platform as a Service (PaaS)
Software Platform Layer
- Supply an on-demand environment for developing, testing, delivering and managing software applications
- No need to worry about setting up or managing the underlying infrastructure of servers, storage, network and databases needed for development
3. Software as a Service (SaaS)
- Deliver software applications over the Internet
- Cloud providers host and manage the software application, infrastructure and handle any maintenance
- Users connect to the application over the Internet
In brief, we can picture the cloud services matching with the cloud architecture as follow:
Type of Cloud Deployments
1. Public clouds are owned and operated by a third-party cloud service provider, which deliver their computing resources like servers and storage over the Internet. With a public cloud, all hardware, software and other supporting infrastructure is owned and managed by the cloud provider. You access these services and manage your account using a web browser.
2. Private cloud, also known as an internal or enterprise cloud, resides on company’s intranet or hosted data center where all of your data is protected behind a firewall. This can be a great option for companies who already have expensive data centers because they can use their current infrastructure. However, the main drawback people see with a private cloud is that all management, maintenance and updating of data centers is the responsibility of the company. Over time, it is expected that your servers will need to be replaced, which can get very expensive. On the other hand, private clouds offer an increased level of security and they share very few, if any, resources with other organizations.
3. Hybrid clouds combine public and private clouds, bound together by technology that allows data and applications to be shared between them. By allowing data and applications to move between private and public clouds, hybrid cloud gives businesses greater flexibility and more deployment options.
Uses of Cloud Computing
There are many times that we use cloud computing without even recognize it. If you are editing an online document, or you are watching a streaming video, video-calling, it is probably that you are using cloud computing services. Hence, we can clearly see that cloud computing is essential. Here are some use cases of cloud computing:
- Create new apps and services
- Create new apps and services
- Store, back up and recover data
- Host websites and blogs
- Stream audio and video
- Deliver software on demand
- Analyze data for patterns and make predictions
In brief, we can clearly observe that Cloud Computing is now everywhere and it is making our work become much easier as well as more convenient than ever.