Skip to main content

Command Palette

Search for a command to run...

Building a Cloud Storage Test Environment Using VirtualBox

Updated
7 min read
M

Mohamad's interest is in Programming (Mobile, Web, Database and Machine Learning). He is studying at the Center For Artificial Intelligence Technology (CAIT), Universiti Kebangsaan Malaysia (UKM).

Objective

In this lab, students will:

  • Install Oracle VirtualBox

  • Import a preconfigured Xubuntu virtual machine

  • Update the operating system

  • Install common Linux administration tools

  • Explore virtual machine storage concepts

  • Install Firefox for cloud service research

  • Prepare a Linux environment for future Docker and cloud storage exercises

By the end of this exercise, students will have a fully functional Linux virtual machine that can be used throughout the Cloud+ course.


Background

Cloud computing relies heavily on virtualization technologies. Most cloud virtual machines run on virtualized infrastructure where storage is presented as virtual disks.

Before learning about cloud storage technologies such as block storage, file storage, object storage, storage tiers, and storage performance, students should understand how a virtual machine consumes and manages storage resources.

The Xubuntu virtual machine used in this lab simulates a cloud virtual machine similar to:

  • Amazon EC2

  • Microsoft Azure Virtual Machine

  • Google Compute Engine

The virtual disk attached to the VM behaves similarly to cloud block storage services such as:

  • AWS Elastic Block Store (EBS)

  • Azure Managed Disks

  • Google Persistent Disk


Part 1 – Install Oracle VirtualBox

Step 1

Download Oracle VirtualBox:

https://www.virtualbox.org/wiki/Downloads

Install VirtualBox using the default settings.


Step 2

Launch VirtualBox.

Verify that VirtualBox Manager opens successfully.

Deliverable

Capture a screenshot showing VirtualBox Manager running.


Part 2 – Import Xubuntu Focal Fossa Virtual Machine

Step 1

Download the Xubuntu Focal Fossa OVA file:

https://archive.org/download/xubuntu-focal_202306/XubuntuFocal.ova


Step 2

Open VirtualBox.

Select:

File → Import Appliance

Browse and select:

XubuntuFocal.ova

Click:

Next → Finish

Wait for the import process to complete.


Step 3

Start the virtual machine.

Log in using the credentials provided by the instructor.

Deliverable

Capture a screenshot showing the Xubuntu desktop.


Part 3 – Examine Virtual Machine Storage

Step 1

Power off the virtual machine.

Open:

Settings → Storage

Observe:

  • Storage Controller

  • Virtual Disk

  • Disk Capacity

  • Storage Configuration

Record:

  • Virtual disk size

  • Storage controller type

  • Number of attached disks

Discussion Questions

  1. Is the disk physically installed inside your computer?

  2. What is a virtual disk?

  3. How does a virtual disk compare to cloud block storage?

  4. Which cloud services provide similar functionality?

Deliverable

Capture a screenshot showing the VM Storage settings.


Part 4 – Update the Operating System

Start the virtual machine.

Open Terminal.

Execute:

sudo apt update -y && sudo apt upgrade -y

Wait for all updates to complete.

Discussion Questions

  1. Why should cloud servers be updated regularly?

  2. What security risks exist when systems are not patched?

Deliverable

Capture a screenshot showing successful completion of updates.


Part 5 – Install OpenSSH Server

Step 1

Install OpenSSH Server:

sudo apt install openssh-server -y

Step 2

Enable SSH service:

sudo systemctl enable ssh

Step 3

Verify SSH status:

sudo systemctl status ssh

Expected result:

active (running)

Discussion Questions

  1. What is SSH?

  2. Why do cloud administrators commonly use SSH instead of graphical access?

  3. How are AWS EC2 and Azure Linux VMs commonly managed?

Deliverable

Capture a screenshot showing the SSH service running.


Part 6 – Install Git

Install Git:

sudo apt install git -y

Verify installation:

git --version

Discussion Questions

  1. What is Git used for?

  2. Why is Git commonly installed on cloud servers?

  3. What is the relationship between Git and DevOps?

Deliverable

Capture a screenshot showing the Git version.


Part 7 – Install Nano Text Editor

Nano is a beginner-friendly command-line text editor commonly used in Linux environments. Unlike Vim, Nano displays command shortcuts directly on the screen, making it easier for new Linux users.

Step 1

Install Nano:

sudo apt install nano -y

Step 2

Verify installation:

nano --version

Step 3

Create a test file:

nano mynotes.txt

Add the following text:

My first cloud storage lab.

Save the file:

Ctrl + O

Press Enter

Exit Nano:

Ctrl + X


Step 4

Verify file creation:

cat mynotes.txt

Discussion Questions

  1. Why are text editors important for Linux administration?

  2. What advantages does Nano provide for beginners?

  3. Why do cloud administrators often edit configuration files from the terminal?

Deliverable

Capture a screenshot showing Nano editing a file.


Part 8 – Install Firefox Web Browser

Step 1

Install Firefox:

sudo apt install firefox -y

Verify installation:

firefox --version

Step 2

Launch Firefox:

firefox

or

Applications → Internet → Firefox


Step 3

Visit the following websites:

AWS Storage

https://aws.amazon.com/storage/

Azure Storage

https://azure.microsoft.com/products/storage

Google Cloud Storage

https://cloud.google.com/storage

Explore the storage products offered by each provider.

Discussion Questions

  1. Which AWS service provides block storage?

  2. Which AWS service provides object storage?

  3. Which Azure service provides file storage?

  4. Which Google Cloud service provides object storage?

  5. Which provider appears to offer the broadest range of storage services?

Deliverable

Capture screenshots showing:

  • AWS Storage page

  • Azure Storage page

  • GCP Storage page


Part 9 – Install Python 3 and Pip

Install Python package manager:

sudo apt install python3-pip -y

Upgrade Pip:

sudo pip install -U pip

Verify installation:

python3 --version
pip --version

Discussion Questions

  1. Why is Python commonly used in cloud administration?

  2. What cloud automation tasks can Python perform?

  3. How does Python support Infrastructure as Code (IaC)?

Deliverable

Capture screenshots showing Python and Pip versions.


Part 10 – Reboot and Verify Persistence

Restart the operating system:

sudo reboot

After rebooting, verify:

  • SSH is still running

  • Git is installed

  • Nano is installed

  • Firefox is available

  • Python is available

  • mynotes.txt still exists

Verify:

cat mynotes.txt

Discussion Questions

  1. Why does the file still exist after reboot?

  2. What does this demonstrate about persistent storage?

  3. How does persistent storage differ from RAM?

Deliverable

Capture a screenshot showing the desktop after reboot.


Reflection Questions

  1. What is a virtual disk?

  2. How does a virtual machine consume storage?

  3. How is VirtualBox storage similar to AWS EBS?

  4. Why is persistent storage important?

  5. What would happen if the virtual disk became full?

  6. Which cloud provider's storage portfolio was easiest to understand?

  7. How does this lab relate to cloud storage concepts?


Learning Outcomes

After completing this lab, students will be able to:

  • Install and configure a virtual machine

  • Understand virtual disk storage concepts

  • Manage Linux operating systems

  • Configure remote administration using SSH

  • Install common Linux administration tools

  • Use Nano to edit files in Linux

  • Research cloud storage services from AWS, Azure, and GCP

  • Relate VirtualBox storage to cloud block storage

  • Prepare a platform for Docker and future cloud storage exercises

12 views