A Basic Cloud Understanding with AWS
You must have heard this word AWS somewhere around you, at your work, in your course book or may be in some advertisements which you did not study. Have you ever thought, what is it actual? If you ask me in very layman language, I would say, it is nothing but a huge vast computer installed at a far location and we can just access it through internet and perform our work. But why is so much in buzz then? Let’s find out! Before we move further let’s understand what cloud is with some of AWS services.
What is Cloud?
Cloud is nothing but a virtual computer/ which you can access from anywhere anytime with the help of internet connection. This cloud computer will have all the features same as an on-premise systems(physical computer) having compute capabilities, storage capacity, network firewalls, database system, etc.
For example, iCloud, dropbox, AmazonWebService (AWS) are using a cloud computer or say a data center to store data in it and be easily accessible any time through internet.
Why Cloud?
There are 4 pillars because of which we use cloud and they are:
1. High availability
- The computer configured and the data around it is available any time the user want. Suppose the user wants to access the computer and its data on a phone, they can quickly access it through phone. At the same time if user wants to access it through a device in some other region, the data is easily available for the user on their system.
2. Fault tolerant
- Fault tolerant go hand to hand with high availability. Suppose, the computer goes down or got corrupted or say got damaged due to natural calamity, a new computer gets configured retrieving all the specification from the previous one and be available for the user quickly.
3. Scalability
- If for some reason the demand of server gets increased, the instance (server) on the cloud is automatically configured and added as per the requirement.
4. Elasticity
In case, number of users reduced due to some reason, the cloud (AWS) will have the capability to remove the servers as they are not required any more. It saves a lot of money for the users using cloud servers.
Example
Let’s take an example to explain all the four pillars of the cloud comparing on premise servers with cloud servers.
Consider a Software company “XYZ” is using on premise servers for their users. In 2016, they have 1000 users which gets increased to 5000 users in 2017 adding more servers for the users. Eventually in 2018, the company is expecting approx. 20000 users and hence they have configured more servers as a backup. Due to some reason, in 2018 users didn’t show up and have only 10000 users leaving extra on premise servers unused. But the company still have to pay for the unused servers as they purchased and installed it.
Now, in case of cloud, the servers will gets added as per the requirement. For example, if 2 servers are configured in 2016, 2 more servers will get added automatically when load increases in 2017. In 2018, only few servers get added as per the number of users. Here the cost of unused servers is saved by the company.
Note: Two other features leveraging use of cloud are Backups and Sharing.
AWS Cloud Services
AWS is a cloud service provider commonly known as Iaas (Infrastructure as a service). It has a pool of services including Computing Power, Storage, Databases, Networking, Analytics, Developer Tools, Virtualisation, Security, Data Management, etc.
Recommended by LinkedIn
AWS High Level Architecture
The above diagram shows a pictorial representation of AWS high level architecture and services. Users with the help of active internet connection gets inside AWS environment and leverage its services. Let’s discuss the most commonly used services of AWS and their application one by one.
1. VPCs
VPC stands for virtual private cloud and it is user’s private section which gives them entire control on it. They can configure any services like RDS, S3, EC2 (discussed later in this article) share with anyone or can restrict them. In short users can fully control this cloud section.
2. EC2 Instance
EC2 stands for Elastic Compute Cloud. It is nothing but a basic computer virtually present in AWS cloud which you can access and do whatever you can do on a basic computer. It is generally known as EC2 instance in AWS cloud terminology. It has all the things same as a computer like CPU for processing, an operating system (windows/Linux), a hard drive for local storage, a network card for networking, a firewall security, RAM, etc.
For example, consider NETFLIX a pioneer video content provider uses AWS’s EC2 instances to host their website. When we hit Netflix website, it is actually redirected to the EC2 instance where the website is hosted and return the home page.
3. RDS
What happens when user login to your Netflix account? Now, this where AWS RDS comes into picture. It stores the customer account info like user’s name, email, password, credit card account, etc. and whenever user login, it matches with the saved credential and after matching return to EC2 instance authorizing the user. It also has the full list of shows, episodes, etc.
It also supports scalability and elasticity by increasing the number of instances as load increase and deleting the instance when traffic is less. Content provider (Netflix in this case) will have to pay less for RDS as well EC2 and other services as it is pay as you go system. However, in case of on-premise databases and servers it is not possible and it will also take substantial amount of time to setup.
4. S3
Continuing the Netflix example, there must be some space where Netflix stores its data in a huge in space which reliable, secure and highly available. Here comes S3 in picture in this architecture. S3 is a massive storage bucket having almost unlimited storage where users can keep any type (audio/video/text/etc.) of files/data. When a user clicks on any episode, the code fetches the data for that particular episode and transcode it to the server where users are able to see the content on their device.
We can say it is a huge bucket where anything can be stored securely. It is also sharable. User will have the full access of it.
Unlimited Storage “Bucket”
Reason behind saying it unlimited is that it is very huge and no other company is in the league to match this space.
Another good example of implementation of S3 is drop box. It is nothing but a good visualization of implementation of S3 storage. The files are actually stored in the S3 bucket and represented in a good visual manner.
Why AWS is better than others?
I am not saying that AWS is better than others, it is completely dependent on the organisation's need, infrastructure and security. I found AWS quite flexible and customisable for variety of customers to fit their need. For organisations who want to migrate to AWS, it provides low-cost migration services so that your existing infrastructure can be seamlessly moved over to AWS. AWS provide low cost services highly available and scalable for customers. It also provide large variety of migration services which is flexible and compatible with other platform.
I did not understand the impact of this service until I sat with my mentor recently. I was explaining my interest in the Cyber Field and he started telling me about AWS and how it impacted his company in the field. He works for an oil company with technicians in very remote places with zero infracstructure. AWS service was invaluable for their industry. Since them i have been exploring this field in preparation of my military retirement. Thank you for this article.