Laboratory Task 1: Cloud Platform Familiarization
Objective
To explore basic services provided by cloud platforms such as AWS, Microsoft Azure, or
Google Cloud Platform.
Tools / Requirements
• Laptop
• Stable Internet Connection
• Web Browser (Google Chrome)
• Email ID
• Cloud Platform (AWS / Azure / Google Cloud)
Procedure / Steps
1. Open Google Chrome browser.
2. Go to [Link]
3. Click on Create a Free Account.
4. Enter email address, password, and account name.
5. Verify email using OTP.
6. Provide required personal details.
7. Complete verification and log in successfully.
1
Output
Figure 1:Account Creation
2
Figure 2:Dashboard of AWS
Cloud Service Models
1. IaaS (Infrastructure as a Service)
In this service, providers provide virtualized computing services like storage, networking, and
database.
Users rent these services without buying expensive hardware.
It is the basic building block for cloud.
3
2. PaaS (Platform as a Service)
It provides platform or tools for developers to build and deploy applications without worrying
about software and hardware.
Examples: Cloud Service, Microsoft Azure App, Google Drive Service App.
3. SaaS (Software as a Service)
It provides readymade software that helps to provide efficiency and scalability.
It uses software without installation on a computer (physical).
It is based on subscription model.
Examples: Netflix, Zoom, Gmail, Google Drive.
Conclusion
This lab helped in understanding cloud platforms and cloud service models. A free cloud account
was created successfully, and the differences between IaaS, PaaS, and SaaS were clearly studied
through practical exploration.
4
Laboratory Task 2: Web Application Hosting
Objective
To develop a basic web application and deploy it to a cloud-based hosting platform to understand
the lifecycle of web deployment and public accessibility.
Tools Used
• Portfolio project: HTML, CSS, etc.
• GitHub: To store the project.
• Netlify: For cloud hosting.
• Web browser: Microsoft Edge.
Steps
• Opened [Link] and logged into the account.
• Clicked on "Add new project".
• Selected "Import an existing project".
• Chose GitHub as the source.
• Selected the repository named "portfolio".
• Set the branch to main.
• Clicked on "Deploy portfolio".
• Netlify automatically created a live website.
• Opened the generated link to check the live website.
Output
Figure 1:Live link
5
Conclusion
The portfolio was successfully deployed using Netlify. GitHub integration enables automatic
updates on the main branch, demonstrating Continuous Deployment (CD) in a cloud environment.
6
Laboratory Task 3: Virtualization using VirtualBox
Objective
To understand virtualization concepts and different types of hypervisors by installing and
configuring a virtual machine using VirtualBox.
Tools
• Computer or Laptop
• Oracle VM VirtualBox
• Ubuntu ISO File
• Minimum 4GB RAM
• Internet Connection
Procedure
1. Download and install Oracle VM VirtualBox from the official website
([Link]
2. Download the Ubuntu ISO file from [Link]
3. Open VirtualBox and click on New to create a new virtual machine.
4. Enter the VM name (e.g. Ubuntu VM) and select:
• Type: Linux
• Version: Ubuntu (64-bit)
5. Allocate memory (minimum 2GB recommended).
6. Create a virtual hard disk (VDI format, dynamically allocated).
7. Attach the Ubuntu ISO file to the virtual optical drive.
8. Start the virtual machine and install Ubuntu OS.
9. After installation, log into Ubuntu and open the terminal.
10. Python installation.
7
Output
Figure 5:Ubuntu VM Python Environment
1. Type 1 Hypervisor (Bare-Metal Hypervisor)
A Type 1 hypervisor runs directly on the physical hardware of a computer system. It does not
require a host operating system to function. Because it operates directly on hardware, it provides
better performance, efficiency, and [Link] 1 hypervisors are mainly used in enterprise
environments, data centers, and cloud computing platforms such as Amazon Web Services (AWS)
and Microsoft Azure.
Examples:
• VMware ESXi
• Microsoft Hyper-V
• KVM (Kernel-based Virtual Machine)
Advantages:
• High performance due to direct access to hardware
• Strong security as there is no intermediate operating system
• Suitable for mission-critical and enterprise workloads
Disadvantages:
• Requires dedicated hardware
• Installation and management are more complex
8
2. Type 2 Hypervisor (Hosted Hypervisor)
A Type 2 hypervisor runs on top of a conventional operating system such as Windows, macOS, or
Linux. It works as an application installed within the host operating system.
This type of hypervisor is commonly used for desktop virtualization, development, testing, and
educational purposes. Its performance is slightly lower than Type 1 hypervisors because it depends
on the host operating system.
Examples:
• Oracle VM VirtualBox
• VMware Workstation
• Parallels Desktop
Advantages:
• Easy to install and use
• Suitable for development and testing
• Does not require dedicated hardware
Disadvantages:
• Slower performance compared to Type 1
• Security depends on the host operating system
Conclusion
In this laboratory task, virtualization was successfully implemented using Oracle VM VirtualBox.
An Ubuntu virtual machine was created and configured properly. The experiment helped in
understanding the differences between Type 1 and Type 2 hypervisors and their applications in
cloud computing and enterprise environments.
9
Laboratory Task 4: Cloud-Based Office Application (Google Docs)
Objective
To understand Software as a Service (SaaS) using Google Docs and explore its cloud storage and
real-time collaboration features.
Tools / Requirements
• Laptop/PC with internet connectivity
• Web Browser (e.g., Google Chrome)
• Personal Google Account
• Collaborator with a Google Account
Procedure
1. Open [Link] and sign in.
2. Create a new blank document and rename it “Cloud Computing Lab”.
3. Write a short explanation about Google Docs as a SaaS application.
4. Click Share, add classmate’s email, and provide Editor permission.
5. Observe real-time collaboration.
Output
Figure 6: Google Docs Interface and Collaboration Features
10
Observation Findings
• SaaS Characteristics: No software installation; auto-saved in cloud.
• Real-Time Edits: Classmate edits visible instantly.
• Communication: Comments allowed discussion within the document.
Conclusion
Google Docs demonstrates the SaaS model, providing centralized cloud-based
collaboration and eliminating manual file sharing.
11
Laboratory Task 5: Cloud-Based Programming Platform (Google Colab)
Objective
To explore Google Colab as a cloud-based computing environment and run Python programs using
cloud resources.
Tools
• Web browser (Chrome, Firefox, Edge, etc.)
• Internet connection
• Google account
• Google Colab ([Link]
Procedure
• Open Google Colab in a web browser.
• Sign in with Google account.
• Create a new Python notebook.
• Write and run a Python program.
Output
Figure7:Output of python program for sum and factorial calculations
12
Explain Cloud Resource Usage
Google Colab provides cloud-based computational resources:
• Runs code on a remote virtual machine (VM) hosted by Google.
• Provides access to CPU, GPU, or TPU for high-performance tasks.
• Offers temporary storage and integration with Google Drive for persistent storage.
• Pre-installed Python libraries allow quick access to data analysis and machine learning
tools.
• Users can perform computations without relying on local computer resources.
Conclusion
Google Colab provides cloud-based computing, enabling Python programming with remote
hardware resources and easy integration with Google Drive.
13
Laboratory Task 6: Cloud Storage Integration with Colab Objective
Objective
To understand cloud storage services by integrating Google Drive with Google Colab..
Tools / Requirements
• Laptop or PC
• Google account
• Web browser (e.g., Google Chrome)
• Google Colab access ([Link]
Procedure / Steps
Step 1: Mount Google Drive in Google Colab.
Step 2: Create a folder named IT277_Lab in Google Drive.
Step 3: Save your notebook file into the IT277_Lab folder.
Output
Figure8:Connecting Google Colab to Google Drive
Cloud Storage Benefits
• Files accessible from any device.
• Automatic backup with version history.
• Seamless integration with Colab for running notebooks directly in cloud.
14
Conclusion
Cloud storage ensures accessibility and security of files while simplifying collaboration and
backup.
15
Laboratory Task 7: MapReduce Word Count using Google Colab
Objective
To implement MapReduce programming model for big data processing using Google Colab.
Tools
• Google Account
• Google Colab ([Link]
• Python Programming Language
• mrjob library (!pip install mrjob)
• Sample text file
Procedure
1. Open Google Colab in a web browser.
2. Click on New Notebook.
3. Install the mrjob library using:
4. !pip install mrjob
5. Write a Python program implementing the Map and Reduce functions for Word Count.
6. Upload or create a sample text file inside Colab.
7. Run the program to generate word frequency output.
8. Observe and analyze the results.
16
Output
Figure 92:MapReduce Word Count
Explain how this simulates the MapReduce model on a cloud-based platform.
Running the Word Count task in Google Colab using Python functions (or libraries like mrjob)
successfully simulates the MapReduce architecture through the following key mechanisms:
1. Functional Partitioning (Map and Reduce)
The implementation directly applies the two core phases of the MapReduce model:
• Mapper Phase:
The mapper(text) function simulates the Map Phase
( map(k1, v1) → list(k2, v2) ).
It breaks the input text into individual words and assigns a value of 1 to each word,
generating key-value pairs.
• Reducer Phase:
The reducer(mapped_data) function simulates the Reduce Phase
( reduce(k2, list(v2)) → output ).
It groups identical keys (words) and sums their values to produce final word counts.
17
2. Simulation of the Shuffle Phase (Data Flow)
In a real distributed cloud cluster, intermediate data is transferred between nodes.
• Passing the mapped_output to the reducer simulates the Shuffle and Sort Phase.
• The system organizes intermediate results so that identical keys are grouped together
before reduction.
3. Utilization of Cloud-Based Elasticity
By using Google Colab, computation occurs on a cloud-based virtual machine instead of local
hardware.
• Virtualization:
The program runs on a Google-provided VM, demonstrating elastic resource allocation.
• Remote Processing:
The computation is executed in a remote data center, similar to how organizations submit
big data jobs to cloud clusters.
4. Batch Processing Strategy
The lab simulates enterprise-style batch processing:
• Fixed input dataset (text file)
• Fully automated execution after running the code
• Entire dataset processed at once
• Final summarized output generated
5. Abstraction of Complexity
MapReduce abstracts the complexity of distributed computing.
• The developer writes only Map and Reduce logic.
• Google Colab manages memory, execution, and infrastructure.
• The platform acts like a Master Node, controlling computation flow.
Conclusion
The MapReduce Word Count program was successfully implemented in Google Colab. The
experiment demonstrated how the Map, Shuffle, and Reduce phases work together to process data
efficiently. By using a cloud-based platform, distributed computing concepts were simulated
without installing Hadoop, showing the practical benefits of cloud-based big data processing.
18
References
Amazon Web Services. (n.d.). Getting started with AWS. [Link]
Google. (n.d.). Google Colaboratory. [Link]
Oracle. (n.d.). Oracle VM VirtualBox. [Link]
Microsoft. (n.d.). Microsoft Azure. [Link]
Netlify. (n.d.). Netlify: Deploy your site. [Link]
Google. (n.d.). Google Docs. [Link]
MrJob Library. (n.d.). mrjob documentation. [Link]
19