DEV Community

Cover image for AWS and what is Cloud Computing?
Ellison
Ellison

Posted on

AWS and what is Cloud Computing?

Introduction

At the first moment it might be scaring and really complicated to understand what is the cloud, specially if you are used to manage application servers, know about storage, client-server architecture etc. We may start thinking that there are cables flying in the sky but let's check what is cloud compute by Amazon.

Cloud computing is the on-demand delivery of compute power, database, storage, applications and other IT resource through a cloud services platform via the Internet with pay-as-you-go pricing.

In other words, cloud is just a set of computers of someone else. Those computers provides you common IT resources like hardware, software and services and you pay just for what you use! That approach of delivering applications made possible the creation of uncountable products in the internet because now you can deploy and run your application anywhere in the world. So, we can point out:

  • Externalize infrastructure
  • Pay-as-you-go pricing
  • Provision the right type and size of computing
  • Access infrastructure, services and resources almost instantly through the internet

Five Characteristics of Cloud Computing

  • On-demand self-service. Provisioning resources by yourself;
  • Broad network access. Resources are available over the internet;
  • Multi-tenancy and resource pooling. Multiple customers can share applications and infrastructure using the same set of physical resources;
  • Rapid elasticity and scalability. Scaling based on demand thanks to the feature of automatically acquire and dispose resources;
  • Measured service. Users pay for what they have used;

Six Advantages of Cloud Computing

  • Trade capital expense for variable expense. No need to buy and maintain data centers and servers. You can pay only when you use computing resources;
  • Benefit from massive economies of scale. Providers such as AWS can scale to hundreds of thousand of customers, which translates into lower pay-as-you-go prices;
  • Stop guessing capacity. Eliminate guessing on your infrastructure needs. That often ends up in: expensive idle resources or limited capacity. With cloud computing, you can adjust the capacity on demand;
  • Increase speed and agility. Create and dispose resources in minutes;
  • Stop spending money running and maintaining data centers. Focus on projects. The cloud abstracts the complexity of the infrastructure;
  • Go global in minutes. Deploy applications around the world in order to offer lower latency to the customers at minimal cost;

Types of Cloud Computing

Cloud computing types provide different levels of control, flexibility, management and can be divided in two types:

  • Cloud Computing Models
    • Infrastructure as a Service (IaaS)
    • Platform as a Service (PaaS)
    • Software as a Service (SaaS)
  • Cloud Computing Deployment Model
    • Cloud
    • Hybrid
    • On-premises

Cloud Computing Models

IaaS

  • Provides basic building blocks for cloud IT as access to networking features, computers and data storage space;
  • Highest level of flexibility and management control over IT resources;

PaaS

  • Removes the need for your organization to manage the underlying infrastructure;
  • Focus on the deployment and management of your applications;
  • Examples. Elastic Beanstalk, Heroku, AppEngine (GCP);

SaaS

  • Provides you with a completed product that is run and managed by the service provider;
  • In most cases, people referring to Software as a Service are referring to end-user applications;
  • Examples. Gmail, Dropbox etc

Cloud Computing Deployment Models

Cloud

  • Fully deployed in the cloud and all parts of the application run in the cloud;
  • Possibility to migrate applications from an existing infrastructure to the cloud;

Hybrid

  • It is a way to connect infrastructure and applications between cloud-based resources and existing resources that are not located in the cloud;
  • Keep some servers on-premises and extend some capabilities to the cloud;
  • Control over sensitive assets in private infrastructure;

On-premises

  • Sometimes called "private cloud";
  • Doesn't provide many of the benefits of cloud computing;
  • Ability to provide dedicated resources;
  • In most cases it is the same as legacy IT infrastructure while using application management and virtualization technologies to try and increase resource utilization;

Global infrastructure

Edge Locations

  • Reliable, low latency and high throughput network connectivity;
  • Content is delivered to end users with lower latency;

Regions

  • It is a physical location in the world (Data center) where have multiple Availability Zones;
  • Designed to be completely isolated from the other Amazon Regions providing fault tolerance and stability;
  • Most AWS services are region scoped;

Availability Zones

  • One or more discrete data centers with redundant power, networking, connectivity and housed in separate facilities;
  • Ability to operate production applications and databases that are high available, fault tolerant and scalable;
  • 80 Availability Zones within 25 geographic Regions around the world;
  • Availability Zones in a Region are connected through low-latency links;
  • Designed as an independent failure zone:
    • Lower risk flood plains;
    • Uninterruptible power supply;
    • Onsite backup generation facilities;
  • All redundantly connected to multiple tier-1 transit providers;

Security and Compliance

It is a shared responsibility model between AWS and the customer which basically defines what AWS and the customer are responsible for. The customer is responsible for the security IN the cloud and AWS is responsible for the security OF the cloud.

Therefore, AWS is responsible for protecting the infrastructure that runs all of the services offered in the AWS Cloud which means: hardware, software, networking etc. The customer responsibility will be determined by the AWS Cloud services that a customer selects. In general the user responsibility will involve:

  • Customer Data;
  • Platform, applications, identity and access management;
  • Operating system, network and firewall configuration;
  • Client-side data encryption and data integrity authentication;
  • Server-side encryption (File system and/or data);
  • Networking traffic protection (encryption, integrity, identity);

The AWS responsibility is:

  • AWS Global Infrastructure (Regions, Availability Zones, Edge Locations);
  • Software (compute, storage, database, networking);

Benefits of AWS Security

  • Keep your data safe. All data is stored in highly secure AWS data centers;
  • Meet Compliance Requirements. Segments of your compliance have already been completed;
  • Save Money. Maintain the highest standard of security without having to manage your own facility;
  • Scale Quickly. Designed to keep your data safe;

AWS Acceptable Policy

  • No illegal, harmful, or offensive use of content;
  • No security violations;
  • No network abuse;
  • No email or other message abuse;

Pricing

There three pricing fundamentals in the pay-as-you-go pricing model:

  • Compute. Time of using resources;
  • Storage. Pay for data stored in the cloud;
  • Data transfer OUT of the cloud. Data transfer IN the cloud is free;

More Reading

What is Cloud Computing
Global Infrastructure
Cloud Front
Shared Responsibility Model
AWS Acceptable Use Policy

Top comments (0)