I

What is Cloud Computing?

Cloud computing is the on-demand delivery of IT resources over the internet with pay-as-you-go pricing. Instead of buying, owning, and maintaining physical data centers and servers, you can access thechnology services, such as computing power, storage and databases on an as-needed basis from a cloud provider like Amazon AWS/Google GCP/Microsoft Azure

Cloud

Cloud Service Models

The three main cloud computing service models include:

  • Infrastructure as a Service (IaaS): Provides virtualized computing resources over the internet.
  • Platform as a Service (PaaS): Provides a platform allowing customers to develop, run, and manage applications without the complexity of building and maintaining the infrastructure.
  • Software as a Service (SaaS): Delivers software applications over the internet on a subscription basis, eliminating the need to install and run the application on the customer's own computers.

Each of these service models provides different levels of control, flexibility and management so that you can select the right set of services fr your needs.


Cloud Deployment Models

Below are the Cloud Deployment models:

  • Public Cloud: Services are delivered over the public internet and available to anyone who wants to purchase them.
  • Private Cloud: Cloud infrastructure is operated solely for a single organization and is managed either by the organization or a third party.
  • Hybrid Cloud: Combines public and private cloud models, allowing data and applications to be shared between them.

AWS Global Infrastructure

AWS Global infrastructure refers to the network of datacenters and edge locations around the world that AWS operate to deliver it's cloud computing services to AWS customers.

DataCenter: Data Center houses the server and network infrastructure to run its services.

Availability Zone (AZ): One or more Data Centers connected with each other with redundent fiber cables form AZ, for providing higher vailability, redundancy and fault tolerance.

Region: Region is a separate geographic area with multiple availability zones. AZs are physically separate from each other but are connected by low-latency links. Example of region: us-east-1 (North Virginia) or eu-west-1 (Ireland).

Edge Location: Edge locations are separate Infrastructe from regions. These Edge locations has connectivity to the other regions. Edge locations are rented rack or cage space from other providers. AWS rents them to provide web caching for customers to provide increased performance.

Local Zones: This is anotehr interesting service of AWS Global Infrastructure. AWS had cusotmer requests for placing an AZ in a specific city to have single-digit millisecond latency. Since there is no rest of the region infrastructure to justify creating a region in that city. These Local Zones associated with other regions on the same continent.


Challenges in Business and How Cloud Computing Solve

1. Scalability: Businesses often face challenges in scaling their IT infrastructure to meet fluctuating demands. Cloud computing offers scalability, allowing businesses to easily adjust resources based on demand without the need for upfront investments in hardware.

2. Cost Management: Managing IT costs can be challenging, especially for small and medium-sized businesses. Cloud computing offers cost-effective solutions, as businesses only pay for the resources they use, avoiding the need for expensive hardware and maintenance costs.

3. Data Security: Data security is a major concern for businesses, particularly with the increasing number of cyber threats. Cloud providers offer advanced security measures, such as encryption and access controls, to protect data from unauthorized access and breaches.

4. Remote Workforce: With the rise of remote work, businesses need solutions that enable collaboration and access to resources from anywhere. Cloud computing provides the flexibility for employees to work remotely while accessing the tools and data they need.

5. Disaster Recovery: Businesses need reliable disaster recovery solutions to ensure business continuity in the event of a disaster. Cloud computing offers automated backup and recovery solutions, reducing downtime and minimizing the impact of disasters.

6. Compliance: Businesses in regulated industries need to comply with various regulations and standards. Cloud providers offer compliance certifications and tools to help businesses meet their regulatory requirements.

7. Competitive Edge: In today's competitive business environment, businesses need to innovate and respond quickly to market changes. Cloud computing provides the agility and flexibility businesses need to stay competitive and adapt to changing market conditions.

In today's business landscape, companies require resilience, security, durability, scalability, and high performance, as well as reliability, cost-effectiveness, and highly optimized systems. These elements are essential to providing the best experience for customers and driving business growth at scale.

Cloud service providers offer all these valuable features in one place, providing peace of mind to consumers by managing and maintaining the services to meet all their business needs.


Hands-On AWS: Exploring Essential Services for Beginners

This page focuses on hands-on learning for AWS. AWS offers over 200 fully featured services. This page explains the basics about that service and demonstrate how to get started using. We'll begin with some of the essential and commonly used ones.


Register for free AWS account by click on Register for free AWS account


Amazon VPC

VPC (Virtual Private Cloud) is a virtual datacenter in the cloud. This setup grants you complete control over your virtual network, enabling you to select your IP ranges, create subnets, and configure route tables and network gateways.

Amazon VPC allows you to establish a logically isolated segment of the AWS cloud for deploying AWS resources within a virtual network. Upon creating an AWS account, a default VPC is automatically generated for you. If necessary, by default you can create up to 5 VPCs per region, and you have an option to increase this limit by contacting AWS support.

To understand or work effectively with VPC, it's essential to learn about the following concepts:


vpc demo1

While there is vast content available for in-depth exploration of VPC, here I aim to simplify the concept for easier understanding. For more details about each aspect, you can refer to the AWS public documentation.

  • VPC CIDR: Each VPC is assigned a specific range of IP addresses. For instance, a VPC CIDR may be 10.0.0.0/16, with usable IP addresses ranging from 10.0.0.1 to 10.0.255.254.
  • Subnet: Subdivisions of your VPC's IP address range as per your design. For example, creating subnets like subnet1 (10.0.1.0/24) and subnet2(10.0.2.0/24)
  • Public Subnet: Which has a route to the internet gateway. Associated Route table has a route to Internet Gateway (IGW)

    Private Subnet: Which has no route to the internet gateway. Associated Route table has no route to Internet Gateway(IGW)

  • Route Table: Each subnet associated with a Route table and Network access control list. These associations help control the flow of traffic in and out of the subnet.
  • Network ACL: A network ACL is an optional layer of security for your VPC that acts as a firewall for controlling traffic in and out of one or more subnets.
  • Security Group: VPC also provides another layer of security for EC2 instances running in a subnet using Security Group. Security Groups act as virtual firewalls for your instances to control incoming and outgoing traffic.
  • Inbound rule: control the incoming traffic to the instance.
    Outbound rule: control the outgoing traffic from the instance.

Note: If you want to change the NACL of a particular subnet, You need to navigate to the subnet console and click on "Edit network ACL association". You are not allowed to disassociate a subnet from NACL directly.

Let's Dive into the VPC Demo
During this demo, I will demonstrate the following:

  1. Creating a custom VPC with its own IP range.
  2. Creating subnets named "subnet-public" and "subnet-private."
  3. Creating an Internet Gateway (IGW) and attaching it to the VPC. Note that each IGW can only be assigned to one VPC.
  4. Create and update the route table to include the IGW, enabling internet connectivity.
  5. Verifying default NACL and Security Group created with the VPC creation.

Login to AWS using user name and password


aws-login

Select the region to create VPC:


regionselection

Search for VPC and select VPC to navigate to VPC console:


vpcsearch

Click on Create VPC button


createvpc1

Enter vpc name, IP address, select Tenancy. You have option to choose dedicated or default. If you choose "dedicated", vpc will be created on dedicated hardware and which is going to be extra cost for you.


createvpc2

The custom VPC has been successfully created with the CIDR 10.0.0.0/16 using the above steps.

createvpc2

Using AWS CLI for creating VPC:

aws ec2 create-vpc \
      --cidr-block 10.0.0.0/16 \
      --tag-specifications 'ResourceType=vpc,Tags=[{Key=Name,Value=VPCNAME}]' 

Verifying Default NACL and Main Route Table

createsubnet
createsubnet1a

Creating subnets named "subnet-public" and "subnet-private"


Click on "Subnets" in the left sidebar of the VPC console to access the subnet console, and proceed by clicking on "Create Subnet."


createsubnet
createsubnet1a createsubnet1b

The creation of "subnet-public" was successful. Now, proceed to create "subnet-private", using AWS CLI


Using AWS CLI for creating Subnet:

aws ec2 create-subnet \
      --vpc-id  vpc-020174e754d99308f --cidr-block 10.0.2.0/24 \
      --tag-specifications 'ResourceType=subnet,Tags=[{Key=Name,Value=subnet-private}]'
    
both-subnets

In the above step, subnets are successfully created. However, before you can start using a subnet for deploying resources, you need to associate the subnet with a route table. The route table determines the routing configuration for the subnet, including how traffic is directed within the subnet and to external networks.

We already have a default route table that allows communication between any IP addresses within the VPC CIDR range internally. However, in this demo, I am creating two route tables: one for internet communication and one for internal communication without internet access.

Create route table:Navigate to "Route Tables" in the vpc console -> click on "Create route table"

create-routetable

Now lets have a look on the Routes and Subnet association information of the routetable

routeinfo
subnet-info

To enable internet communication, we must create an Internet Gateway and add a route in the route table that points to the Internet Gateway.

Navigate to "Internet Gateway" in VPC console and click on "Create Internet Gateway".

IGW

After creating the IGW, it needs to be attached to the demo VPC.

IGW
IGW

Next, we need to create a route in the route table to direct traffic to the IGW.

Navigate to VPC -> Route tables -> rtb-0be92ee0f5b30e7ae -> Edit routes and click on "Add route"

route-IGW

Now, associate the subnet with the route table that has a route to the IGW. Once this step is completed, this subnet is referred to as the public subnet and is ready to deploy resources accessible publicly.

Navigate to VPC -> Route tables -> rtb-0be92ee0f5b30e7ae -> Edit subnet associations and then select "subnet-public" then click on "Save Changes"

route-sub

Here is the screenshot of the route table configuration after the above steps.

rwithIGW

The public subnet has been successfully configured and is ready for deploying AWS services accessible publicly. We have also created a subnet named subnet-private, which does not have a route to the IGW. Therefore, resources created in this subnet cannot be accessed via the internet. This subnet is used for inter-cloud resource communication.

Advanced topics such as VPC peering for communicating between resources in different VPCs and Private Gateway for private communication between on-premises and AWS resources will be explained in later demos.

Next, let's explore the fundamentals of IAM and how to begin utilizing the IAM service.

IAM fundamentals

Working on this section.. It will be published soon..