Author: Nweibong Emmanuel Praise
Category: Cloud Computing
Case Study: Amazon Web Services – Elastic Compute Cloud (EC2)
Abstract
The increasing demand for digital services has made traditional computing infrastructure increasingly challenging for some organizations to maintain. Businesses, universities and other institutions require computing resources that can support their applications, store information and accommodate changes in user demand. Infrastructure as a Service (IaaS) provides an alternative by allowing organizations to access computing resources through cloud service providers without having to purchase and maintain all the physical equipment themselves.
This article examines Infrastructure as a Service, focusing on Amazon Web Services (AWS) Elastic Compute Cloud (EC2) as a case study. It investigates the architecture, operation, major components, benefits and limitations of EC2. It also examines how the service could be applied in hosting a university student management portal.
- Introduction
Computing infrastructure plays an important role in the operation of modern organizations. Almost every institution that provides digital services depends on servers, storage systems, networking equipment and software platforms.
In the past, organizations generally had to acquire their own physical servers and establish server rooms or data centres before deploying applications. Apart from the initial cost of purchasing equipment, they also had to consider electricity, cooling, maintenance, security and the availability of qualified technical personnel.
These requirements can become difficult to manage, especially for small organizations and institutions with limited financial resources.
Cloud computing has introduced a different approach to managing these resources. Instead of purchasing all the required hardware, organizations can obtain computing resources from providers over the internet.
One of the service models responsible for this development is Infrastructure as a Service (IaaS). It provides access to virtual computing infrastructure while allowing customers to manage their operating systems, applications and other configurations.
To understand how this model works in a practical environment, this research uses Amazon EC2 as a case study.
- Understanding Infrastructure as a Service (IaaS)
Infrastructure as a Service is a cloud computing service model in which a provider makes computing resources available to customers over the internet.
These resources typically include:
- Virtual machines and processing power.
- Storage systems.
- Networking infrastructure.
- IP addresses and network configurations.
- Virtualized computing environments.
The major idea behind IaaS is that organizations can use computing infrastructure without necessarily owning the physical hardware.
For instance, consider a university that wants to develop an online platform for managing student records. Rather than purchasing a physical server, the university can rent a virtual server from an IaaS provider and install the necessary software.
The university manages the operating system, application and database configurations, while the provider manages the underlying physical infrastructure.
According to the National Institute of Standards and Technology (NIST), cloud computing provides convenient, on-demand network access to a shared pool of configurable computing resources that can be rapidly provisioned and released with minimal management effort.
This definition helps explain why IaaS has become an important approach to delivering computing infrastructure.
- Technical Operation of IaaS
IaaS relies heavily on virtualization and resource management technologies.
Virtualization allows a physical server to provide multiple independent virtual computing environments. Each virtual machine receives allocated resources such as processor capacity, memory and storage.
A customer can configure these resources based on the requirements of the application being deployed.
The general operation involves the following stages:
Resource provisioning: The customer requests computing resources through the provider's management interface.
Virtual machine creation: The provider allocates resources and creates a virtual server using a selected machine image.
Configuration: The customer installs and configures the operating system, applications and other required software.
Deployment: The application is uploaded and made accessible through the network.
Monitoring and scaling: Resource usage is monitored, and additional capacity can be provisioned when necessary.
This arrangement gives customers control over their computing environments without requiring them to manage the physical servers.
- Case Study: Amazon Web Services (AWS) Elastic Compute Cloud
Amazon Web Services is a cloud computing platform that provides infrastructure and other computing services to individuals and organizations.
One of its major infrastructure services is Amazon Elastic Compute Cloud (EC2).
Amazon EC2 provides on-demand computing capacity through virtual servers known as instances. These instances can be configured to run different operating systems and applications depending on the customer's requirements.
An organization can launch an instance, connect to it remotely, install its software and use it to host services.
4.1 Major Components of Amazon EC2
To understand EC2 as an IaaS solution, it is important to examine some of its major components.
a. EC2 Instances
An instance is a virtual server running within AWS infrastructure. Different instance types provide different combinations of processing power, memory, storage and networking capacity.
For example, a small web application may require fewer computing resources than a large enterprise application.
b. Amazon Machine Images (AMIs)
An Amazon Machine Image is a template used to launch EC2 instances. It contains information required to configure the instance, including an operating system and potentially preinstalled software.
This makes it easier to create servers without manually installing everything from the beginning.
c. Amazon Elastic Block Store (EBS)
EBS provides persistent block storage that can be attached to EC2 instances. It is useful for storing operating system files, application data and other information that must remain available beyond the lifetime of an individual instance session.
d. Security Groups
Security groups function as virtual firewalls for EC2 instances. They control incoming and outgoing network traffic through configured rules.
For example, an administrator can allow web traffic through HTTP and HTTPS while restricting remote administrative access to approved IP addresses.
e. Regions and Availability Zones
AWS organizes its infrastructure into geographical Regions and Availability Zones.
Regions represent separate geographical areas, while Availability Zones are isolated locations within a Region.
Deploying application resources across multiple Availability Zones can help reduce the effect of an individual location failure.
These components demonstrate that EC2 provides more than just a virtual computer. It provides a configurable infrastructure environment for deploying and managing applications.
- Practical Application: Hosting a University Student Management System
To examine the practical usefulness of IaaS, consider a university that wants to deploy a student management system.
The proposed system will allow students to:
- Log in to their personal accounts.
- Register for courses.
- Check examination results.
- Download learning materials.
- Receive announcements.
- View academic information.
Lecturers will also be able to manage courses, record attendance and upload students' grades.
The university needs a server capable of running the application and handling requests from different users.
Proposed AWS EC2 Implementation
Stage 1: Provisioning the server
The university creates an AWS account and launches an EC2 instance.
Ubuntu Linux can be selected as the operating system because it supports the software technologies required by the application.
Stage 2: Installing the application environment
The administrator installs the necessary technologies, such as:
- Python programming language.
- Django web framework.
- Nginx web server.
- PostgreSQL database system.
Stage 3: Deploying the application
The student management system is uploaded to the EC2 instance and configured to run as a web application.
Stage 4: Configuring network access
The administrator configures the instance's security group to permit the required web traffic.
Administrative access, such as SSH, should be restricted to authorized IP addresses rather than exposed unnecessarily.
Stage 5: Connecting the database
The application is connected to a database where student records, courses, examination results and other academic information are stored.
For a more reliable production environment, the database can be hosted separately using a managed database service.
Stage 6: Monitoring performance
The university monitors the server's resource consumption and application performance.
If the number of users increases significantly during course registration or examination periods, additional computing capacity can be introduced.
This example demonstrates how an educational institution can use IaaS to deploy a real application without purchasing its own physical server infrastructure.
- Proposed System Architecture
The following architecture illustrates how the student management system could be deployed using AWS EC2.
STUDENTS / LECTURERS
|
|
INTERNET
|
|
AWS CLOUD
|
|
EC2 INSTANCE
|
NGINX SERVER
|
|
DJANGO APPLICATION
|
|
DATABASE SERVER
|
|
ACADEMIC RECORDS
The architecture separates the different responsibilities of the system.
- Users interact with the application through their web browsers.
- AWS provides the cloud infrastructure.
- EC2 provides the virtual computing environment.
- Nginx handles incoming web requests.
- Django processes application requests and business logic.
- The database stores and retrieves academic information.
This is a proposed deployment architecture, not a report of an actual university system already running on AWS.
- Analysis of the Benefits of IaaS
The use of IaaS offers several advantages when compared with traditional infrastructure management.
7.1 Reduced Initial Investment
Organizations do not necessarily need to purchase expensive physical servers before deploying applications.
Instead, they can obtain computing resources and pay according to the selected pricing arrangement.
7.2 Resource Scalability
One major advantage of EC2 is the ability to change computing capacity when application requirements change.
A university may initially use a small server but increase its capacity when more students begin accessing the portal.
AWS also provides Auto Scaling to help automatically adjust the number of instances based on configured conditions.
7.3 Greater Flexibility
Customers can select operating systems, instance types, storage configurations and networking arrangements according to their requirements.
This is particularly useful for developers who need different environments for testing and production.
7.4 Faster Deployment
Creating a virtual server can be faster than acquiring and installing physical hardware.
This allows organizations to develop and deploy applications without waiting for physical infrastructure procurement.
7.5 Geographical Availability
AWS provides infrastructure across different geographical Regions and Availability Zones.
Organizations can select suitable deployment locations and design systems that distribute resources across multiple locations.
- Limitations and Challenges of IaaS
Although IaaS provides important advantages, it is not without limitations.
8.1 Security Responsibilities
Using a cloud provider does not mean that the customer has no security responsibilities.
AWS protects the underlying physical infrastructure, but customers remain responsible for securing their operating systems, applications, access permissions and data.
This is known as the shared responsibility model.
8.2 Dependence on Internet Connectivity
Applications hosted in the cloud generally require internet connectivity to be accessed remotely.
In areas where connectivity is unreliable, users may experience difficulties accessing cloud-hosted applications.
This is an important consideration for organizations operating in regions where internet infrastructure is still developing.
8.3 Cost Management
Although IaaS can reduce initial infrastructure investment, operating costs can increase if resources are not properly managed.
Running unnecessary instances, storing unused data and transferring large volumes of information may result in additional charges.
Organizations therefore need to monitor their resource consumption.
8.4 Technical Expertise
Managing an IaaS environment requires knowledge of operating systems, networking, server administration and security.
An organization without qualified technical personnel may find it difficult to configure and maintain its infrastructure properly.
8.5 Service Availability
Cloud providers design their infrastructure for availability, but service interruptions can still occur.
Organizations should therefore consider backup arrangements, monitoring and recovery strategies when deploying important applications.
- Security and Management Considerations
Security is an important part of any IaaS deployment, particularly when applications contain sensitive information such as student records.
For an EC2-based student management system, the following measures should be considered:
- Use strong authentication and protect administrative credentials.
- Restrict SSH access to authorized users.
- Configure security groups to allow only necessary network traffic.
- Regularly update the operating system and installed software.
- Implement appropriate database access controls.
- Encrypt sensitive information where necessary.
- Maintain regular backups.
- Monitor system activities and resource usage.
These measures help reduce the risk of unauthorized access, data loss and service disruption.
- Comparison of IaaS, PaaS and SaaS
Cloud computing is commonly divided into three service models: IaaS, PaaS and SaaS.
Feature| IaaS| PaaS| SaaS
Full meaning| Infrastructure as a Service| Platform as a Service| Software as a Service
Main provision| Computing infrastructure| Application development platform| Ready-to-use software
User control| High| Moderate| Limited
User manages| OS, applications and data| Applications and data| Mainly usage and data
Example| Amazon EC2| Google App Engine| Gmail
The main difference between these models is the level of management and control given to the customer.
IaaS provides greater control over the underlying computing environment, while PaaS reduces infrastructure management responsibilities for developers. SaaS provides complete applications that users can access without managing the underlying infrastructure.
- Other Providers of Infrastructure as a Service
Amazon EC2 is not the only available IaaS solution. Other major providers include:
Microsoft Azure Virtual Machines: Provides configurable virtual machines for running applications and operating systems.
Google Cloud Compute Engine: Offers virtual machines and computing resources through Google Cloud.
Oracle Cloud Infrastructure: Provides computing, storage and networking resources for different workloads.
DigitalOcean Droplets: Provides virtual private servers commonly used by developers and small businesses.
Although these providers offer similar infrastructure capabilities, their pricing structures, available resources and management tools differ.
- Conclusion
Infrastructure as a Service has changed how organizations acquire and manage computing resources. Rather than depending entirely on physical infrastructure, organizations can obtain virtual servers, storage and networking resources from cloud providers.
The examination of Amazon EC2 shows how IaaS can be used to create flexible computing environments for hosting applications. The proposed university student management system demonstrates how an institution can deploy its services, manage academic information and adjust computing resources according to user demand.
However, adopting IaaS requires careful consideration of security, internet connectivity, technical expertise and operational costs.
In conclusion, IaaS is a valuable approach to modern infrastructure management. Its usefulness depends not only on the capabilities of the cloud provider but also on how effectively the organization plans, configures and manages the resources it uses.
References
Mell, P., & Grance, T. (2011). The NIST Definition of Cloud Computing. National Institute of Standards and Technology, Special Publication 800-145.
https://csrc.nist.gov/pubs/sp/800/145/finalAmazon Web Services. What is Amazon EC2? Amazon EC2 User Guide.
https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Amazon Web Services. Amazon EC2 Documentation.
https://aws.amazon.com/documentation-overview/ec2/Amazon Web Services. Security in Amazon EC2.
https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-security.htmlAmazon Web Services. Shared Responsibility Model.
https://aws.amazon.com/compliance/shared-responsibility-model/Amazon Web Services. Amazon EC2 Auto Scaling.
https://docs.aws.amazon.com/autoscaling/ec2/userguide/what-is-amazon-ec2-auto-scaling.html
Top comments (0)