Module 1 AWS Fundamentals
Module 1 AWS Fundamentals
www.staragile.com
13 Practical 60 5 2
www.staragile.com
AWS Fundamentals
1. Understanding of Physical and Virtual Servers
Information
Overview of Servers
● Servers are computer systems or software applications
that provide services or resources to other devices or
applications on a network.
● They are designed to handle specific tasks and provide
functionalities such as data storage, processing,
communication, and hosting services.
1. File Servers:
● These servers store and manage files and allow
clients to access and share files over a network.
● They typically use file transfer protocols like FTP or
SMB.
2. Web Servers:
● Web servers host websites and deliver web pages to
clients over the internet.
● They process HTTP requests and serve HTML, CSS,
and other web-related files.
● Popular web server software includes Apache HTTP
Server, Nginx, and Microsoft IIS.
www.staragile.com
3. Database Servers:
● Database servers manage and store data in structured
formats, allowing clients to perform operations such
as data retrieval, storage, and manipulation.
● Examples include MySQL, Oracle Database, and
Microsoft SQL Server.
4. Application Servers:
● Application servers provide an environment for
hosting and running applications.
● They handle application-related tasks such as session
management, transaction processing, and business
logic execution.
● Examples include Apache Tomcat, JBoss, and IBM
WebSphere.
5. Mail Servers:
● Mail servers handle email communication, managing
email storage, sending, and receiving messages.
● They use protocols like SMTP, POP, and IMAP for
email transmission and retrieval.
● Examples include Microsoft Exchange Server and
Postfix.
6. DNS Servers:
www.staragile.com
● DNS (Domain Name System) servers translate domain
names into IP addresses and vice versa.
● They resolve domain names and help route internet
traffic.
● Examples include BIND, Microsoft DNS Server, and
Google Cloud DNS.
7. Proxy Servers:
● Proxy servers act as intermediaries between clients
and other servers.
● They cache content, enhance security, and provide
network efficiency by handling client requests on
behalf of the original server.
8. Print Servers:
● Print servers manage printing tasks on a network,
allowing users to send print jobs to network printers
and manage print queues.
www.staragile.com
Use of servers :
● Servers have a wide range of uses and play a crucial
role in various domains.
1. Website Hosting:
● Servers are used to host websites and web
applications.
● Web servers like Apache HTTP Server or Nginx
handle incoming HTTP requests, serve web pages,
and deliver content to clients over the internet.
2. Database Management:
● Servers dedicated to database management store and
manage data for applications.
● Database servers like MySQL, Oracle, or Microsoft SQL
Server handle data storage, retrieval, and
manipulation, ensuring data integrity and availability.
3. Application Hosting:
● Application servers provide an environment for
hosting and running applications.
● They handle tasks such as session management,
transaction processing, and business logic execution.
● Application servers like Apache Tomcat or JBoss are
used for hosting Java-based applications.
www.staragile.com
4. Email Communication:
● Mail servers handle email communication, managing
email storage, sending, and receiving messages.
● They use protocols like SMTP, POP, and IMAP to
transmit and retrieve emails.
● Servers like Microsoft Exchange Server or Postfix are
used for managing email systems.
www.staragile.com
● Virtualization servers host multiple virtual machines,
allowing efficient resource allocation and flexibility.
● Cloud servers provide on-demand computing
resources and services through cloud platforms like
AWS, Azure, or Google Cloud.
8. Network Services:
● Servers provide various network services such as DNS
(Domain Name System), DHCP (Dynamic Host
Configuration Protocol), VPN (Virtual Private
Network), and proxy services.
● These servers enhance network connectivity, security,
and performance.
www.staragile.com
● These are just a few examples of the diverse uses of
servers.
● Servers form the backbone of modern technology
infrastructure, supporting various applications,
services, and communication across networks.
www.staragile.com
● Scaling up physical servers typically involves adding
more physical hardware, which can be a
time-consuming and costly process.
4. Higher upfront costs:
● Physical servers require purchasing the hardware
upfront, along with associated infrastructure costs.
2. Virtual Servers:
● Virtual servers, on the other hand, are software-based
instances that run on a physical server but behave as
separate and independent servers.
● Multiple virtual servers can coexist on a single
physical server, each running its own operating
system, applications, and services.
● This concept is known as server virtualization.
www.staragile.com
2. Cost-effective:
● Virtualization allows better utilization of physical
resources, reducing hardware costs and energy
consumption.
● It also enables more efficient management and
consolidation of servers.
www.staragile.com
2. Overview of Public/Private cloud Computing
Information
1. On-Demand Self-Service:
● Users can provision computing resources, such as
virtual machines, storage, or applications, as needed
without requiring human interaction with the service
provider.
www.staragile.com
● Cloud services are accessible over the internet using
various devices, such as desktop computers, laptops,
smartphones, or tablets.
● Users can access their applications and data from
anywhere with an internet connection.
3. Resource Pooling:
● Computing resources in the cloud are pooled together
and shared among multiple users or organizations.
● The cloud provider dynamically allocates and
reallocates resources based on demand, optimizing
resource utilization.
4. Rapid Elasticity:
● Cloud resources can be rapidly scaled up or down
based on demand.
● Users can easily increase or decrease their resource
allocation, enabling flexibility and cost efficiency.
5. Measured Service:
● Cloud usage is monitored, controlled, and billed based
on the resources consumed.
● Users only pay for the resources they use, typically
following a pay-per-use model.
www.staragile.com
Public and private cloud computing are two deployment
models for delivering cloud services.
1. Public Cloud Computing:
www.staragile.com
2. Scalability:
● Public clouds offer elastic scalability, enabling users to
quickly scale up or down their resource usage based
on demand.
● Users can access additional resources as needed,
paying for what they use.
3. Shared Infrastructure:
● Public clouds share computing resources, storage, and
networking infrastructure among multiple users.
● This enables cost savings through resource pooling
and economies of scale.
4. Pay-per-Use Model:
● Public cloud services typically follow a pay-per-use
pricing model.
● Users pay for the resources and services they
consume, usually based on factors like storage,
compute power, network traffic, or the number of
users.
5. Managed Services:
● Public cloud providers offer a wide range of managed
services, including virtual machines, storage,
databases, networking, analytics, and more.
www.staragile.com
● Users can leverage these services without having to
worry about managing the underlying infrastructure.
www.staragile.com
● It can be hosted on-premises or by a third-party
service provider.
● Key characteristics of private cloud computing
include:
1. Dedicated Infrastructure:
● Private clouds are built on dedicated infrastructure,
providing exclusive access and control to a single
organization.
● This allows organizations to have more control over
their data, security, and performance.
2. Customization:
● Private clouds can be customized and tailored to meet
specific organizational needs.
● They can be designed to align with specific
compliance requirements, security policies, and
performance standards.
www.staragile.com
● Private clouds offer enhanced security and privacy
compared to public clouds.
● Organizations have greater control over access
controls, data protection, and compliance measures.
www.staragile.com
● In addition to public and private cloud models, there
is also a hybrid cloud model that combines elements
of both.
● Hybrid cloud computing involves integrating public
and private cloud environments to create a unified
infrastructure.
● This allows organizations to leverage the benefits of
both models, such as utilizing public clouds for
scalability and cost-efficiency while maintaining
sensitive data and critical workloads in private clouds.
www.staragile.com
● AWS is one of the largest and most comprehensive
cloud platforms, offering a wide array of cloud
services.
● It provides infrastructure services (compute, storage,
networking), database services, AI and machine
learning tools, analytics, serverless computing, and
more.
2. Microsoft Azure:
● Azure is Microsoft's cloud platform, providing a
robust set of cloud services for computing, storage,
networking, and analytics.
● It offers services for building, deploying, and
managing applications, as well as AI and machine
learning capabilities, IoT solutions, and integration
with Microsoft's other products and services.
4. IBM Cloud:
www.staragile.com
● IBM Cloud is a comprehensive cloud platform offering
a wide range of services, including compute, storage,
AI, blockchain, IoT, analytics, and more.
● It provides tools and resources for developing,
deploying, and managing applications on the cloud.
6. Alibaba Cloud:
● Alibaba Cloud is a leading cloud provider in China and
offers a diverse range of cloud services, including
computing, storage, databases, networking, security,
and AI.
● It provides a comprehensive set of tools for
businesses operating in China or seeking a global
presence.
7. DigitalOcean:
● DigitalOcean is a cloud platform focused on simplicity
and developer-friendly features.
www.staragile.com
● It offers scalable compute resources, managed
databases, object storage, networking, and developer
tools.
2. Accessibility:
www.staragile.com
● Public clouds are accessible to anyone with an
internet connection, and resources can be
provisioned on-demand.
3. Infrastructure Sharing:
● Public cloud resources are shared among multiple
users, enabling cost savings and resource
optimization through economies of scale.
4. Scalability:
● Public clouds offer elastic scalability, allowing users to
scale resources up or down based on demand. Users
can easily access additional resources when needed.
5. Cost Model:
● Public clouds typically follow a pay-per-use model,
where users pay only for the resources they consume,
allowing for cost optimization.
6. Managed Services:
● Public cloud providers offer a wide range of managed
services, taking care of infrastructure management,
security, and updates.
● Users can leverage these services without worrying
about underlying infrastructure management.
www.staragile.com
● Examples: Amazon Web Services (AWS), Microsoft
Azure, Google Cloud Platform (GCP), and IBM Cloud.
1. Ownership:
● Private cloud infrastructure is owned and operated by
a single organization, either on-premises or by a
third-party service provider exclusively dedicated to
that organization.
2. Accessibility:
● Private clouds are accessible only to authorized users
within the organization's network or through a secure
connection.
3. Infrastructure Control:
● Private clouds offer greater control and customization
options, allowing organizations to tailor the
infrastructure to their specific needs and compliance
requirements.
www.staragile.com
● Organizations have more control over data protection
and compliance measures.
5. Scalability:
● Private clouds offer scalability and resource allocation
flexibility similar to public clouds, allowing
organizations to scale resources based on demand.
6. Cost Model:
● Private clouds involve higher upfront costs compared
to public clouds, as organizations need to invest in
infrastructure and maintenance.
● However, they can provide long-term cost savings for
organizations with predictable workloads.
www.staragile.com
● In some cases, organizations may adopt a hybrid
cloud approach, combining elements of both public
and private clouds to meet their specific
requirements.
3. Overview of AWS/Azure/GCP
Information
www.staragile.com
● Key services include Amazon EC2 (Elastic Compute
Cloud) for scalable virtual servers, Amazon S3
(Simple Storage Service) for object storage, Amazon
RDS (Relational Database Service) for managed
databases, and AWS Lambda for serverless
computing.
● AWS also offers additional tools and services for
management, monitoring, security, and deployment,
such as AWS CloudFormation, AWS Identity and
Access Management (IAM), and AWS CloudWatch.
● It has a global infrastructure with multiple availability
zones, enabling high availability, fault tolerance, and
low-latency services worldwide.
● AWS provides extensive documentation, training
resources, and a vibrant community to support users.
2. Azure (Microsoft Azure):
● Azure is a comprehensive cloud platform by
Microsoft, offering a wide range of cloud services and
capabilities.
● It provides services for computing, storage, databases,
networking, AI and machine learning, analytics, IoT,
and more.
● Key services include Azure Virtual Machines for
scalable compute resources, Azure Storage for various
storage options, Azure SQL Database for managed
databases, and Azure Functions for serverless
computing.
● Azure integrates well with Microsoft's other products
and services, such as Windows Server, Active
www.staragile.com
Directory, and Office 365, offering a seamless hybrid
cloud environment.
● It provides tools for management, monitoring,
security, and deployment, including Azure Resource
Manager, Azure Active Directory, and Azure Monitor.
● Azure has a global presence with multiple data
centers and offers services for developers, IT
professionals, and businesses across different
industries.
● Microsoft provides extensive documentation, learning
resources, certifications, and support options for
Azure users.
3. GCP (Google Cloud Platform):
● GCP is a cloud platform offered by Google, providing a
suite of cloud services and tools for computing,
storage, databases, networking, AI and machine
learning, analytics, and more.
● It offers services like Google Compute Engine for
virtual machines, Google Cloud Storage for object
storage, Google Cloud SQL for managed databases,
and Google Cloud Functions for serverless computing.
● GCP provides advanced AI and machine learning
capabilities, including Google Cloud AI Platform,
TensorFlow, and BigQuery for data analytics.
● It emphasizes simplicity, scalability, and flexibility,
with a focus on modern cloud-native technologies and
open-source compatibility.
● GCP has a global network of data centers, ensuring
low-latency services and high availability worldwide.
www.staragile.com
● Google provides comprehensive documentation,
training resources, and support options for GCP users.
www.staragile.com
● Fill in the required details such as your name,
company (optional), and a strong password for your
AWS account.
● Then click on the "Create Account" button.
5. Contact Information:
● Provide your contact information including your
address and phone number.
● Click on the "Continue" button.
6. Payment Information:
● Enter your credit card information.
● AWS requires valid payment details for verification
purposes and to charge for any services you use
beyond the free tier limits.
● Note that some services may have free tiers or trial
periods available.
7. Phone Verification:
● AWS may require phone verification for account
creation.
● Choose whether you want to verify via a phone call or
SMS, and follow the instructions for verification.
8. Accept AWS Agreement:
● Review the AWS Customer Agreement and click on
the "Create Account and Continue" button.
9. Choose Support Plan:
● Select the support plan that best fits your needs,
whether it's the free Basic plan or a paid support plan.
● Click on the "Continue" button.
10. Confirmation:
www.staragile.com
● AWS will send a verification code to your email
address.
● Enter the code and click on the "Verify code and
continue" button.
www.staragile.com
● Be prepared to provide any necessary details or
complete any required verifications to complete the
account creation process.
Information
www.staragile.com
Cloud computing offers numerous benefits to
organizations of all sizes and industries.
2. Cost Efficiency:
● Cloud computing eliminates the need for upfront
investments in hardware, infrastructure, and
maintenance costs.
● Instead, organizations pay for the resources they
use on a pay-as-you-go basis. This cost model
reduces capital expenditure and allows for better
budget management.
www.staragile.com
4. Global Accessibility:
● Cloud services can be accessed from anywhere with
an internet connection.
● This enables remote work, collaboration among
distributed teams, and access to applications and
data from various devices, providing flexibility and
enhancing productivity.
5. Improved Security:
● Cloud providers invest heavily in robust security
measures to protect customer data.
● They implement encryption, access controls,
firewalls, and other security features to safeguard
data and infrastructure.
● Cloud platforms also offer backup and disaster
recovery capabilities, reducing the risk of data loss.
www.staragile.com
patterns without impacting performance or user
experience.
9. Environmentally Friendly:
● Cloud computing promotes energy efficiency and
sustainability.
● By sharing computing resources among multiple
users and optimizing resource utilization, cloud
providers can achieve higher energy efficiency
compared to traditional on-premises infrastructure.
www.staragile.com
● These benefits of cloud computing make it an
attractive choice for businesses looking to enhance
agility, reduce costs, improve scalability, and focus
on core competencies rather than IT infrastructure
management.
● However, it's important for organizations to
consider their specific requirements, data
sensitivity, compliance regulations, and
performance needs when evaluating cloud
solutions.
Information
1. Pricing Models:
● Cloud service providers typically offer different
pricing models, such as pay-as-you-go, reserved
instances, spot instances, or subscription-based
plans.
● It's important to understand the pricing model for
each service and how costs are calculated based on
www.staragile.com
factors like usage, storage, data transfer, compute
resources, and additional features.
2. Cost Estimation:
● Cloud providers often provide cost calculators or
pricing tools to estimate the potential costs of using
their services.
● These tools can help organizations understand the
pricing structure, compare different service
configurations, and estimate their monthly or
annual expenses.
3. Free Tier:
● Many cloud providers offer a free tier or trial
period, allowing users to access a limited set of
services or resources without incurring costs.
● This enables organizations to explore and
experiment with cloud services before committing
to paid usage.
www.staragile.com
5. Data Transfer and Bandwidth:
● Cloud providers may charge for data transfer
between different regions, availability zones, or
over the internet.
● Bandwidth usage, particularly for outgoing network
traffic, may also be subject to additional charges
beyond certain limits.
● It's essential to be aware of data transfer costs,
especially for applications with high data transfer
requirements.
www.staragile.com
● Cloud providers offer options like reserved
instances or savings plans that provide discounts
for committing to longer-term usage or predictable
workloads.
● These options can provide cost savings for
organizations with consistent resource
requirements.
www.staragile.com
management tools can help in optimizing cloud
costs and ensuring compliance with the provider's
policies.
Pricing Models :
1. Pay-As-You-Go:
● This is a popular pricing model where customers
pay for the actual resources and services they use.
● Prices are typically based on usage metrics such as
compute hours, storage space, network traffic, or
API calls.
● Customers are billed on a periodic basis (hourly,
monthly, etc.) for their usage, allowing for flexibility
and cost control.
www.staragile.com
● This model provides cost savings in exchange for
the longer commitment.
4. Subscription-based:
● Some cloud services, particularly Software as a
Service (SaaS) offerings, follow a
subscription-based pricing model.
● Customers pay a fixed recurring fee, usually on a
monthly or annual basis, to access and use the
service.
● The fee typically covers all necessary resources and
ongoing support.
www.staragile.com
6. Storage Tiers:
● Cloud storage services often provide multiple
storage tiers with different performance
characteristics and costs.
● Customers can choose the appropriate storage tier
based on their data access patterns and
requirements. Higher-performance tiers generally
come at higher costs.
www.staragile.com
6. Overview of IAM services
Information
www.staragile.com
● It enables you to create and manage users, groups,
and roles, defining their permissions and access
policies.
● IAM provides fine-grained control over access to
AWS resources, allowing you to grant or deny
permissions at a granular level.
● It supports multi-factor authentication (MFA) and
integration with AWS services for additional
security measures.
● IAM also offers features like identity federation,
allowing you to enable single sign-on (SSO) with
external identity providers.
● It integrates with other AWS services, such as AWS
S3, EC2, and RDS, to enforce access control and
permissions for those services.
www.staragile.com
● Azure AD integrates with Azure services, such as
Azure Virtual Machines, Azure SQL Database, and
Azure Storage, to control access and permissions.
● It also provides integration options for extending
identity management to on-premises environments
and external applications.
www.staragile.com
● IAM services in cloud platforms provide a
centralized and secure way to manage user access,
enforce access controls, and protect resources.
● They help organizations maintain data security,
meet compliance requirements, and minimize the
risk of unauthorized access.
● It's important to understand the specific features
and capabilities of the IAM services offered by the
cloud provider you are using and configure them
according to your organization's security policies
and requirements.
7. Overview of EC2 Services
Information
www.staragile.com
● EC2 offers a wide selection of pre-configured Amazon
Machine Images (AMIs) that serve as the base operating
system for instances. Users can also create custom AMIs
or import their own.
2. Instance Types:
● EC2 provides a range of instance types optimized for
different workloads, such as general-purpose,
memory-optimized, compute-optimized,
storage-optimized, and GPU instances.
● Each instance type is designed to deliver specific
performance characteristics and is available in various
sizes with different combinations of CPU, memory,
storage, and networking capacity.
3. Elasticity and Scalability:
● EC2 offers elastic scalability, allowing users to scale
their instances up or down based on demand. Instances
can be easily launched, terminated, or modified to
accommodate changing workloads.
● Users can configure auto-scaling groups that
automatically adjust the number of instances based on
predefined scaling policies, ensuring applications can
handle varying traffic loads efficiently.
www.staragile.com
● Users can control inbound and outbound traffic to their
instances using security groups, which act as virtual
firewalls and allow for fine-grained access control.
● Additional networking features, such as Elastic IP
addresses, Load Balancers, and Virtual Private Network
(VPN) connectivity, provide enhanced network
capabilities and connectivity options.
5. Storage Options:
● EC2 offers various storage options, including Amazon
EBS (Elastic Block Store) for persistent block storage,
Amazon S3 (Simple Storage Service) for object storage,
and instance store volumes for temporary data storage.
● Users can attach EBS volumes to their instances as
additional storage, and these volumes can be
dynamically resized and backed up.
● EC2 instances can also leverage Amazon S3 for storing
and retrieving data, providing durability, scalability, and
cost-effective storage.
www.staragile.com
logging, and AWS Identity and Access Management
(IAM) for access control.
● EC2 provides a highly flexible and scalable
infrastructure for running applications in the cloud. It
offers a wide range of instance types, storage options,
and networking capabilities to meet diverse workload
requirements. With its elasticity, security features, and
integration with other AWS services, EC2 enables users
to build scalable and resilient applications in the cloud.
www.staragile.com
● Open a terminal or command prompt on your local
machine and use the SSH command along with the
appropriate key pair file (e.g., .pem) to connect to the
instance:
www.staragile.com
● Provide the appropriate username and password
configured for the instance.
3. Session Manager (AWS Systems Manager):
www.staragile.com
appropriate security groups, using strong passwords
or SSH keys, and implementing multi-factor
authentication where applicable.
www.staragile.com
Aurora (which is a MySQL and
PostgreSQL-compatible database engine).
● RDS takes care of the administrative tasks involved
in managing databases, such as infrastructure
provisioning, database setup, patching, backups,
and automated software updates.
● This allows users to focus on their applications and
data rather than database maintenance.
2. Scalability and High Availability:
● RDS allows users to easily scale their databases up
or down to accommodate changing workloads.
● It provides options for vertical scaling (changing
the instance size) and horizontal scaling
(replicating databases or using read replicas for
read-heavy workloads).
● RDS supports Multi-AZ deployments, which
automatically replicate data to a standby instance
in a different Availability Zone (AZ) for high
availability and fault tolerance.
● In the event of a primary instance failure, RDS
automatically fails over to the standby instance to
minimize downtime.
3. Performance and Monitoring:
● RDS provides performance monitoring metrics and
automated alarms through Amazon CloudWatch.
● Users can monitor database metrics such as CPU
utilization, memory usage, disk I/O, and database
www.staragile.com
connections to identify performance bottlenecks
and optimize database performance.
● RDS supports automated backups, allowing users to
schedule regular backups of their databases.
● It also provides the option to enable point-in-time
recovery (PITR) to restore databases to a specific
point in time within the retention period.
4. Security and Compliance:
● RDS integrates with AWS Identity and Access
Management (IAM) for fine-grained access control,
allowing users to manage database access at the
user and group level.
● RDS supports encryption at rest using AWS Key
Management Service (KMS) for enhanced data
security. It also provides options for SSL/TLS
encryption for secure data transmission.
● RDS is compliant with various industry standards
and regulations, including PCI DSS, HIPAA, ISO, and
SOC, making it suitable for applications with strict
security and compliance requirements.
5. Automated Database Patching and Upgrades:
● RDS handles automated patching and software
upgrades for supported database engines.
● This ensures that databases are up to date with the
latest security patches and feature enhancements
without user intervention.
6. Database Engine Flexibility:
www.staragile.com
● RDS offers flexibility in terms of database engine
selection.
● Users can choose the most suitable database engine
for their applications, such as MySQL, PostgreSQL,
Oracle, SQL Server, or Amazon Aurora, and take
advantage of the specific features and capabilities
of each engine.
● RDS simplifies the management of relational
databases by handling routine administrative tasks,
providing scalability, high availability, and security
features.
● It enables users to focus on their applications while
relying on AWS to manage the underlying
infrastructure and database operations efficiently.
Creation of instances :
● To create instances (also known as virtual
machines) on cloud platforms like AWS, Azure, and
GCP, you can follow these general steps:
1. AWS EC2 (Elastic Compute Cloud):
● Log in to the AWS Management Console.
● Go to the EC2 service dashboard.
● Click on "Launch Instance" to start the instance
creation process.
www.staragile.com
● Choose an Amazon Machine Image (AMI) as the
base image for your instance.
● Select the instance type based on your
requirements for CPU, memory, storage, and
networking.
● Configure instance details, such as the number of
instances, networking options, and storage
volumes.
● Set up security groups and define
inbound/outbound traffic rules.
● Optionally, configure additional advanced options
like user data, tags, and monitoring.
● Review the instance configuration and click on
"Launch" to create the instance.
● Select an existing key pair or create a new one to
securely connect to the instance.
● Once launched, the instance will start running, and
you can access it using SSH or remote desktop,
depending on the operating system.
www.staragile.com
● Configure networking options, such as virtual
networks, subnets, and public IP addresses.
● Set up storage options, including disk types, disk
size, and storage accounts.
● Configure management settings like monitoring,
boot diagnostics, and availability options.
● Define security settings like access control, network
security groups, and inbound/outbound rules.
● Review the configuration summary and click on
"Create" to provision the virtual machine.
● Once created, you can connect to the virtual
machine using SSH or remote desktop, depending
on the operating system.
● Google Cloud Compute Engine:
● Log in to the Google Cloud Console.
● Go to the Compute Engine section.
● Click on "Create Instance" to initiate the instance
creation process.
● Choose a base image from the available operating
system options.
● Configure the machine type based on the desired
CPU, memory, and storage resources.
● Set up networking options, including virtual
networks, subnets, and firewall rules.
● Define disk options, such as boot disks and
additional storage volumes.
● Configure additional instance details like metadata,
startup scripts, and SSH keys.
● Define the desired region and zone where the
instance will be located.
www.staragile.com
● Review the configuration and click on "Create" to
provision the instance.
● Once the instance is created, you can connect to it
using SSH or other remote access methods.
Users :
● In the context of cloud computing, "users" typically
refer to individuals or entities that interact with
cloud services and resources.
● Here are the different types of users commonly
found in cloud environments:
1. End Users:
● End users are the individuals or entities who utilize
applications or services running on the cloud.
● They interact with the applications through user
interfaces or APIs without directly managing the
underlying cloud infrastructure.
www.staragile.com
2. Administrative Users:
● Administrative users are responsible for managing
and configuring cloud services and resources.
● They have privileged access and permissions to
perform administrative tasks such as provisioning
and configuring virtual machines, managing
storage, setting up networking, and controlling
access to resources.
3. Developers:
● Developers are responsible for designing, building,
and deploying applications on the cloud.
● They use cloud services and APIs to develop and
integrate cloud-native or cloud-enabled
applications.
● Developers may leverage tools, SDKs (Software
Development Kits), and APIs provided by the cloud
platform to build and deploy their applications.
4. Cloud Administrators:
● Cloud administrators are responsible for
overseeing the overall management and
administration of the cloud environment.
● They handle tasks such as account management,
resource allocation, monitoring, security
configuration, and cost management.
www.staragile.com
● Cloud administrators ensure that cloud services are
properly provisioned, configured, and maintained
to meet organizational needs.
5. Security Administrators:
● Security administrators focus on ensuring the
security of cloud resources and data.
● They implement and manage security measures,
such as access controls, encryption, security
groups, firewalls, and identity and access
management (IAM) policies.
● They also monitor for security threats,
vulnerabilities, and compliance requirements.
6. Data Administrators:
● Data administrators are responsible for managing
and organizing data stored in the cloud.
● They handle tasks such as data storage
configuration, backup and recovery, data retention
policies, and data governance.
● Data administrators work to ensure data integrity,
availability, and compliance with data protection
regulations.
7. Service Providers:
● Service providers are entities that offer cloud
services to customers.
www.staragile.com
● They are responsible for managing the underlying
infrastructure, ensuring its availability, scalability,
and security.
● Service providers may offer various services, such
as infrastructure as a service (IaaS), platform as a
service (PaaS), software as a service (SaaS), or
specialized services tailored to specific industries
or applications.
www.staragile.com
1. Amazon RDS (Relational Database Service):
● A managed service for relational databases such as
MySQL, PostgreSQL, Oracle, and SQL Server.
2. Amazon Aurora:
● A high-performance, scalable relational database
compatible with MySQL or PostgreSQL.
3. Amazon DynamoDB:
● A fully managed NoSQL database service for
handling large amounts of structured data with
high scalability and low latency.
4. Amazon Redshift:
● A fully managed data warehousing service for
analyzing large datasets and performing complex
queries.
5. Amazon DocumentDB:
● A fully managed NoSQL document database service
compatible with MongoDB.
www.staragile.com
● S3 stores objects in a flat structure, organized in
buckets, where each object has a unique key.
● It is designed to offer high availability, durability,
and low latency for accessing stored data.
● S3 is ideal for storing and retrieving unstructured
or semi-structured data, and it can handle large
data volumes.
● It offers features like versioning, access control,
encryption, lifecycle management, event
notifications, and integration with other AWS
services.
● S3 is often used for backup and archiving, content
distribution, data lakes, static website hosting, and
as a storage backend for various applications and
services.
● While databases are designed for structured data
storage and efficient querying, Amazon S3 provides
scalable and durable object storage for a wide
variety of data types.
● The choice between using a database or S3 storage
depends on the nature of the data, the access
patterns, the need for structured querying, and the
specific requirements of the application or use case.
● In some cases, a combination of both databases and
S3 storage may be used to optimize data storage
and retrieval strategies.
www.staragile.com
9. Overview of Cloud Storage
Information
www.staragile.com
● It allows individuals and organizations to store and
manage their data in a remote, centralized location
hosted by a cloud service provider.
www.staragile.com
4. Accessibility and Anywhere Data Access:
● Cloud storage enables users to access their data
from anywhere with an internet connection.
● Users can securely access their files, documents,
and media from multiple devices, including
desktops, laptops, smartphones, and tablets.
7. Cost Efficiency:
www.staragile.com
● Cloud storage follows a pay-as-you-go model,
where users pay for the storage capacity and
services they consume.
● This eliminates the need for large upfront
investments in hardware and infrastructure,
making it a cost-effective storage solution.
www.staragile.com
10. Overview of Public and Private IPS
Information
www.staragile.com
● Public and private IP addresses are two types of IP
addresses used in computer networks to identify
devices and facilitate communication.
1. Public IP Address:
● A public IP address is a globally unique address
assigned to a device connected to a public network,
such as the internet.
● It allows the device to communicate directly with
other devices on the internet.
● Public IP addresses are assigned by Internet
Service Providers (ISPs) or network administrators
and are routable across the internet.
● They are used to access resources, services, and
applications over the internet.
2. Private IP Address:
● A private IP address is an address assigned to a
device within a private network, such as a local area
network (LAN).
● It is not globally unique and is used only within the
private network.
● Private IP addresses are defined by the Internet
Assigned Numbers Authority (IANA) and reserved
for use in private networks.
● Devices with private IP addresses cannot be
directly accessed from the internet without
network address translation (NAT) or port
forwarding.
www.staragile.com
● Private IP addresses are commonly used in homes,
offices, and other internal networks to allow
devices to communicate with each other.
Key Differences:
1. Uniqueness:
● Public IP addresses are globally unique and must be
unique across the entire internet, while private IP
addresses are not globally unique and can be
reused within different private networks.
2. Scope:
● Public IP addresses are routable across the internet
and used for communication with devices outside
the private network, while private IP addresses are
used for internal communication within a private
network and cannot be directly accessed from the
internet.
3. Address Range:
● Public IP addresses are assigned from public IP
address ranges specified by the IANA, while private
IP addresses are assigned from specific private IP
address ranges, such as the ones defined in RFC
1918 (e.g., 10.0.0.0/8, 192.168.0.0/16).
4. Network Access:
www.staragile.com
● Public IP addresses allow devices to access the
internet and be accessed from the internet, while
private IP addresses provide internal network
connectivity but require NAT or port forwarding to
enable external access.
www.staragile.com
Information
1. Elastic IP (EIP):
● Elastic IP is a static, public IPv4 address associated
with your AWS account.
● It can be allocated to and associated with EC2
instances, network interfaces, or NAT gateways.
● Elastic IP provides a fixed IP address that you can use
for your resources, even if they are stopped or
terminated.
● It is useful for scenarios where you need a consistent
public IP address for applications or services exposed
to the internet.
www.staragile.com
● By using an Elastic IP, you can quickly and easily
remap the IP address to a new instance or network
interface in case of instance failures or when
replacing instances.
4. Public Internet Access:
● An Elastic IP enables resources associated with it to
be accessible from the internet using a consistent IP
address.
● This is especially useful for scenarios where you need
a fixed IP address for applications or services exposed
to the public.
5. DNS Resolution:
● Elastic IP addresses can be associated with domain
names using DNS (Domain Name System) records.
● This allows you to map a custom domain name to the
Elastic IP, providing a user-friendly way to access your
resources.
6. Billing and Pricing:
● While an Elastic IP is free to use as long as it is
associated with a running instance, there may be
charges if the Elastic IP is allocated but not associated
with any instance or if you exceed certain usage
limits.
www.staragile.com
● If the Elastic IP is disassociated, it will remain
associated with your account and can be associated
with another instance or resource.
2. Amazon CloudFront:
● CloudFront is a content delivery network (CDN)
service provided by AWS.
● It caches and delivers content, such as web pages,
images, videos, and other static or dynamic files, to
users globally.
● CloudFront helps improve the performance and
availability of your applications by caching content
closer to end-users, reducing latency and network
congestion.
www.staragile.com
● When a user requests content, CloudFront delivers it
from the edge location closest to the user, reducing
latency and improving performance.
● The content is cached at edge locations, reducing the
load on the origin server and enabling faster content
delivery for subsequent requests.
www.staragile.com
(Time-to-Live), and implementing cache invalidation
strategies.
www.staragile.com
● It's important to configure CloudFront with
appropriate caching settings, content origin
configurations, and security measures to ensure
optimal performance and protection for your content
and applications.
www.staragile.com
distributes traffic among multiple instances for load
balancing and fault tolerance.
● It's worth noting that Elastic IP, CloudFront, and ELB
are independent services and can be used together or
individually based on your specific requirements and
architecture.
www.staragile.com
● ELB evenly distributes incoming traffic across
multiple targets, ensuring that no single target is
overwhelmed.
● It automatically scales its capacity to handle increases
in traffic by adding or removing targets based on
demand.
● ELB performs health checks on the targets, directing
traffic only to healthy instances.
6. SSL/TLS Termination:
● ELB can handle SSL/TLS termination, offloading the
processing burden from backend instances.
● It supports various SSL/TLS certificate management
options, including AWS Certificate Manager (ACM) for
easy certificate provisioning and renewal.
www.staragile.com
● It can be used in conjunction with AWS WAF (Web
Application Firewall) to provide additional security
against common web exploits and DDoS attacks.
www.staragile.com
12. Overview of EKS and ACR
Information
www.staragile.com
● This enables you to build end-to-end container-based
solutions within the Azure ecosystem.
Key Differences:
1. Cloud Providers:
● EKS is an offering from AWS, while ACR is part of the
Azure cloud platform.
2. Managed Kubernetes Service vs. Container Registry:
● EKS focuses on providing a managed Kubernetes
service, handling the management of the Kubernetes
control plane.
● ACR, on the other hand, is specifically designed for
container image management and provides a secure
private registry.
3. Integration with Cloud Ecosystem:
www.staragile.com
● Both EKS and ACR integrate well with their respective
cloud ecosystems.
● EKS integrates with various AWS services, while ACR
integrates with Azure services, allowing you to
leverage additional capabilities within your cloud
environment.
www.staragile.com
● It simplifies the deployment, management, and
scaling of containerized applications using
Kubernetes. Here are key points about EKS:
a. Kubernetes Management:
● EKS handles the underlying infrastructure and
management aspects of Kubernetes, such as control
plane deployment, upgrades, and scaling.
● It allows you to focus on deploying and managing
your applications.
c. Cluster Scalability:
● EKS allows you to easily scale your Kubernetes cluster
by adding or removing worker nodes to meet
application demands.
● It supports automatic scaling using AWS Auto Scaling
groups.
www.staragile.com
● EKS integrates with AWS Identity and Access
Management (IAM) for fine-grained access control to
Kubernetes resources.
● It also provides features like encryption, VPC
networking, and AWS Security Groups to enhance the
security of your EKS clusters.
www.staragile.com
c. Scalability and Availability:
● ECR automatically scales to meet your image storage
needs.
● It supports high availability across multiple
Availability Zones, ensuring reliable access to your
container images.
1. Docker:
● Docker is an open-source platform for building,
packaging, and distributing containerized
applications.
● It provides tools and technologies to create, run, and
manage containers.
● With Docker, you can package your application and its
dependencies into a container image.
2. Kubernetes:
● Kubernetes is an open-source container orchestration
platform.
www.staragile.com
● It helps manage and automate the deployment,
scaling, and management of containerized
applications across clusters of machines.
● Kubernetes provides features for load balancing,
scaling, service discovery, and container lifecycle
management.
www.staragile.com
technology and tools to package and distribute your
applications.
Practical :
1. AWS Free Tier Account Creation
www.staragile.com
5. Create an AWS account:
● Fill in the required information to create your AWS
account.
● This includes your name, email address, and a
password for your AWS account.
● Click on the "Continue" button when you're done.
6. Provide your contact information:
● Enter your contact information, including your
address and phone number.
● Click on the "Create Account and Continue" button.
7. Payment information:
● You will be prompted to enter your payment
information.
● Although signing up for the Free Tier doesn't require
immediate payment, AWS requires a valid payment
method for verification purposes.
● AWS will only charge you if you exceed the Free Tier
limits or choose to use services that are not covered
by the Free Tier.
8. Identity verification:
● Follow the instructions to verify your identity.
● This may involve providing a phone number for
verification through a call or text message.
9. Select Support Plan:
● Choose the support plan that suits your needs.
● The "Basic" plan is available for free and provides
access to basic support resources.
10. Confirmation:
● Review the information you provided and confirm
your account creation.
www.staragile.com
● AWS will send a confirmation email to the email
address you provided.
11. Complete registration:
● Follow the instructions in the confirmation email to
complete your account registration.
● This may involve clicking on a verification link.
www.staragile.com
https://console.aws.amazon.com/. Sign in using your
AWS account credentials.
2. Open the IAM service:
● In the AWS Management Console, search for "IAM" or
find the IAM service under the "Security, Identity &
Compliance" category. Click on it to open the IAM
dashboard.
3. Navigate to "Users" section:
● In the IAM dashboard, click on "Users" in the
left-hand navigation pane.
● This will show you the list of existing IAM users.
4. Click on "Add user":
● On the IAM Users page, click on the "Add user" button
to start creating a new IAM user.
5. Provide user details:
● In the "Add user" wizard, enter a unique name for the
IAM user in the "User name" field.
● You can also enable programmatic access and AWS
Management Console access for the user by selecting
the respective checkboxes.
6. Set permissions:
● Under "Set permissions", you can assign the
necessary permissions to the IAM user.
● You can choose to add the user to one or more
existing groups with predefined permissions or
directly attach policies to the user.
● Policies define the permissions and access rights for
the user.
● You can select from the list of existing policies or
create custom policies based on your requirements.
www.staragile.com
7. Add tags (optional):
● You can add tags to the IAM user for better
organization and management of users within your
AWS account.
● Tags are key-value pairs that you can use to categorize
and track resources.
8. Review and create:
● Review the user details, permissions, and tags you
have provided.
● If everything looks correct, click on the "Create user"
button to create the IAM user.
9. Note the user details:
● After the user is created, make note of the generated
access key ID and secret access key if you have
enabled programmatic access for the user.
● These credentials are required for programmatic
access to AWS services via APIs or CLI.
10. Provide login details (if enabled):
● If you have enabled AWS Management Console access
for the user, you can provide the user with the login
URL (usually in the format
https://your-account-id.signin.aws.amazon.com/cons
ole/) and their username.
● The user will need to set a password when they first
sign in.
www.staragile.com
● The user can now access AWS services and resources
based on the permissions and policies assigned to
them.
● Ensure that you communicate the necessary login
details and access instructions to the user as required.
www.staragile.com
4. Choose an Amazon Machine Image (AMI):
● An AMI is a pre-configured template that contains the
necessary operating system and software for your
instance.
● Select the desired AMI based on your requirements.
● You can choose from various Amazon-provided AMIs
or use your own custom AMIs.
5. Choose an Instance Type:
● Select the instance type that best suits your needs in
terms of CPU, memory, storage, and networking
capabilities.
● The available instance types range from
general-purpose instances to specialized instances
optimized for specific workloads.
6. Configure Instance Details:
● Configure the instance details, including the number
of instances to launch, network settings, subnet,
security groups, and other advanced options.
● You can customize these settings based on your
specific requirements.
7. Add Storage:
● Specify the storage requirements for your instance.
● You can choose the storage type (EBS volumes), size,
and configuration options.
● You can also add additional volumes if needed.
8. Configure Security Group:
● Set up the security group for your instance.
● A security group acts as a virtual firewall, controlling
inbound and outbound traffic to the instance.
www.staragile.com
● You can specify the rules to allow or deny access
based on protocols, ports, and IP addresses.
9. Review Instance Configuration:
● Review the instance configuration settings to ensure
they are correct.
● If needed, you can go back and make any necessary
changes.
10. Add Tags (optional):
● You can add tags to your instance for better
organization and management.
● Tags are key-value pairs that allow you to categorize
and track your resources.
11. Configure Key Pair:
● If you plan to connect to your instance using SSH, you
need to create or select an existing key pair.
● This key pair will be used to securely log in to the
instance.
12. Review and Launch:
● Review all the configuration details of your instance.
● If everything looks correct, click on the "Launch"
button to start the instance creation process.
13. Select Key Pair and Launch Instances:
● In the final step, select the key pair you configured in
step 11.
● You will need the private key file associated with this
key pair to access the instance.
● Once selected, click on the "Launch Instances" button.
14. View Instances:
www.staragile.com
● After launching the instance, you will be redirected to
the EC2 dashboard where you can view the status and
details of your instances.
● It may take a few minutes for the instance to be fully
initialized and running.
www.staragile.com
● In the AWS Management Console, search for "EC2" or
find the EC2 service under the "Compute" category.
● Click on it to open the EC2 dashboard.
3. Navigate to "Security Groups":
● In the EC2 dashboard, click on "Security Groups" in
the left-hand navigation pane.
● This will show you a list of existing security groups.
4. Create a new security group:
● To create a new security group, click on the "Create
Security Group" button.
5. Configure the security group:
a. Security Group Name and Description:
● Provide a name and description for your security
group.
b. VPC (Virtual Private Cloud):
● Select the VPC in which you want to create the
security group.
● If you don't have a VPC, you can create one first.
c. Inbound Rules:
● Specify the inbound traffic rules for your security
group.
● These rules control incoming traffic to your EC2
instances.
● You can add rules for specific protocols (e.g., HTTP,
HTTPS, SSH) and port ranges, and define the source IP
addresses or CIDR blocks allowed.
d. Outbound Rules:
● Specify the outbound traffic rules for your security
group.
www.staragile.com
● These rules control outgoing traffic from your EC2
instances.
● You can define rules similar to the inbound rules,
specifying the destination IP addresses or CIDR
blocks allowed.
e. Review and Create:
● Review the configuration of your security group.
● If everything looks correct, click on the "Create"
button to create the security group.
6. Apply the security group to your EC2 instance:
● After creating the security group, you can associate it
with your EC2 instance.
● In the EC2 dashboard, select the instance for which
you want to configure the security group.
● Go to the "Actions" menu, select "Networking," and
then click on "Change Security Groups."
● Choose the newly created security group and save the
changes.
www.staragile.com
● Note that security groups are stateful, meaning that if
you allow inbound traffic for a specific protocol and
port, the corresponding outbound traffic is
automatically allowed.
● This simplifies the management of network traffic
rules.
www.staragile.com
● Choose the appropriate engine based on your
requirements.
5. Select a use case:
● Choose the use case that best matches your database
requirements.
● For example, if you need a production database, select
the "Production" option.
● If you need a database for testing or development
purposes, select the "Dev/Test" option.
6. Specify the DB details:
● Provide the necessary details for your database, such
as the DB instance identifier, username, and
password.
● You can also customize the other settings like DB
instance size, storage, backup options, and
maintenance preferences.
7. Configure advanced settings:
● If required, you can configure advanced settings such
as VPC, subnet group, security groups, encryption,
and more.
● These settings allow you to customize the network
and security configurations for your database.
8. Review and create the database:
● Review all the configuration details for your
database.
● If everything looks correct, click on the "Create
database" button to initiate the database creation
process.
9. Wait for the database to be created:
www.staragile.com
● It may take a few minutes for the database to be
created.
● You can monitor the progress on the RDS
dashboard. Once the database is created, it will be
in the "Available" state.
10. Connect to the database:
● Once the database is available, you can connect to it
using the endpoint provided in the RDS console.
● Use the database endpoint, username, and
password to establish a connection and start using
the database.
www.staragile.com
● To connect to an EC2 instance in AWS, you can use
SSH (Secure Shell) for Linux-based instances or RDP
(Remote Desktop Protocol) for Windows-based
instances.
● Here are the general steps to connect to an EC2
instance:
1. Retrieve the instance details:
● Sign in to the AWS Management Console and navigate
to the EC2 service.
● Locate the EC2 instance you want to connect to and
note down its public IP address or public DNS name.
www.staragile.com
● If prompted, confirm the authenticity of the host by
typing "yes" and pressing Enter.
● Enter the private key passphrase if required.
● You should now be connected to the Linux-based EC2
instance.
www.staragile.com
● If you encounter any issues during the connection
process, make sure that the instance is running, the
security group rules are properly configured, and you
have the correct credentials.
● Refer to the AWS documentation for more detailed
instructions and troubleshooting steps specific to
your use case and instance configuration.
7. Connecting Database
www.staragile.com
● The credentials (username and password) required
to authenticate and authorize access to the
database.
● Hostname or IP address
● Port number
● Database name
● Username
● Password
d. Test the Connection:
● Once you have entered the connection details, test
the connection to ensure it is successful.
www.staragile.com
● The database client will attempt to connect to the
database using the provided information.
8. Creation of S3 storage
www.staragile.com
1. Sign in to the AWS Management Console:
Open your web browser and go to the AWS
Management Console at
https://console.aws.amazon.com/. Sign in using your
AWS account credentials.
a. Bucket name:
● Enter a unique and meaningful name for your S3
bucket.
● The name must be globally unique across all AWS
accounts.
b. Region:
● Select the AWS region where you want to create the
S3 bucket.
● Choose a region that is geographically close to your
users or where you want to store your data.
c. Copy settings from existing bucket (optional):
● If you have an existing bucket and want to copy its
settings, you can choose to do so.
www.staragile.com
● Otherwise, leave this option unchecked.
5. Configure options:
6. Set permissions:
www.staragile.com
● If you need more fine-grained access control, you
can create a bucket policy that defines specific
access rules and permissions.
7. Review and create the bucket:
● Review all the configuration details for your S3
bucket.
● If everything looks correct, click on the "Create
bucket" button to initiate the bucket creation
process.
www.staragile.com