6.CC Lab-Manual
6.CC Lab-Manual
6.CC Lab-Manual
AHMEDABAD
Laboratory Manual
Academic Year: 2023 - 2024
Prepared By:
2
Experiment No: 1 Date: / /
OBJECTIVES:
From this experiment, the student will be able to
● To get knowledge about Cloud Computing.
● To analyze different types of Cloud Computing platform along with its architecture
THEORY:
Cloud computing enables companies to consume compute resources as a utility -- just like
electricity -- rather than having to build and maintain computing infrastructures in-house. Cloud
computing promises several attractive benefits for businesses and end users.
3
● Platform as a Service (PaaS) means you develop applications using Web-based tools so
they run on systems software and hardware provided by another company. So, for
example, you might develop your own ecommerce website but have the whole thing,
including the shopping cart, checkout, and payment mechanism running on a merchant's
server. Force.com (from salesforce.com) and the Google App Engine are examples of
PaaS.
Eucalyptus is a Linux-based open-source software architecture for cloud computing and also a
storage platform that implements Infrastructure a Service (IaaS). It provides quick and efficient
computing services. Eucalyptus was designed to provide services compatible with Amazon’s
EC2 cloud and Simple Storage Service(S3).
● OpenStack
OpenStack is a cloud OS that is used to control the large pools of computing, storage, and
networking resources within a data center. OpenStack is an open-source and free software
platform. This is essentially used and implemented as an IaaS for cloud computing.
We can call OpenStack a software platform that uses pooled virtual resources to create and
manage private and public clouds. OpenStack offers many cloud-related services (such as
networking, storage, image services, identity, etc.) by default. This can be handled by users
through a web-based dashboard, a RESTful API, or command-line tools. OpenStack manages a
lot of virtual machines; this permits the usage of physical resources to be reduced.
● OpenNebula
OpenNebula is a powerful, but easy-to-use, open source platform to build and manage Enterprise
Clouds. OpenNebula provides unified management of IT infrastructure and applications,
avoiding vendor lock-in and reducing complexity, resource consumption and operational costs.
The purpose of Kernel-Based Virtual Machine (KVM) is to provide the ability of virtualization to
Linux. It is an open-source technology which allows Linux machines (host) to run different
environments called virtual machines. Each virtual machine represents a different Linux process.
Each Virtual Machine has its own copy of hardware such as memory, processor, and also
software that allows the use of resources to a greater extent causing more reliability.
4
Reference No. Reference Name
1 https://edisciplinas.usp.br/pluginfile.php/318402/course/section/93669/
V3I5 201427_3.pdf
2 https://www.geeksforgeeks.org/how-to-create-virtual-machines-in-linux-
usin
g-kvm-kernel-based-virtual-machine/,https://www.geeksforgeeks.org/
introdu ction-to-openstack/
EXERCISE:
EVALUATION:
Problem Understandi Timely
Analysis & ng Level Mock
Solution (3) Total
(3) (2)
Completion
(10)
(2)
5
Experiment No: 2 Date: / / TITLE: To study about creating a Cloud Organization in
AWS/Google Cloud.
OBJECTIVES:
From this experiment, the student will be able to
● To get knowledge about how to create a Cloud.
● To analyze different types of Cloud Organization platform along with its different
capabilities.
THEORY:
Creating a cloud organization in AWS (Amazon Web Services) and Google Cloud involves
setting up the foundational structure for managing your cloud resources efficiently. Here's a brief
overview of how you can set up organizations in both AWS and Google Cloud:
AWS ORGANIZATION:
Amazon Web Services (AWS) provides AWS Organizations, which enables you to centrally
manage and govern multiple AWS accounts. With AWS Organizations, you can:
Create an Organization: Sign in to the AWS Management Console with your AWS
account and create an organization. You'll be the "master" account for this
organization. Organizational Units (OUs): Organize accounts into OUs based on
criteria like departments, teams, or applications.
Consolidated Billing: Set up consolidated billing to receive a single bill for all the
accounts in your organization.
Service Control Policies (SCPs): Apply SCPs to restrict permissions across accounts,
ensuring compliance and security.
Cross-Account Access: Share resources securely across accounts by using IAM roles.
To get started with AWS Organizations, you can refer to the official AWS documentation: AWS
Organizations Documentation
Google Cloud Platform (GCP) provides a similar organizational structure for managing
resources, known as Google Cloud Organization. Here's how you can set it up:
● Create a Google Cloud Organization: Sign in to the Google Cloud Console and create a
new organization. You'll be the "owner" of this organization.
● Folder Hierarchy: Organize resources into a hierarchical structure using folders. Folders
can represent departments, projects, or environments.
● IAM Policies: Use Identity and Access Management (IAM) policies to manage access
control at the organization, folder, and project levels.
6
● Billing Management: Set up billing accounts and link them to your organization to manage
billing centrally.
● Resource Management: Delegate administrative responsibilities by assigning roles at
different levels of the organization hierarchy.
For detailed instructions on setting up a Google Cloud Organization, refer to the official Google
Cloud documentation: Google Cloud Organization Documentation
Both AWS Organizations and Google Cloud Organization offer features for managing multiple
accounts, controlling access, enforcing policies, and optimizing costs. Choose the one that best
fits your requirements and start organizing your cloud resources effectively.
Reference Reference Name
No.
1 https://cloud.google.com/resource-manager/docs/creating-managing-
organi zation
2 towardsthecloud.com/aws-organization
3 https://www.serverless.com/framework/docs/providers/aws/guide/
credentials
EXERCISE:
1. Write the steps for creating a Cloud Organization in any Open Source cloud softwares like
Openstack.
2. Explain Cloud service Models(IaaS,PaaS,SaaS) in detail.
EVALUATION:
Problem Understandi Timely
Analysis & ng Level Mock
Solution (3) Total
(3) (2)
Completion
(10)
(2)
7
Experiment No: 3 Date: / / TITLE: To study about an Installation of
Virtualbox/Vmware.
OBJECTIVES:
After completing this experiment students will be able to…
● Learn about virtualBox and VMware.
● Install Virtualbox or Vmware.
THEORY:
What is VMware?
As its name implies, the use of VMware – or 'Virtual Machine' ware – creates a virtual machine
on your computer. This can help businesses better manage their resources and make them more
efficient. Indeed, the use of 'virtualisation' on a business server has many advantages, including
reduced IT costs.
Virtualization also enables businesses to get the most out of their investment in hardware and
resources by using various constraints, scheduling and partitioning to increase the flexibility of
the computing environment.
VMware allows businesses to run multiple application and operating system workloads on the
one server – thus enabling better resource management.
By creating a virtual machine that behaves exactly like an actual computer – VMware also allows
everything running on that virtual machine to run in its own window.
This means IT service providers can install an operating system and the software of their choice
on as many ‘virtual machines’ as they like – with each one stored as a file on the hard drive.
One of the biggest advantages of running VMware is you can install and test software without it
affecting your actual computer.
Another advantage is you can run software on a virtual machine that may not work on the
operating system that you have installed.
For example, if you have a Mac, you can install Windows on a virtual machine to allow yourself
to run Windows programs.
Developers use VirtualBox to produce code quicker by testing apps on different operating
systems and versions on the same desktop they use for development, then automatically
deploying their VMs to production settings.
8
Reference No. Reference Name
1 https://www.javatpoint.com/virtualbox-installation
2 https://www.wikihow.com/Install-VirtualBox
3 https://www.vmware.com/in/products/workstation-pro/workstation-
pro-ev aluation.html
EXERCISE:
1. Install and write the steps for installing Virtualbox/VMware/ Equivalent open source cloud
Workstation (Openstack).
2. Explain cloud Virtualization and characteristics of Virtualization.
EVALUATION:
Problem Understandi Timely
Analysis & ng Level Mock
Solution (3) Total
(3) (2)
Completion
(10)
(2)
9
Experiment No: 4 Date: / / TITLE: To study about installation of Python in the virtual
machine.
OBJECTIVES:
After completing this experiment students will be able to…
● Learn about how Python works in a virtual machine.
● Install Python in Virtualbox or Vmware.
THEORY:
The Python programming language is an increasingly popular choice for both beginners and
experienced developers. Flexible and versatile, Python has strengths in scripting, automation,
data analysis, machine learning, and back-end development.
Steps
There are four basic steps to install a virtual environment on windows:
1. Install Python
2. Install PIP
3. Install VirtualEnv & Activate
4. Install VirtualEnvWrapper-win
Python.org offers a number of different incarnations of Python for Windows. In addition to the
32-bit (“x86”) and 64-bit (“x86-64”) versions already mentioned, you can choose from the
embeddable zip file, the executable installer, and the web-based installer. Here’s what those are
all about:
The executable installer is just an .EXE file that runs the setup process for Python. This is the
easy default choice, and the most commonly used.
The web-based installer is the same as the executable installer, except that it separately
downloads the bits needed to perform the install. This dramatically reduces the size of the actual
installer, but of course requires a network connection.
The embeddable zip file is a self-contained, minimal copy of the Python runtime that fits in a
single folder with no dependencies. It’s useful to bundle in when you want to distribute a Python
app manually, or when you need a quick, one-off Python install to test something on the fly. But
the embeddable zip doesn’t include pip or any of the other useful tools that come with a full
install, so it’s for expert use only.
Reference No. Reference Name
1 https://www.digitalocean.com/community/tutorials/install-python-windows-10 2
https://medium.com/analytics-vidhya/virtual-environment-6ad5d9b6af59
10
EXERCISE:
1. Write the steps to install Python in the virtual machine created using
VirtualBox/VMware and execute Simple Programs.
2. Define : Scalability and elasticity in cloud data centers.
3. Discuss Hypervisors in detail.
EVALUATION:
Problem Understandi Timely
Analysis & ng Level Mock
Solution (3) Total
(3) (2)
Completion
(10)
(2)
11
Experiment No: 5 Date: / / TITLE: To study about creating type 2 virtualization and
desktop virtualization.
OBJECTIVES:
After completing this experiment students will be able to…
● Learn about virtualization.
● Create Desktop virtualization using remote desktop.
THEORY:
Virtualization is technology that you can use to create virtual representations of servers, storage,
networks, and other physical machines. Virtual software mimics the functions of physical
hardware to run multiple virtual machines simultaneously on a single physical machine. Type 1
hypervisor
A type 1 hypervisor, or a bare metal hypervisor, interacts directly with the underlying machine
hardware. A bare metal hypervisor is installed directly on the host machine’s physical hardware,
not through an operating system. In some cases, a type 1 hypervisor is embedded in the
machine’s firmware.The type 1 hypervisor negotiates directly with server hardware to allocate
dedicated resources to VMs. It can also flexibly share resources, depending on various VM
requests.
Type 2 hypervisor
A type 2 hypervisor, or hosted hypervisor, interacts with the underlying host machine hardware
through the host machine’s operating system. You install it on the machine, where it runs as an
application.The type 2 hypervisor negotiates with the operating system to obtain underlying
system resources. However, the host operating system prioritizes its own functions and
applications over the virtual workloads.
Desktop Virtualization
Desktop virtualization is a method of simulating a user workstation so it can be accessed from a
remotely connected device. By abstracting the user desktop in this way, organizations can allow
users to work from virtually anywhere with a network connection, using any desktop laptop,
tablet, or smartphone to access enterprise resources without regard to the device or operating
system employed by the remote user.
EXERCISE:
1. Write steps to create type 2 virtualization in VMWARE or any equivalent Open Source
Tool.
2. Write steps to create desktop Virtualization using Chrome Remote Desktop.
EVALUATION:
OBJECTIVES:
After completing this experiment students will be able to…
● Learn about Software Defined Network (SDN)
● Learn about working of IaC
THEORY:
What is SDN in a virtual machine?
Software-Defined Networking (SDN) is an approach to networking that uses software-based
controllers or application programming interfaces (APIs) to communicate with underlying
hardware infrastructure and direct traffic on a network.
The basis of the SDN laboratory is a cloud created by the bare-metal servers, hypervisor and the
OpenStack cloud platform. The interconnection of individual servers is accomplished via VLAN-
enabled Ethernet switches, allowing the creation of three separate networks (management
network, instance network and storage network). In addition to these cloud networks, software-
defined networks will be created as needed, using virtually open vSwitch switches implemented
through the virtualization platform. The connection to external networks is made using a router.
EXERCISE:
1. Explain SDN in detail.Discuss types of SDN.
2. Brief automation tools of Iac( Infrastructure as Code) with special features.
3. Write steps for setting up a virtual SDN lab.
EVALUATION:
Problem Understandi Timely
Analysis & ng Level Mock
Solution (3) Total
(3) (2)
Completion
(10)
(2)
13
Experiment No: 7 Date: / / TITLE: A study and comparison on various cloud databases.
OBJECTIVES:
THEORY:
● A cloud database is a database built to run in a public or hybrid cloud environment to help
organize, store, and manage data within an organization. Cloud databases can be offered
as a managed database-as-a-service (DBaaS) or deployed on a cloud-based virtual
machine (VM) and self-managed by an in-house IT team.
The major advantages of moving to a cloud database are scalability, easy accessibility, and
security.
● In the Google Cloud console, go to the Cloud SQL Instances page. Go to Cloud SQL
Instances.
● To open the Overview page of an instance, click the instance name.
● Select Databases from the SQL navigation menu.
● Click Create database.
● In the New database dialog, specify the name of the database.
● Click Create.
14
EXERCISE:
1. Write differences among various cloud databases like Amazon RDS, Google Cloud SQL,
Microsoft Azure SQL database,IBM db2 on Cloud, Firebase Realtime database(NoSQL),
MongoDB Atlas (NoSQL), Oracle Cloud Autonomous Database(Include a comparison
table of Ease of software portability,maximum amount data to be stored,cost of using and
monthly payment factors).
EVALUATION:
Problem Understanding Total
Analysis & Timely (10)
Solution Mock
(3) Level
(2)
Completion
(3)
(2)
15
Experiment No: 8 Date: / / TITLE: A study and comparison on various cloud storage.
OBJECTIVES:
From this experiment, the student will be able to,
● Understand the concepts of cloud storage.
● Compare different types of cloud storages with specific factors.
THEORY:
Cloud Storage comes in three different types: object, file, and block.
Object
Object storage is a data storage architecture for large stores of unstructured data. It designates
each piece of data as an object, keeps it in a separate storehouse, and bundles it with metadata
and a unique identifier for easy access and retrieval.
File
File storage organizes data in a hierarchical format of files and folders. File storage is common in
personal computing where data is saved as files and those files are organized in folders. File
storage makes it easy to locate and retrieve individual data items when they are needed. File
storage is most often used in directories and data repositories.
Block
Block storage breaks data into blocks, each with an unique identifier, and then stores those
blocks as separate pieces on the server. The cloud network stores those blocks wherever it is most
efficient for the system. Block storage is best used for large volumes of data that require low
latency such as workloads that require high performance or databases.
16
EXERCISE:
1. Write differences among various cloud storages like Amazon S3,Google Cloud Storage,
Microsoft Azure Blob Storage, IBM Cloud Object Storage for its performance and
scalability.
EVALUATION:
Problem Understandi Timely
Analysis & ng Level Mock
Solution (3) Total
(3) (2)
Completion
(10)
(2)
17
Experiment No: 9 Date: / /
TITLE: To study about simulating resource management and secure file sharing using
Cloudsim.
OBJECTIVES:
From this experiment, the student will be able to,
● Understand about Cloudsim.
● Simulate resource management and file sharing using Cloudsim.
THEORY:
What is CloudSim?
CloudSim is a simulation toolkit that supports the modeling and simulation of the core
functionality of the cloud, like job/task queue, processing of events, creation of cloud
entities(datacenter, data center brokers, etc), communication between different entities,
implementation of broker policies, etc. This toolkit allows to:
● Test application services in a repeatable and controllable environment. ● Tune the system
bottlenecks before deploying apps in an actual cloud. ● Experiment with different workload
mix and resource performance scenarios on
simulated infrastructure for developing and testing adaptive application provisioning
techniques
What is resources management in cloud computing?
Resource management in cloud computing refers to the orchestration of cloud resources to meet
application demands, budget constraints, and security requirements. It involves provisioning,
monitoring, scaling, optimizing, and securing resources to ensure smooth operations and cost-
effectiveness.
EXERCISE:
18
Experiment No: 10 Date: / / TITLE: To study about creating and executing the first
container.
OBJECTIVES:
From this experiment, the student will be able to
● Learn about Docker platform
● Create and run the first container
THEORY:
What is Docker?
Docker is a platform for developing and running applications. It automates the deployment of
applications. It’s a tool for running applications in an isolated environment. Docker makes it
easy to share an application with all of its dependencies across different environments.
● The industry standard today is to use Virtual Machines (VMs) to run software applications.
VMs run applications inside a guest Operating System, which runs on virtual hardware
powered by the server’s host OS.
● VMs are great at providing full process isolation for applications: there are very few ways
a problem in the host operating system can affect the software running in the guest
operating system, and vice-versa. But this isolation comes at great cost — the
computational overhead spent virtualizing hardware for a guest OS to use is substantial.
● Containers take a different approach: by leveraging the low-level mechanics of the host
operating system, containers provide most of the isolation of virtual machines at a
fraction of the computing power.
EXERCISE:
1. Write the steps for creating your first container using Docker Platform.
EVALUATION:
19