top of page
hand-businesswoman-touching-hand-artificial-intelligence-meaning-technology-connection-go-

Elastic Compute Cloud (EC2) by AWS



Cloud Computing

Cloud computing is the on-demand availability of computing resources (such as storage and infrastructure), as services over the internet. It eliminates the need for individuals and businesses to self-manage physical resources themselves, and only pay for what they use.

Companies or individuals pay to access a virtual pool of shared resources, including compute, storage, and networking services, which are located on remote servers that are owned and managed by service providers. 

One of the many advantages of cloud computing is that you only pay for what you use. This allows organizations to scale faster and more efficiently without the burden of having to buy and maintain their own physical data centers and servers.


Amazon EC2

Amazon Elastic Compute Cloud (Amazon EC2) provides on-demand, scalable computing capacity in the Amazon Web Services (AWS) Cloud. Using Amazon EC2 reduces hardware costs so you can develop and deploy applications faster. You can use Amazon EC2 to launch as many or as few virtual servers as you need, configure security and networking, and manage storage. You can add capacity (scale up) to handle compute-heavy tasks, such as monthly or yearly processes, or spikes in website traffic. When usage decreases, you can reduce capacity (scale down) again.




Features provided by Amazon EC2

  • AMIs

  • Instances

  • Instance types

  • Key pairs

  • Amazon EBS volumes

  • Regions, Availability zones

  • Elastic IP addresses

  • Tags

  • VPCs, etc..





Load Balancing

Load balancing simply means to hardware or software load over web servers, that improver's the efficiency of the server as well as the application. Following is the diagrammatic representation of AWS architecture with load balancing.

Hardware load balancer is a very common network appliance used in traditional web application architectures.

AWS provides the Elastic Load Balancing service, it distributes the traffic to EC2 instances across multiple available sources, and dynamic addition and removal of Amazon EC2 hosts from the load-balancing rotation.

Elastic Load Balancing can dynamically grow and shrink the load-balancing capacity to adjust to traffic demands and also support sticky sessions to address more advanced routing needs.


Amazon Cloud-front

It is responsible for content delivery, i.e. used to deliver website. It may contain dynamic, static, and streaming content using a global network of edge locations. Requests for content at the user's end are automatically routed to the nearest edge location, which improves the performance.

Amazon Cloud-front is optimized to work with other Amazon Web Services, like Amazon S3 and Amazon EC2. It also works fine with any non-AWS origin server and stores the original files in a similar manner.

In Amazon Web Services, there are no contracts or monthly commitments. We pay only for as much or as little content as we deliver through the service.


Elastic Load Balancer

It is used to spread the traffic to web servers, which improves performance. AWS provides the Elastic Load Balancing service, in which traffic is distributed to EC2 instances over multiple available zones, and dynamic addition and removal of Amazon EC2 hosts from the load-balancing rotation.

Elastic Load Balancing can dynamically grow and shrink the load-balancing capacity as per the traffic conditions.


Security Management

Amazon’s Elastic Compute Cloud (EC2) provides a feature called security groups, which is similar to an inbound network firewall, in which we have to specify the protocols, ports, and source IP ranges that are allowed to reach your EC2 instances.

Each EC2 instance can be assigned one or more security groups, each of which routes the appropriate traffic to each instance. Security groups can be configured using specific subnets or IP addresses which limits access to EC2 instances.


Elastic Caches

Amazon Elastic Cache is a web service that manages the memory cache in the cloud. In memory management, cache has a very important role and helps to reduce the load on the services, improves the performance and scalability on the database tier by caching frequently used information.


Amazon RDS

Amazon RDS (Relational Database Service) provides a similar access as that of MySQL, Oracle, or Microsoft SQL Server database engine. The same queries, applications, and tools can be used with Amazon RDS.

It automatically patches the database software and manages backups as per the user’s instruction. It also supports point-in-time recovery. There are no up-front investments required, and we pay only for the resources we use.


Hosting RDMS on EC2 Instances

Amazon RDS allows users to install RDBMS (Relational Database Management System) of your choice like MySQL, Oracle, SQL Server, DB2, etc. on an EC2 instance and can manage as required.

Amazon EC2 uses Amazon EBS (Elastic Block Storage) similar to network-attached storage. All data and logs running on EC2 instances should be placed on Amazon EBS volumes, which will be available even if the database host fails.

Amazon EBS volumes automatically provide redundancy within the availability zone, which increases the availability of simple disks. Further if the volume is not sufficient for our databases needs, volume can be added to increase the performance for our database.

Using Amazon RDS, the service provider manages the storage and we only focus on managing the data.


Storage & Backups

AWS cloud provides various options for storing, accessing, and backing up web application data and assets. The Amazon S3 (Simple Storage Service) provides a simple web-services interface that can be used to store and retrieve any amount of data, at any time, from anywhere on the web.

Amazon S3 stores data as objects within resources called buckets. The user can store as many objects as per requirement within the bucket, and can read, write and delete objects from the bucket.

Amazon EBS is effective for data that needs to be accessed as block storage and requires persistence beyond the life of the running instance, such as database partitions and application logs.

Amazon EBS volumes can be maximized up to 1 TB, and these volumes can be striped for larger volumes and increased performance. Provisioned IOPS volumes are designed to meet the needs of database workloads that are sensitive to storage performance and consistency.

Amazon EBS currently supports up to 1,000 IOPS per volume. We can stripe multiple volumes together to deliver thousands of IOPS per instance to an application.


Auto Scaling

The difference between AWS cloud architecture and the traditional hosting model is that AWS can dynamically scale the web application fleet on demand to handle changes in traffic.

In the traditional hosting model, traffic forecasting models are generally used to provision hosts ahead of projected traffic. In AWS, instances can be provisioned on the fly according to a set of triggers for scaling the fleet out and back in. Amazon Auto Scaling can create capacity groups of servers that can grow or shrink on demand.




Creating an Amazon EC2 instance



Successfully created an Amazon EC2 instance:




Virtualization Technology

Virtualization lets one computer share its resources with separate environments, allowing easy switching between different operating systems without restarting.



Architecture

  • EC2 instance is located in an Availability Zone within a specific AWS Region.

  • It's protected by a security group acting as a virtual firewall to manage incoming and outgoing traffic.

  • A private key is stored on your local computer, while a public key is on the EC2 instance, forming a key pair to confirm your identity.

  • The EC2 instance uses an Amazon EBS volume for storage.

  • The VPC (Virtual Private Cloud) connects to the internet through an internet gateway to enable communication.



Why Amazon EC2 

  • You don’t require any hardware units

  • Easily scalable (up or down)

  • You only pay for what you use

  • You have complete control

  • Highly secure

  • You can access your assets from anywhere in the world




Scope of Amazon EC2 


USE CASES

  • Hosting environments

  • Development and test environments

  • Backup and disaster recovery

  • Banking and financial sector

  • Marketing and advertising

  • High performance computing


BENEFITS

  • Elastic Web-Scale Computing

  • Completely Controlled

  • Flexible Cloud Hosting Services

  • Integrated

  • Reliable

  • Secure



Conclusion

Automated scalability

  • Vertical and Horizontal scaling - Dynamically expanding the infrastructure based on traffic.

Variety of Instance Types

  • Optimized instances based on use case - such as compute-optimized, memory-optimized, and GPU-accelerated instances.

Wide ranged of Customization and Configuration

  • Depending on need choosing the desired operating system, instance type, storage, and network configurations.

Security and Isolation

  • Highly secured with features like VPC, security groups, and many authentication standards to help protect your EC2 instances.

Pay-as-You-Go Pricing - Cost optimization

  • This is a very important benefit from cost optimization. You only pay for the resources you have used. So the infrastructure cost can be managed depending on the usage.



References

75 views0 comments
bottom of page