- AWS is a cloud computing platform provided by Amazon. It offers a wide range of cloud services, including virtual servers (EC2), storage (S3), databases (RDS), and more.
- AWS allows you to provision and manage virtual machines (EC2 instances) in the cloud. These virtual machines are full-fledged, isolated instances with their own operating systems.
- While AWS provides virtual machines (EC2 instances), it also offers many other cloud services for various purposes, such as serverless computing (AWS Lambda), databases (Amazon DynamoDB) ad many more.
Foundational services of AWS :
Amazon Elastic Compute Cloud(Amazon EC2) , Amazon EC2 is a virtual server. When you are working with AWS including servers are virtual and the server you use to gain access to virtual servers are called EC2. Using EC2 for compute is highly flexible, cost-effective and quick than your own servers in the on-premises data center.
AWS built datacenters
AWS offers secured datacenters
AWS purchase servers for you
AWS install servers for you
AWS offers servers which are ready to use
You can use whatever capacity of AWS , you have to just request the EC2 instances of what you want and they will launch and bootup. Once done terminate the EC2 instances accordingly.
“you only pay for running instances not stopped or running instances.”
EC2 run on top of physical host instances managed by AWS. when you launch EC2 instance on AWS it shares physical resources (CPU, memory, storage, etc.) with other EC2 instances running on the same physical host. Using virtualization technology. you won’t take the entire host instead you share the host with other instances or virtual machines.
Hypervisor is responsible for sharing the underlying physical resources between virtual machines.
“This idea of sharing the underlying hardware is called MULTITENANCY”
In Amazon Web Services(AWS), scaling refers to adjusting the capacity of your resources(such as servers or instances) to accommodate changes in demand for your applications or service. AWS provides two main types of scaling:
1. Vertical scaling(Scaling Up) : involves increasing or decreasing the capacity of an individual resource. It is more like upgrading and downgrading a single server to handle increased or decreased workloads.
use : vertical scaling is typically used when you need to improve the performance of a single component of your application. Example : if your website is running on an EC2 instance and you notice that it is not working fast and becoming slow due to more traffic, you can scale up vertically by upgrading the instance by adding more CPU and RAM.
2. Horizontal scaling(Scaling out) : involves adding or removing multiple instances to or from your application’s environment to distribute the workload. It is like adding more servers to handle increased demand.
use: horizontal scaling is typically used to improve the overall capacity and redundancy(take is as a duplicate of component so if it fails there will be a backup) of your application and distribute traffic evenly. Example : if you have a web application, you can use an auto scaling group to automatically launch additional EC2 instances when traffic increases and terminate when traffic decreases.
key points to note : Vertical scaling is often limited by the maximum capacity of a single instance, while horizontal scaling can be more elastic and can handle larger workloads by adding more instances.
Each Amazon EC2 instance type is grouped under an instance family.
AMAZON EC2 INSTANCE FAMILY: general purpose, compute optimized, memory optimized , accelerated optimized, storage optimized.
> General purpose: instance provide a good balance of compute, memory and networking resources. Used for diverse workloads like web servers.
> Compute-optimized instances: instance are ideal ideal for tasks like gaming servers or high performance computing (HPC). They provide a high power of CPU power.
> Memory optimized instance: are ideal for memory-intensive task. They offer a large amount of memory(RAM) for applications that need to store and manipulate large datasets.
> Accelerated computing: are good for floating point number, calculations, graphics and data pattern matching.
> Storage optimized: they are ideal for applications that require high amount of storage capacity and high throughput. Disk throughput refers to the rate at which data can be read from or written to a storage device, typically a hard drive or solid-state drive (SSD).
About the Creator
Welcome to my world of words! I'm Afiya, a passionate writer on a quest to captivate your imagination, one sentence at a time. Together, we'll embark on a quest for knowledge, motivation, and technological wonders.
Excellent work. Looking forward to reading more!
Expert insights and opinions
Arguments were carefully researched and presented
On-point and relevant
Writing reflected the title & theme