# AWS Cloud

## **The Cloud: What is It?**

The cloud is essentially an internet based technology, where software and services are stored and run on the internet.

## What is Cloud Computing?

Cloud computing is the delivery of computing resources — including storage, processing power, databases, networking, analytics, artificial intelligence, and software applications — over the internet (the cloud). By outsourcing these resources, companies can access the computational assets they need, when they need them, without needing to purchase and maintain a physical, on-premise IT infrastructure. This provides flexible resources, faster innovation, and economies of scale. For many companies, a cloud migration is directly related to data and IT modernization.

## **Benefits of Cloud Computing**

Reduced cost: Teams that use cloud resources do not have to purchase their own hardware assets. Beyond hardware costs, cloud providers do their best to maximize and optimize hardware usage.

Increased scalability: Organizations can scale resources on demand. Cloud computing enables auto-scaling features for teams. Cloud applications can automatically shrink and grow their infrastructure resources in response to spikes of traffic.

Better performance: Cloud computing offers the latest and greatest computational resources. Users can access the newest machines with extreme, multi-core CPUs designed for heavy parallel processing tasks.

Improved execution speed: Teams that use cloud infrastructures can more rapidly execute and deliver value to their customers. Agile software teams can leverage a cloud infrastructure to rapidly spin up new virtual machines to experiment and validate unique ideas, and automate the testing and deployment phases of the pipeline.

Increased security: Private cloud hosting offers isolated firewalled infrastructure that improves security. In addition, cloud providers offer many security mechanisms and technologies to help build secure applications. User access control is an important security concern, and most cloud providers offer tools to limit granular user access.

## **What is AWS, and what are its Primary Services?**

AWS (Amazon Web Services) is a comprehensive cloud computing platform offering a wide array of services, including compute, storage, databases, analytics, and more, enabling organizations to build and scale applications efficiently

Primary Services:

Compute:Amazon EC2: Provides virtual servers in the cloud, offering flexibility and scalability. AWS Lambda: A serverless compute service that allows users to run code without managing servers.

Storage:Amazon S3: Offers object storage for storing and retrieving data. Amazon EBS: Provides block-level storage for EC2 instances.

Databases:Amazon RDS: Provides managed relational databases. , Amazon DynamoDB: A NoSQL database service.

Networking & Content Delivery:Amazon VPC: Allows users to create virtual networks in the cloud ,Amazon CloudFront: A content delivery network (CDN) that delivers content quickly to users.

Analytics:Amazon Athena: A serverless query service for analyzing data in S3 , Amazon Redshift: A data warehouse service.

Machine Learning:Amazon SageMaker: A platform for building, training, and deploying machine learning models ,Amazon Rekognition: A service for image and video analysis.

Security, Identity, & Compliance:Amazon IAM: Provides access management for AWS resources ,AWS KMS: A service for managing encryption keys.

Other Services: AWS Management Console: A web-based interface for managing AWS services. AWS CLI: A command-line interface for interacting with AWS services.

##  **Cloud computing services**

IAAS

Infrastructure as a service (IaaS) is a pay-as-you-go model that provides necessary computation, storage, and networking resources on demand.

This makes it excellent for small and medium-scale businesses searching for a low-cost IT solution to help them expand. IaaS is a completely outsourced pay-for-use service that comes in three flavors: public, private, and hybrid.

PAAS

Platform as a service (PaaS) indicates that an outside cloud service provider provides and manages the hardware and application-software platform, but the user is responsible for the programs that run on top of the platform and the data which the apps rely on.

PaaS provides customers with a shared cloud platform for application development and management (DevOps component) without the need to create and maintain the infrastructure typically involved with the process.

 **SAAS**

Software-as-a-Service (SaaS) is a cloud-based technique of delivering software to users. Instead of acquiring and installing an application, SaaS consumers subscribe to it. A SaaS application can be accessed from any Internet connected device.

The applications are hosted on cloud servers that may be located far away from the user's location. All the software and application maintenance will be taken care of by the Cloud service provider.

## **Cloud Deployment Models**

Public Cloud

Public clouds are cloud environments that are often built using IT infrastructure that does not belong to the end user. AWS, Google Cloud, IBM Cloud, and MS-Azure are some of the most popular public cloud providers. When environments are partitioned and redistributed to numerous tenants, all clouds become public clouds.

Private Cloud

Private clouds are cloud environments that are completely dedicated to a single end user or group and are often run behind that user's or group's firewall. When the underlying IT infrastructure is committed to a single client with entirely isolated access, that clouds become private clouds.

Hybrid Cloud

A hybrid cloud is a unified IT system made up of several environments linked through LANs, WANs, VPNs, and APIs. Hybrid cloud characteristics are complex, the definition criteria may vary depending on the requirement, a Hybrid Cloud can consist of

at least one public cloud & one private cloud

at least two private clouds

at least two public clouds

at least one public or private cloud connected to a bare-metal or virtual environment

##  **Characteristics of Cloud Computing**

Resource Pooling

One of the most important aspects of Cloud Computing is resource pooling.

Resource pooling refers to a cloud service provider's ability to share resources across several clients while yet providing them with a unique set of services tailored to their needs.

It's a multi-client technique that may be used for data storage, processing, and bandwidth provisioning services. The real-time resource allocation technique used by the administration does not interfere with the client's experience.

On demand Self-Service

It allows the client to keep track of the server's uptime, capabilities, and available network storage. This is a core feature of Cloud Computing, and a customer may also regulate the computing resources according to his requirements.

 Easy Maintenance

The servers are easily managed, and downtime is kept to a very minimum. Cloud Computing-based resources are updated on a regular basis to improve their capabilities and potential.

The upgrades are more device-compatible and perform faster than earlier versions.

 Scalability and Elasticity

This cloud feature makes it possible to execute workloads that demand a large number of servers but only for a short period of time at a low cost.

Multiple clients will have similar workloads, which could be performed very cost-effectively because of Cloud Computing's quick scalability.

Security

One of the finest features of Cloud Computing is data security.

To prevent data loss, cloud services make a duplicate of the Data. If one server loses data, the copied version from the other server is used to recover the data.

This functionality is useful when many people are working on the same file in real time and the file becomes corrupted.

 Automation

Cloud computing is defined by its ability to automate tasks.

Automation in cloud computing refers to the capacity of cloud computing to automate the deployment, configure, and manage cloud services. In simple words, it's the practice of maximizing technology while lowering physical labor.

 Resilience

In cloud computing, resilience refers to a service's capacity to immediately recover from a disturbance.

The speed with which a cloud's servers, databases, and network infrastructure restart and recover after being harmed or damaged is a measure of its resilience.

Also, there are no geographic restrictions or limitations when it comes to using cloud resources because cloud services can be accessed remotely.

Disaster Recovery

Cloud disaster recovery (CDR) is a managed cloud solution that enables you to immediately recover your organization's essential systems following a disaster and gives you remote access to your systems in a secure virtual environment.

When it comes to traditional disaster recovery, cloud disaster recovery has revolutionized the industry by removing the requirement for traditional infrastructure and drastically lowering downtime.
