0% found this document useful (0 votes)
15 views57 pages

FUNDAMNETALS OF CLOUD COMPUTING-Practical - Assigments - Cloud - Final Copy-To Be Sent

The document outlines the practical course IT-106 for F.Y.B.Sc. (Information Technology) students at Savitribai Phule Pune University, focusing on cloud computing fundamentals. It includes course objectives, outcomes, and detailed instructions for completing assignments related to cloud services, virtualization, and security practices. Additionally, it provides guidelines for signing up for AWS and creating a virtual machine instance, emphasizing the importance of cloud computing in modern IT.

Uploaded by

harshita
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
15 views57 pages

FUNDAMNETALS OF CLOUD COMPUTING-Practical - Assigments - Cloud - Final Copy-To Be Sent

The document outlines the practical course IT-106 for F.Y.B.Sc. (Information Technology) students at Savitribai Phule Pune University, focusing on cloud computing fundamentals. It includes course objectives, outcomes, and detailed instructions for completing assignments related to cloud services, virtualization, and security practices. Additionally, it provides guidelines for signing up for AWS and creating a virtual machine instance, emphasizing the importance of cloud computing in modern IT.

Uploaded by

harshita
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 57

Savitribai Phule Pune University

F.Y.B.Sc. (Information Technology)


Semester -I

Course Name

IT-106 MJP Practical Based on IT105MJ Fundamentals of Cloud

Computing

Student Name :

College Name :

Roll No. : Division : Seat No :

Academic Year : ____________


CERTIFICATE

This is to certify that Mr./Ms.

Seat Number__________________of F.Y.B.Sc. (IT) Semester-I has

Successfully Completed Laboratory Course on IT-106 MJP Practical Based on

IT105MJ in the Academic Year __________.

Subject Teacher H.O.D./Coordinator

Internal Examiner External Examiner


About the Book:

This workbook is intended to be used by F.Y.B.Sc (I.T.) Semester-I


students for Fundamentals of Cloud Computing. This workbook is
designed by considering all the practical topics mentioned in syllabus.

How to use this workbook:


The IT-106 MJP Practical Based on IT105MJ Fundamentals of Cloud
Computing is divided into seven Assignments. Each assignment has
three SETs A, B, C. It is mandatory for students to complete the SET A
and SET B in given slot

Instructions to the Students and Instructors:


- Students should carry labbook while coming to the practical.
- Students should complete all the practical assignments within given
time interval.
- Instructors should check all the assignments regularly and guide to
the students accordingly.
- Students have to solve the assignments.
- Students will be assessed for each assignment on a scale from 0 to 5
-
Not done 0
Incomplete 1
Late Complete 2
Needs improvement 3
Complete 4
Well Done 5

Course Objectives: -
● Learn and apply virtualization techniques with hypervisors.
● -Implement and evaluate different load balancing strategies.
● -Explore, Utilize and use various Amazon Web Services (AWS).
● -Set Up a Basic Cloud Environment, Configure and manage a basic cloud setup.
● -Understand IaaS, PaaS, and SaaS; deploy a sample application.
● -Understand and analyze emerging trends in cloud computing.
● -Learn and apply security best practices in cloud environments.
Course Outcomes: -
● Identify and analyze current and emerging trends in cloud computing and their
business and technological implications.
● -Implement and manage virtualization solutions using Type 1 and Type 2
hypervisors.
● -Implement and compare various load balancing algorithms in different cloud
environments.
● -Analyze real-world use cases of cloud computing across various industries.
● -Implement security best practices in cloud computing, including encryption and
access control.
● -Utilize various AWS services to develop practical solutions
. ● -Set up, configure, and manage a basic cloud environment with virtual
machines, storage, and networking
● -Understand and deploy applications using IaaS, PaaS, and SaaS models.
● -Explore and implement examples or simulations of future trends in cloud
computing, such as mobile cloud, containers, and Kubernetes

Editorial Board:
KES’s Pratibha College of Commerce & Computer Studies, Chicnhwad, Pune-19 &
Dr. D. Y. Patil ACS College, Pimpri, Pune
1. Dr Harshita Vachhani –
Head, Dept.of Computer Science - Pratibha College of Commerce &
Computer Studies
2. Prof Prajakta Patil
3. Prof Punam Toke

Reviewed By:
Assignment Completion Sheet

Sr Assignment Name Marks Sig


. n
(out of 5)
N
o.
1 Assignment 1: Introduction to Cloud
Computing
2 Assignment 2:Virtualization in Cloud
Computing
3 Assignment 3: Cloud Service Models
4 Assignment 4: AWS Services
Exploration
5 Assignment 5: Cloud Computing
Applications in Various Domains
6 Assignment 6: Cloud Security
Implementation
7 Assignment 7: Exploring Future Trends
in Cloud Computing
Total out

of 35

Teacher’s Sign
HOD /Programme Cooridnator
Introduction

Cloud computing is a transformative technology that allows users to access and


store data, applications, and services over the internet, rather than relying on local
hardware and software. This approach to computing has revolutionized how
businesses and individuals manage their IT resources, offering a flexible, scalable,
and cost-effective alternative to traditional on-premises solutions.

Learning the fundamentals of cloud computing is an essential step for anyone


interested in modern IT, software development, or business technology. Cloud
computing refers to the delivery of computing services, such as storage, processing
power, networking, databases, and software, over the internet ("the cloud") rather
than through local servers or personal devices.

Key Concepts in Cloud Computing Fundamentals:

1. Cloud Service Models:

● Infrastructure as a Service (IaaS): Provides virtualized computing


resources like servers, storage, and networking over the internet. Users can
build and manage their own IT infrastructure, but without the need for
physical hardware. Examples include AWS EC2, Microsoft Azure VMs, and
Google Cloud Compute Engine.
● Platform as a Service (PaaS): Offers a platform that allows developers to
build, deploy, and manage applications without worrying about the
underlying infrastructure. PaaS simplifies the development process by
providing tools, libraries, and frameworks. Examples include Google App
Engine, Microsoft Azure App Service, and AWS Elastic Beanstalk.
● Software as a Service (SaaS): Delivers software applications over the
internet, typically on a subscription basis. Users can access these
applications through a web browser without needing to install or maintain
the software on their local devices. Examples include Google Workspace,
Microsoft 365, and Salesforce.

2. Deployment Cloud Models:


o Public Cloud: Services are offered over the public internet and
available to anyone who wishes to purchase them. Providers like
AWS, Google Cloud, and Microsoft Azure are popular examples.
o Private Cloud: A cloud environment operated solely for a single
organization, providing greater control and security.
o Hybrid Cloud: Combines both public and private clouds, allowing
data and applications to be shared between them.

3. Benefits:
a. Scalability: Easily scale resources up or down based on demand.
b. Cost Efficiency: Pay only for what you use, avoiding large upfront
investments in hardware.
c. Accessibility: Access resources from anywhere with an internet
connection.
d. Reliability: High availability and disaster recovery options.

4. Security Considerations:
a. Data Security: Protecting data in transit and at rest.
b. Compliance: Adhering to legal and regulatory requirements.
c. Identity and Access Management (IAM): Controlling who has
access to what resources.
5. Deployment and Management:
a. Virtualization: The technology that allows multiple virtual machines
to run on a single physical machine.
b. Containers and Kubernetes: Tools for deploying, scaling, and
managing applications in the cloud.
c. Automation and DevOps: Streamlining cloud operations and
development practices for efficiency.
6. Advantages of Cloud Computing:

● Scalability: Easily scale resources up or down based on demand, ensuring


you only pay for what you use.
● Cost Efficiency: Reduces the need for upfront capital investments in
hardware, instead offering a pay-as-you-go model.
● Accessibility: Access resources from anywhere with an internet connection,
enabling remote work and collaboration.
● Flexibility: Quickly adapt to changing business needs by deploying and
scaling applications without significant delays.

7. Security and Compliance:


● Data Security: Cloud providers implement robust security measures,
including encryption, access controls, and regular audits, to protect data.
● Compliance: Providers often offer compliance with industry standards and
regulations, helping businesses meet legal requirements.

8. Common Cloud Services:

● Storage Services: Cloud storage solutions like AWS S3, Google Cloud
Storage, and Azure Blob Storage allow users to store and retrieve data from
anywhere.
● Compute Services: Virtual machines, such as AWS EC2, Google Compute
Engine, and Azure VMs, provide on-demand computing power.
● Database Services: Managed database services like Amazon RDS, Google
Cloud SQL, and Azure SQL Database simplify database management.

9. Emerging Trends:

● Serverless Computing: Allows developers to run code without managing


servers, with providers automatically handling scaling and infrastructure.
● Edge Computing: Brings computation and data storage closer to the
location where it is needed, reducing latency and improving performance.
● AI and Machine Learning: Cloud providers offer AI and ML services that
enable businesses to leverage advanced analytics and automation without
needing in-house expertise.

Understanding these fundamentals is crucial for effectively leveraging cloud


technologies, whether you’re pursuing a career in IT, working on a cloud-based
project, or simply trying to understand the current trends in technology. As cloud
computing continues to evolve, having a strong grasp of these basics will position
you well for future advancements in the field.

Cloud computing has become a cornerstone of modern IT, driving innovation,


improving efficiency, and enabling new business models. Whether you are a
developer, IT professional, or business leader, understanding cloud computing
fundamentals is crucial for leveraging its full potential.
Assignment 1
Introduction to Cloud Computing
Objective:
Compare at least two cloud service providers, sign up for a free tier account, create
a VM instance and connect the instance via SSH or Remote Desktop.
Theory:
➢ Azure and AWS are two of the world’s leading cloud solutions, differing on
several key parameters.
➢ Azure by Microsoft and Amazon Web Services or AWS provide a similar
set of core features and cloud capabilities. However, they differ from each
other in some essential aspects.
➢ Cloud computing refers to the on-demand distribution of computing services
over the internet and remote data centers (i.e., the cloud) to drive faster
innovation, increase resource provisioning flexibility, and help companies
gain from economies of scale.
➢ Cloud providers like Microsoft Azure and Amazon Web Services (AWS)
have functions and services distributed across multiple data centers. Further,
cloud computing relies on two methods to enable standardization and cost
efficiency: a resource-sharing model and a “pay-as-you-go” paradigm.
AWS and Azure resemble each other in terms of basic features and functionalities
— however, they differ in other aspects.

Feature AWS AZURE


Computing power AWS leverages EC2 Azure users are given the
tailored to customer option of creating a VM
needs. from a virtual hard disc
(VHD).
Cloud storage offerings AWS has services like Azure Storage Services
AWS S3, EBS, and offers Blob Storage, Disk
Glacier. Storage, and Standard
Archive.
Privacy and security AWS performs an Azure is protected by a
enforcement methods excellent job of selecting dedicated Cloud
secure alternatives by Defender service, an AI-
default, ensuring powered tool.
enhanced privacy.
Ease of use and AWS provides a feature- Azure keeps the account
documentation model rich and user-friendly information in one place,
dashboard, along with although its
extensive documentation. documentation system is
less intuitive and search-
friendly.
Licensing and license AWS licenses are more Azure provides more
mobility configurable and feature- software as a service
rich. (SaaS) features and is
easier to set up for
Windows administrators.
Networking Users can build private Azure relies on a VPN
networks using AWS’
VPC.
Machine learning (ML) SageMaker logs model Azure ML Studio utilizes
modeling metrics and historical MLFlow for data
data via CloudWatch. recording and
monitoring.
Database capabilities Amazon RDS is a Azure’s SQL Server
database service that Database and Cortana
supports six standard Intelligence Suite
database engines. supports Hadoop, Spark,
Storm, and HBase.
Open-source presence AWS is ideal for open- Microsoft Azure is still in
source developers as it is the process of
compatible with Linux embracing the open-
and provides integrations
source community.
for open-source
applications.
Processes for deploying AWS offers Elastic Azure offers a variety of
applications Beanstalk, Batch, app deployment options,
Lambda, container including cloud services,
services, etc., but it lacks container services,
a few features in terms of functions, batches, and
app hosting app services, among
others.
Containerization and Containerized apps in In Azure, the same
orchestration support AWS run using Elastic functionality is
Beanstalk, which performed by App
supports Docker files Service, but the process is
through a command-line slightly more complex as
interface. one must run the
container inside of a web
app.
Pricing model AWS is billed on an Azure is billed as per a
hourly basis. per-minute model.
★ Steps to Sign up for a free tier account on AWS:

Step 1: Sign Up for AWS

1. Go to the AWS Signup Page: Visit aws.amazon.com and click on the


“Create an AWS Account” button.
2. Enter Your Email Address: Provide a valid email address and choose an
account name.
3. Create a Password: Choose a strong password and confirm it.
4. Verify Your Email: Check your email for a verification code and enter it on
the AWS signup page.

Step 2: Enter Contact Information

1. Select Account Type: Choose either “Personal” or “Professional.”


2. Enter Contact Details: Fill in your full name, company name (if
applicable), address, and phone number.
3. Agree to Terms: Read and accept the AWS Customer Agreement.

Step 3: Enter Payment Information

1. Provide Credit Card Details: Enter your credit card or debit card
information. AWS uses this to verify your identity and for billing purposes.
2. Verify Your Identity: You might be required to verify your identity via a
phone call or SMS. Enter the verification code when prompted.

Step 4: Choose an AWS Support Plan


1. Select a Support Plan: AWS offers several support plans ranging from the
free Basic Support to premium support plans. Choose the one that fits your
needs. You can start with the Basic Support plan and upgrade later if needed.

Step 5: Complete the Registration

1. Review Your Information: Double-check all the information you’ve


provided.
2. Complete the Sign-Up Process: Click on the “Complete Sign-Up” button.

★ Steps to create a basic virtual machine (VM) instance on AWS:


1. Sign in to the AWS Management Console
● Go to the AWS Management Console.
● Sign in with your AWS account credentials.
2. Navigate to the EC2 Dashboard
● From the AWS Management Console, search for "EC2" in the services
menu and click on it to open the EC2 Dashboard.
3. Launch a New Instance
● Click the “Launch Instance” button.
4. Choose an Amazon Machine Image (AMI)
● Select an AMI that suits your needs. For a basic setup, you can choose a
free-tier eligible AMI such as "Amazon Linux 2 AMI" or "Ubuntu Server
20.04 LTS."
5. Choose an Instance Type
● Select an instance type. For a basic VM, you can choose a free-tier eligible
type like t2.micro.
6. Configure Instance Details
● Click “Next: Configure Instance Details.”
● Configure the following settings:
○ Number of Instances: 1
○ Network: Choose the default VPC.
○ Subnet: Select a subnet in your preferred Availability Zone.
○ Auto-assign Public IP: Enable this to assign a public IP automatically.
○ Leave other settings at their default values.
7. Add Storage
● Click “Next: Add Storage.”
● By default, an 8 GB General Purpose SSD (gp2) volume is attached. You
can adjust this if needed.
8. Add Tags
● Click “Next: Add Tags.”
● Add a tag to help identify your instance. For example, you can add a tag
with the key “Name” and value “MyFirstInstance.”
9. Configure Security Group
● Click “Next: Configure Security Group.”
● Create a new security group or select an existing one.
● Add rules to allow necessary traffic:
○ SSH: Port 22 for Linux instances.
○ RDP: Port 3389 for Windows instances.
○ Optionally, add rules for HTTP (port 80) or HTTPS (port 443) if you
plan to run a web server.
10. Review and Launch
● Click “Review and Launch.”
● Review your settings and click “Launch.”
11. Select a Key Pair
● When prompted, select an existing key pair or create a new one.
● Important: If creating a new key pair, download the .pem file and keep it in a
secure place. You will need it to access your instance.
12. Launch Your Instance
● Click “Launch Instances.”
● You will see a confirmation screen. Click “View Instances” to go to the EC2
Dashboard and see your running instances.
13. Connect to Your Instance
● Once your instance is in the "running" state, select it from the list and click
the “Connect” button.
● Follow the instructions to connect to your instance:
For SSH (Linux):
sh
Copy code
ssh -i /path/to/your-key-pair.pem ec2-user@your-instance-public-dns
For RDP (Windows): Use an RDP client and enter the public DNS, username,
and password.

Exercise:
Set A:
1. Sign up for a free tier account on AWS.
2. Compare at least two cloud service providers (e.g., AWS, Azure, Google
Cloud).
Set B:
1. Create a basic virtual machine (VM) instance.
2. Connect to the VM Instance via SSH or remote desktop (for windows)
Set C:
1. Explain the significance of AWS in the context of cloud computing.
2. https://youtu.be/QDymcZ5xYow?si=4a8H3f07yhvlMnKN (Sign up for a
free tier account on AWS.)
3. https://youtu.be/MtyL15ySFyE?si=qtyG9nXznF21O4zt (Connect to the VM
instance via SSH (for Linux) or Remote Desktop (for Windows))
Assignment 2
Virtualization in Cloud Computing

● Virtualization is the "creation of a virtual (rather than actual) version of


something, such as a server, a desktop, a storage device, an operating system
or network resources".
● In other words, Virtualization is a technique, which allows the sharing of a
single physical instance of a resource or an application among multiple
customers and organizations. It does this by assigning a logical name to a
physical storage and providing a pointer to that physical resource when
demanded.
● Creation of a virtual machine over existing operating system and hardware is
known as Hardware Virtualization. A Virtual machine provides an
environment that is logically separated from the underlying hardware.
● The machine on which the virtual machine is going to create is known as
Host Machine and that virtual machine is referred as a Guest Machine.

★ Install a Type 1 hypervisor (e.g., VMware ESXi) or Type 2 hypervisor


(e.g.,VirtualBox or VMware Workstation) on your system.

Installation of Virtual Box in Windows

Step 1: First, we need to go to the VirtualBox Website through the


https://www.virtualbox.org/ in the system's internet browser. It is the link where
we will download the VirtualBox setup file.

Step 2: Click on the Download VirtualBox button, which appears on a blue


button on the page.
Step 3: Now, Click on the Windows hosts link. We will see it below the
"VirtualBox 6.1.16 platform packages" option.

Step 4: Now, open the VirtualBox EXE file from where we have downloaded this
file in the system. After that, the VirtualBox installation window will open.
Step 5: Click on the Next button in the Welcome window.

Step 6: Choose the installation folder and click on the Next button.
Step 7: Now, we will choose the features that we want to install and then click on
the Next button.

Step 8: Click on the Yes button to install the Oracle Virtual Box interfaces.
Step 9: Click on the Install button when prompted. After that, it will start
installing the Virtual Box in our system.

Step 10: After completing all these processes, click on the Finish button. When we
do this, the installation tab will be closed, and Virtual Box will be opened. Now,
we can create a virtual machine to run any OS on the system.
★ Creating a basic VM instance on AWS involves using the Amazon
Elastic Compute Cloud (EC2) service.

Step 1: Sign in to AWS Management Console


● Sign in: Go to the AWS Management Console and log in with your
credentials.
● Navigate to EC2: In the AWS Management Console, search for "EC2" and
select it from the services list.
Step 2: Launch an EC2 Instance
1. Click “Launch Instance”:
● On the EC2 Dashboard, click the “Launch Instance” button to start the
creation process.
2. Choose an Amazon Machine Image (AMI):
● Select an AMI, which is a pre-configured operating system and software
package. For example, choose "Amazon Linux 2 AMI" or any other free-tier
eligible option.
3. Choose an Instance Type:
● Select an instance type based on your needs. For a basic VM, select
t2.micro, which is free-tier eligible.
4. Configure Instance Details:
● Configure the settings, such as the number of instances, network, and auto-
assignment of a public IP. Use the default settings for a basic setup.
5. Add Storage:
● Specify the storage size and type. The default storage size is usually
sufficient for a basic setup.
6. Add Tags:
● Optionally, add tags to help identify your instance later.
7. Configure Security Group:
● Create a new security group or choose an existing one.
● Allow SSH access by setting the type to SSH and the source to My IP for
security (this allows you to connect from your current IP address).
Step 3: Review and Launch
1. Review: Check all the configurations to ensure they are correct.
2. Launch: Click the “Launch” button.
3. Create a Key Pair:
● Choose an existing key pair or create a new one. A key pair is necessary for
SSH access to your instance.
● Download the private key file (.pem) and keep it secure.
Step 4: Connect to Your Instance
1. View Instances: Go to the “Instances” section in the EC2 Dashboard to see
your running instances.
2. Select Your Instance: Select your new instance to view its details.
3. Find the Public IP: Note the public IP address or DNS name of your
instance.
4. Connect via SSH:
● Open a terminal.
● Use the following command to connect (replace <your-key.pem> with the
path to your key file and <public-ip> with your instance’s public IP): ssh -i
<your-key.pem> ec2-user@<public-ip>

Exercise:
Set A:
1. Install a Type 1 hypervisor (e.g., VMware ESXi) or Type 2 hypervisor (e.g.,
VirtualBox or VMware Workstation) on your system.
Set B:
1. Create and configure multiple virtual machines.
2. https://youtu.be/AxsFAuBnQWE?si=kfhiZP9_kewQbYY2 (Create a basic
VM instance)
Set C:
1. Why is virtualization important?
2. What are the different types of virtualization?
Assignment 3

Cloud Service Models

Cloud computing is based on service models. These are categorized into four basic
service models which are:

1. Infrastructure-as-a-Service(IaaS)
2. Platform-as-a-Service(PaaS)
3. Software-as-a-Service(SaaS)
4. BPO(Business Process Outsourcing)

Exploring Google Docs (SaaS)

By the end of this assignment, you will be able to create, format, and share
documents using Google Docs, as well as utilize collaborative features.

Instructions:

1. Create a New Document:


○ Open Google Docs.
○ Create a new blank document.
○ Title your document "Google Docs Practice Assignment."
2. Basic Text Editing:
○ Type a short paragraph about your favorite hobby.
○ Use bold, italic, and underline to emphasize different parts of your
text.
○ Change the font style and size of the text.
○ Highlight a portion of the text and change its color.
3. Insert Elements:
○ Insert an image related to your hobby. You can upload one from your
computer or use the built-in Google search.
○ Add a table with 3 columns and 3 rows. Fill in the table with relevant
information (e.g., different aspects of your hobby, tools you use, etc.).
○ Insert a hyperlink to a website related to your hobby.
4. Use Lists:
○ Create a bulleted list of items or tools needed for your hobby.
○ Create a numbered list of steps to perform your hobby.
5. Headers and Footers:
○ Add a header with the title "Google Docs Practice."
○ Add a footer with your name and the date.
6. Page Layout:
○ Change the page orientation to landscape.
○ Adjust the margins to 1 inch on all sides.
7. Collaboration Features:
○ Share the document with a friend or colleague, giving them editing
permissions.
○ Use the comment feature to add a comment asking for feedback on a
specific part of the document.
○ Use the suggestion mode to make changes that your collaborator can
review and approve.
8. Revision History:
○ Explore the revision history to see the changes made to the document
over time.
○ Restore an earlier version of the document, then revert back to the
latest version.
9. Templates:
○ Explore the templates available in Google Docs.
○ Create a new document using a template of your choice (e.g., a
resume, a report, etc.).
10.Export and Download:
○ Download your document as a PDF.
○ Download your document in Microsoft Word (.docx) format.

Set A:
1. Create a Google Doc as per the above instructions.
Set B:
1. Differentiate between the three main Cloud Service Models.
Set C:
1. https://youtu.be/z9i_h-WMQ68?si=gs1_VoEvXKzc-zQi (How to use
google docs)
Assignment 4

AWS Services Exploration

➢ AWS is a comprehensive, easy to use computing platform offered by


Amazon. The platform is developed with a combination of infrastructure as
a service (IaaS), platform as a service (PaaS) and packaged software as a
service (SaaS) offerings.
➢ Amazon Web Services offers a wide range of different business purpose
global cloud-based products.
➢ The products include storage, databases, analytics, networking, mobile,
development tools, enterprise applications, with a pay-as-you-go pricing
model.
➢ The Amazon Web Services (AWS) platform provides more than 200 fully
featured services from data centers located all over the world, and is the
world's most comprehensive cloud platform.
➢ Amazon web service is an online platform that provides scalable and cost-
effective cloud computing solutions.
➢ AWS is a broadly adopted cloud platform that offers several on-demand
operations like compute power, database storage, content delivery, etc., to
help corporates scale and grow.

Compute Services:
EC2, Lambda, Elastic Container Service, Elastic Load Balancer, LightSail, Elastic
BeanStalk
Storage Services:
S3, Glacier, EBS, Storage Gateway
Database Services:
RDS, DynamoDB, Elastic Cache, Amazon RedShift
Networking Services:
VPC, Route53, Direct Connect, CloudFront
Security Services:
IAM, KMS, Cognito, WAF
Management Tools:
Cloud Watch, Cloud Formation, AutoScaling, Cloud Trial
Developer Tools:
CodeStar, CodeBuild, CodeDeploy, CopePipeline

What is Amazon S3?

● Amazon S3 is a Simple Storage Service in AWS that stores files of different


types like Photos, Audio, and Videos as Objects providing more scalability
and security to.
● It allows the users to store and retrieve any amount of data at any point in
time from anywhere on the web.
● It facilitates features such as extremely high availability, security, and
simple connection to other AWS Services.

Create an S3 bucket and upload some files.

Prerequisites
1.AWS Account: Ensure you have an active AWS account.
2. IAM User with S3 Permissions: Make sure your AWS Identity and Access
Management (IAM) user has the necessary permissions to create and manage S3
buckets.

Steps to Create S3 Bucket


1. Login to AWS Management Console
- Go to the [AWS Management Console](https://aws.amazon.com/console/) and
sign in.
2. Navigate to S3 Service
- In the AWS Management Console, search for "S3" in the search bar and select
S3.
3. Create a New Bucket
- Click on the "Create bucket" button.
- Bucket Name: Enter a globally unique name for your bucket. (e.g., `my-unique-
bucket-name`).
- Region: Select the AWS region where you want the bucket to reside.
- Bucket settings: Configure options like versioning, encryption, and public
access settings (optional).
- Click Create bucket at the bottom of the page.

Steps to Upload Files to S3 Bucket

1. Navigate to Your Bucket


- After creating the bucket, click on the bucket name from the list to open it.
2. Upload Files
- Click the Upload button.
- In the upload window, drag and drop your files or click "Add files" to browse
for files on your computer.
- (Optional) Configure additional options like storage class, encryption, and
metadata.
- Click "Upload" to upload the files.

Set A:
1. Create an AWS S3 bucket.
2. Upload files in the bucket.
Set B:
1. Describe what Amazon Simple Storage Service (S3) is and its primary use
cases.
Assignment 5

Cloud Computing Applications in Various Domains

➢ Google App Engine is Google’s platform to build web applications on cloud.


➢ It provides a dynamic web server with full support for common web
technologies.
➢ App Engine is a fully managed serverless application platform with simple
administration.
➢ App Engine handels the work of uploading your code and running it on
Google Cloud.
➢ It seamlessly scales from zero to millions of requests, as your app becomes
popular, you only pay for what you use.
➢ You can easily host different versions of your app and split traffic between
them for testing and incremental feature rollouts.

Install and configure Google App Engine.

To install and configure Google App Engine (GAE) for your project, you'll need to
follow these steps:

Step 1: Install the Google Cloud SDK


Google App Engine is managed using the Google Cloud SDK, which includes the
gcloud command-line tool.

1. Download and Install the SDK:


○ Visit the Google Cloud SDK installation page and follow the
instructions for your operating system.

Initialize the SDK: After installation, initialize the SDK by running:

gcloud init

2. This will guide you through the process of selecting your Google Cloud
project and setting up authentication.

Step 2: Set Up a Google Cloud Project

If you don't have a Google Cloud project yet:

1. Create a New Project:


○ Go to the Google Cloud Console.
○ Click on the project dropdown and then click "New Project."
○ Fill in the project details and click "Create."

Link the Project to the SDK: After creating the project, link it to the SDK using:

gcloud config set project YOUR_PROJECT_ID

2. Replace YOUR_PROJECT_ID with the ID of your project.

Step 3: Enable App Engine in Your Project

Enable App Engine: Run the following command to enable the App Engine API
and create an App Engine application in your project:

gcloud app create


1. You will be prompted to select a region for your application.

Step 4: Prepare Your Application

1. Create a Project Directory: Create a new directory for your application:


mkdir my-app

cd my-app

2. Create the app.yaml Configuration File: In the my-app directory, create


a file called app.yaml to define your application settings. For example, for
a Python Flask app:

runtime: python39
entrypoint: gunicorn -b :$PORT main:app
Handlers:
- url: /.*
script: auto

Adjust the runtime and entrypoint for your specific programming


language and application.

3. Write Your Application Code: Add your application code to the directory.
For example, a simple Python Flask app (main.py):

from flask import Flask

app = Flask(__name__)

@app.route('/')
def hello():
return 'Hello, World!'

if __name__ == '__main__':
app.run(host='0.0.0.0', port=8080)
Step 5: Deploy Your Application

1. Deploy the Application: Deploy your application using the following


command:

gcloud app deploy

This will deploy your app to Google App Engine. After deployment, you’ll
receive a URL where your app is hosted.

2. Access Your Application: Open the URL provided to see your application
running on Google App Engine.

Step 6: Manage and Scale Your Application

You can manage and scale your application using the Google Cloud Console or the
gcloud command-line tool.

● View Logs:
gcloud app logs tail -s default
● Open the App in a Browser:
gcloud app browse

Develop application for Google App Engine Create hello world app

Prerequisites

1. Google Cloud Account: Ensure you have a Google Cloud account. If not,
you can sign up for a free trial at Google Cloud.
2. Google Cloud SDK: Install the Google Cloud SDK and initialize it using:
gcloud init
3. Create a Google Cloud Project: If you don’t have a project yet, create one
via the Google Cloud Console.

Step 1: Create a New Project Directory


Create a Directory:
mkdir hello-world-app

cd hello-world-app

1. Initialize the Google App Engine Project:


gcloud app create
2. You will be prompted to select a region for your application.

Step 2: Write the Application Code

Here’s how to create a simple "Hello, World!" app using Python with Flask:

1. Install Flask: If you don’t have Flask installed, do so using pip:


bash
Copy code
pip install Flask
2. Create the Application File: Create a file named main.py with the
following content:
from flask import Flask

app = Flask(__name__)

@app.route('/')
def hello():
return 'Hello, World!'

if __name__ == '__main__':
app.run(host='0.0.0.0', port=8080)

Step 3: Create the app.yaml Configuration File

The app.yaml file is used to configure your App Engine settings:

Create the app.yaml File: In the same directory as main.py, create a file
named app.yaml with the following content:
runtime: python39
entrypoint: gunicorn -b :$PORT main:app

handlers:
- url: /.*
script: auto

○ runtime: python39 specifies the Python runtime environment.


○ entrypoint is the command to start your application.

Step 4: Deploy the Application

Deploy the Application: Run the following command to deploy your app to
Google App Engine:
gcloud app deploy

1. This command will upload your application and configure it to run on


Google App Engine.

Access Your Application: After deployment, you can view your application by
running:
gcloud app browse

2. This command will open your app in a web browser, and you should see
"Hello, World!" displayed.

Step 5: Managing Your Application

You can use the Google Cloud Console or gcloud commands to manage your
app:

View Logs:
gcloud app logs tail -s default
● View the Application URL:
gcloud app browse

Set A:
1. Install and configure Google App Engine.

Set B:

1. Develop application for Google App Engine Create hello world app.

https://youtu.be/_-7Ftwk6YIY?si=WRs98bhANwPp44s2

https://youtu.be/n7-8yuWqBaA?si=3FBPHAokxegVAAUc
Assignment 6:
Cloud Security Implementation
Explanation
Cloud security implementation is a critical process that ensures the protection of
data, applications, and services in a cloud environment.
1. Implement Security Measures (Encryption and Access Control)
Step 1: Encryption
- Data-at-Rest Encryption:
- Ensure that your cloud storage (like AWS S3, Azure Blob Storage) is
encrypted using built-in encryption mechanisms.
- Example: Enable server-side encryption on an S3 bucket in AWS using AES-
256.
- Data-in-Transit Encryption:
- Use SSL/TLS protocols to encrypt data during transmission.
- **Example**: Configure HTTPS endpoints for web applications.

USE THIS CODE :


# AWS CLI command to enable server-side encryption on an S3 bucket
aws s3api put-bucket-encryption --bucket your-bucket-name --server-side-
encryption-configuration '{"Rules":[{"ApplyServerSideEncryptionByDefault":
{"SSEAlgorithm":"AES256"}}]}'

Step 2: Access Control:


Identity and Access Management (IAM)**:
- Define IAM roles and policies that grant the least privilege.
- Example: Create a policy that only allows certain users to access specific
resources.
- Role-Based Access Control (RBAC):
- Assign permissions based on user roles within the organization.

2. Setting Up IAM Roles and Policies in AWS

Step 1: Create IAM Roles


- Create a Role:
- Go to AWS IAM console, create a new role, and assign it the necessary
permissions.
- Example: A role that allows EC2 instances to access S3 buckets.

USE THIS CODE :


# AWS CLI command to create an IAM role
aws iam create-role --role-name EC2AccessRole --assume-role-policy-document
file://trust-policy.json

Step 2: Define IAM Policies


- Create and Attach Policies:
- Define policies that allow or deny specific actions.
- Attach these policies to users, groups, or roles.

USE THIS CODE


# AWS CLI command to attach a policy to a role
aws iam attach-role-policy --role-name EC2AccessRole --policy-arn
arn:aws:iam::aws:policy/AmazonS3ReadOnlyAccess

3. Create a Secure Storage Bucket and Configure Permissions

Step 1: Create a Secure Storage Bucket


- AWS S3:
- Create an S3 bucket with default encryption and restrict public access.
- Azure Blob Storage:
- Create a Blob Storage container with similar security configurations.

USE THIS CODE:


# AWS CLI command to create an S3 bucket with restricted public access
aws s3api create-bucket --bucket your-secure-bucket --region us-west-2 --acl
private
**Step 2: Configure Permissions:
Bucket Policies:
- Define and attach a bucket policy that limits access to specific IAM users or
roles.
- **Access Control Lists (ACLs)**:
- Use ACLs to fine-tune permissions for individual objects within the bucket.
USE THIS CODE
# Example bucket policy to restrict access to specific IP addresses
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Deny",
"Principal": "*",
"Action": "s3:*",
"Resource": "arn:aws:s3:::your-secure-bucket/*",
"Condition": {
"NotIpAddress": {
"aws:SourceIp": "203.0.113.0/24"
}
}
}
]
}

4. Program to Create, Manage, and Group User Accounts in Your Cloud

If you are managing your own cloud infrastructure, you might want to automate
the creation and management of user accounts, as well as install administrative
features. Here’s a simple example using Python and the Boto3 library for AWS.

Step 1: Install Required Libraries

Step 2: Write the Program


USE THIS CODE
import boto3

# Initialize a session using AWS credentials


session = boto3.Session(
aws_access_key_id='your-access-key-id',
aws_secret_access_key='your-secret-access-key',
region_name='us-west-2'
)

# Create IAM client


iam = session.client('iam')
def create_user(user_name):
try:
iam.create_user(UserName=user_name)
print(f"User {user_name} created successfully.")
except Exception as e:
print(f"Error creating user: {e}")

def create_group(group_name):
try:
iam.create_group(GroupName=group_name)
print(f"Group {group_name} created successfully.")
except Exception as e:
print(f"Error creating group: {e}")

def add_user_to_group(user_name, group_name):


try:
iam.add_user_to_group(GroupName=group_name, UserName=user_name)
print(f"Added user {user_name} to group {group_name}.")
except Exception as e:
print(f"Error adding user to group: {e}")

Create a user
create_user('new-user')

Create a group
create_group('admin-group')
Add user to group
add_user_to_group('new-user', 'admin-group')
This Python script allows you to:
- Create Users: Automate the creation of user accounts.
- Create Groups: Set up groups for easier permission management.
- Manage Group Membership: Add users to specific groups.

Implementing cloud security is a multi-faceted task that involves encryption,


access control, user management, and compliance. By following the steps above,
you can create a robust security framework in your cloud environment.

Set A:
a. Implement basic security measures on a cloud platform, such as setting up
IAM roles and policies in AWS or Azure.
b. Create a secure storage bucket and configure permissions.
Set B :
a. Implement security measures such as encryption and access control on a
cloud platform.
b. Write a Program to Create, Manage and groups User accounts in own Cloud
by Installing Administrative Features

Set C:
a. Explain the concept how cloud security can be implemented .
b. Watch these videos and write report on what did you learn
I. Cloud Secrurity Impementtaion
https://in.video.search.yahoo.com/search/video;_ylt=AwrKAJJyv8Jm
qQQAQKC7HAx.;_ylu=Y29sbwNzZzMEcG9zAzEEdnRpZAMEc2
VjA3Nj?
p=video+on+Cloud+Security+Implementation&fr=mcafee#id=2&vid
=07422492eb6a6e2fb6a49f571a236e3c&action=view
II. Cloud Implementation Policy
https://in.video.search.yahoo.com/search/
video;_ylt=AwrKAJJyv8JmqQQAQKC7HAx.;_ylu=Y29sbwNzZzM
EcG9zAzEEdnRpZAMEc2VjA3Nj?
p=video+on+Cloud+Security+Implementation&fr=mcafee#id=4&vid
=e2ce480c1c9d4ca5ed5144c1165c7e38&action=view
Assignment 7:
Exploring Future Trends in Cloud Computing -Understanding about Mobile
Cloud or Kubernetes

1. Understanding Mobile Cloud and Kubernetes Mobile Cloud

● Mobile Cloud Computing (MCC) integrates cloud computing and mobile


devices, enabling mobile applications to access cloud services and resources
like storage, processing power, and data management.
● Benefits:
○ Resource Efficiency: Offloads processing tasks from mobile devices
to cloud servers.
○ Scalability: Easily scale mobile applications by leveraging cloud
resources.
○ Data Synchronization: Ensures data consistency across multiple
devices and platforms.
● Use Cases:
○ Mobile Gaming: Cloud gaming platforms deliver high-quality games
to mobile devices without requiring powerful hardware.
○ Mobile Health (mHealth): Health applications store and process data
in the cloud, making it accessible to healthcare providers and patients
anywhere.

Kubernetes
● Kubernetes is an open-source container orchestration platform that
automates the deployment, scaling, and management of containerized
applications.
● Core Concepts:
○ Pods: The smallest deployable units in Kubernetes, usually containing
one or more containers.
○ Services: Abstracts access to a set of Pods, enabling load balancing
and service discovery.
○ Namespaces: Provide a way to divide cluster resources between
multiple users.
● Benefits:
○ Scalability: Automatically scales applications based on demand.
○ High Availability: Ensures application reliability with self-healing
capabilities.
○ Portability: Kubernetes abstracts underlying infrastructure, allowing
applications to run consistently across different environments.
● Use Cases:
○ Microservices: Efficiently manages and scales microservices
architectures.
○ Continuous Deployment: Automates the deployment pipeline,
integrating with CI/CD tools.

2. Implementing a Basic Example: Docker and Kubernetes

Step 1: Deploy a Docker Container on a Cloud Platform

1. Install Docker:
sudo apt-get update sudo apt-get install docker-ce docker-ce-cli
containerd.io

a. Create a Docker Image:

Dockerfile:
FROM nginx:latest
COPY ./html /usr/share/nginx/html
Build the Image:

docker build -t my-nginx .

● Run the Container:

docker run -d -p 80:80 my-nginx


● Deploy on a Cloud Platform (e.g., AWS, Azure):
○ Use a cloud service like AWS Elastic Container Service (ECS) or
Azure Container Instances (ACI) to deploy your Docker container.

Step 2: Set Up a Kubernetes Cluster Using a Managed Service

1. Google Kubernetes Engine (GKE) Example:


a. Create a Kubernetes Cluster

gcloud container clusters create my-cluster --zone us-central1-a --


num-nodes=3

b. Deploy a Containerized Application:


kubectl create deployment nginx-deployment --image=nginx

c. Expose the Deployment as a Service:


kubectl expose deployment nginx-deployment --
type=LoadBalancer -
d. Get the External IP Address:
kubectl get services

2. Azure Kubernetes Service (AKS) Example:

a. Create a Kubernetes Cluster

az aks create --resource-group myResourceGroup --name


myAKSCluster --node-count 3 --enable-addons monitoring --
generate-ssh-keys

b. Connect to the Cluster:


az aks get-credentials --resource-group myResourceGroup --name
myAKSCluster

c. Deploy and Expose the Application

kubectl apply -f nginx-deployment.yaml

kubectl expose deployment nginx-deployment --type=LoadBalancer --


port=80

3. Installation and Configuration of JustCloud

JustCloud is a cloud storage service. Here’s a basic guide to installing and


configuring it:

1. Sign Up for JustCloud:


○ Go to the JustCloud website and create an account.
2. Download and Install the JustCloud Client:
○ Download the client software from the website.
○ Install it on your system following the on-screen instructions.
3. Configuration:
○ Sign In: After installation, open the JustCloud client and sign in using
your account credentials.
○ Set Up Backup: Choose the files and folders you want to back up to
the cloud.
○ Sync Settings: Configure automatic sync settings to ensure your files
are always up-to-date.
4. Access and Manage Files:
○ Use the web interface or mobile app to access and manage your files
from anywhere.
By understanding mobile cloud computing and Kubernetes, you can leverage cloud
resources to build scalable and efficient applications.

Implementing a basic example using Docker and Kubernetes demonstrates the


practical aspects of deploying containerized applications on the cloud. Use
JustCloud offers a straightforward solution for cloud storage and file management.

Detailed Steps for Cloud Security Implementation, Docker, Kubernetes, and


JustCloud Setup

1. Deploy a Docker Container on a Cloud Platform

Step 1: Install Docker

Update your package list:

sudo apt-get update

1. Install prerequisites:

sudo apt-get install apt-transport-https ca-certificates curl software-


properties-common

2. Add Docker’s official GPG key:

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key


add -

3. Set up the Docker repository:


sudo add-apt-repository "deb [arch=amd64]
https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
4. Install Docker:
sudo apt-get update

sudo apt-get install docker-ce docker-ce-cli containerd.io

5. Verify the installation:


sudo docker --version

Step 2: Create and Run a Docker Container

Create a Dockerfile in your project directory:


Dockerfile

FROM nginx:latest

COPY ./html /usr/share/nginx/html

1. Build the Docker image:


docker build -t my-nginx .

2. Run the Docker container:


docker run -d -p 80:80 my-nginx

Step 3: Deploy Docker Container on AWS ECS

Login to AWS:

aws configure

1. Create an ECS cluster:


aws ecs create-cluster --cluster-name my-cluster
2. Create a task definition:
aws ecs register-task-definition --cli-input-json file://task-definition.json

3. (Ensure you have the task-definition.json file configured with your


Docker image details.)

Run the task on ECS:


aws ecs run-task --cluster my-cluster --task-definition my-task

2. Set Up a Kubernetes Cluster Using a Managed Service

Step 1: Create a Kubernetes Cluster on Google Kubernetes Engine (GKE)

1. Install Google Cloud SDK:


○ Follow the installation guide.

Authenticate with Google Cloud:


gcloud auth login

2.

Set your project:


gcloud config set project [PROJECT_ID]

3. Create a Kubernetes cluster:

gcloud container clusters create my-cluster --zone us-central1-a --num-


nodes=3

4. Get authentication credentials:


gcloud container clusters get-credentials my-cluster --zone us-central1-a
Step 2: Deploy a Containerized Application on GKE

Deploy NGINX on Kubernetes:


kubectl create deployment nginx-deployment --image=nginx

1. Expose the Deployment as a Service:


kubectl expose deployment nginx-deployment --type=LoadBalancer --port
80

2. Get the External IP Address:


kubectl get services

3. Access the application using the external IP in your browser.

3. Installation and Configuration of JustCloud

Step 1: Sign Up for JustCloud

1. Go to JustCloud website.
2. Create an account by providing your email and password.

Step 2: Download and Install the JustCloud Client

1. Download the client:


○ Go to the Download Page.
2. Install the software:
○ Run the installer and follow the on-screen instructions to complete the
installation.

Step 3: Configuration

1. Sign in: Open the JustCloud client and sign in using your credentials.
2. Set up backup:
○ Choose the folders and files you want to back up to the cloud.
○ Configure the backup frequency and other preferences.
3. Enable sync settings:
○ Ensure that your files are synchronized across devices by enabling
sync settings in the client.

Step 4: Access and Manage Files

1. Use the JustCloud web interface:


○ Log in to your account at JustCloud to access and manage your files.
2. Install the mobile app:
○ Download the JustCloud app from your app store to manage files on
the go.

These detailed steps cover the installation, deployment, and configuration


processes for Docker containers on a cloud platform, setting up a Kubernetes
cluster using GKE, and configuring JustCloud. This guide should help you
complete your assignments and explore the future trends in cloud computing.

Set A :
1. Implement a basic example or simulation related to the chosen topic (e.g.,
set up a containerized application using Docker and Kubernetes).
Containers: Deploy a Docker container on a cloud platform.
Set B:
1. Kubernetes: Set up a Kubernetes cluster using a managed service (e.g.,
Google Kubernetes Engine, Azure Kubernetes Service).
2. Installation and Configuration of Justcloud
Set C :
1. Write short note on use and applications of Kubernetes

You might also like