design and implementation of the workflow of an academic …mcs112576/baadal_slides.pdf · 50 tb of...
TRANSCRIPT
Design and Implementation of the
Workflow of an Academic Cloud
Abhishek Gupta, Jatin Kumar, Daniel J Mathew,
Sorav Bansal, Subhashis Banerjee, Huzur Saran
IIT Delhi
Introduction
Why move to the cloud?
Lower cost
Higher utilization of computing resources
Ease of management
Why have a private cloud?
Privacy
Security
Design and Implementation of the Workflow
of an Academic Cloud
2
A Typical Academic Scenario
IIT Delhi
8000 students
450 faculty members
1000+ workstations
Many labs and server rooms across campus
Issues
High costs: hardware, power, management
Required: consolidation
Design and Implementation of the Workflow
of an Academic Cloud
3
Requirements for an IaaS Academic Cloud
Workflow: should be simple and usable by all
Cost and configurability: ideal if open source
Performance: both compute and I/O performance are
required
Maximize resource utilization
Design and Implementation of the Workflow
of an Academic Cloud
4
Currently Available Private Cloud Solutions
Ubuntu Enterprise Cloud
Familiarity with both Ubuntu and Eucalyptus required
Documentation is insufficient
Not highly customizable
Eucalyptus does provide a API …
VMWare vCloud
One of the most stable cloud platforms, but…
Licensing costs are very high
These private cloud solutions are for enterprise use; what
about an academic setup?
Design and Implementation of the Workflow
of an Academic Cloud
5
Baadal: Overview
Baadal = cloud (in Hindi)
Technology stack
Design and Implementation of the Workflow
of an Academic Cloud
6
Baadal
Web2py
Libvirt
Hypervisor Layer
Blade Server
Baadal: Components
Design and Implementation of the Workflow
of an Academic Cloud
7
Baadal: Workflow
Step 1: User logs in
Design and Implementation of the Workflow
of an Academic Cloud
8
Baadal: Workflow
Step 2:
User gives the
specifications of the VM: name,
operating system template and
RAM.
He also specifies a
faculty member who will
approve this request.
Design and Implementation of the Workflow
of an Academic Cloud
9
Baadal: Workflow
Design and Implementation of the Workflow
of an Academic Cloud
10
Step 3:
Faculty member logs in. He approves/rejects the requests that
have queued up till then. This request now goes to the data
center administrators who will give the final approval.
Baadal: Workflow
Step 4:
Data center administrator logs in. He appropriately approves,
modifies or rejects the requests approved by faculty.
Design and Implementation of the Workflow
of an Academic Cloud
11
Baadal: Workflow
Step 5:
Once the request is approved, an appropriate host is
selected.
Step 6:
A pre-installed template with the required OS and
software is deployed to the selected host. A new port
on the perimeter server is forwarded to the VNC port
of the newly created VM. A VNC password is also
configured.
Design and Implementation of the Workflow
of an Academic Cloud
12
Baadal: Workflow
Design and Implementation of the Workflow
of an Academic Cloud
13
Step 7: The connection details (IP address, VNC port and
password) are sent to the user.
Cost Model and over-provisioning
Gold (1:1), Silver (1:2), Bronze (1:4) and Shutdown
Users are expected to switch levels while the machine is
running; no reboot required
Users are charged accordingly
Design and Implementation of the Workflow
of an Academic Cloud
14
Scheduler
On runlevel change, a VM is live-migrated to an
appropriate host
Greedy scheduling strategy used to find new host
On spawning/starting a VM our algorithm assigns an
appropriate host
Design and Implementation of the Workflow
of an Academic Cloud
15
Perimeter server
Fixed IP:port combination not possible due to migrations
Perimeter server maps user ports to actual IP:port
combinations using iptables to do packet forwarding
Design and Implementation of the Workflow
of an Academic Cloud
16
With granularity of day, week and month to influence user’s
choice of runlevel
Performance Graphs
Design and Implementation of the Workflow
of an Academic Cloud
17
Other Features
Wake-On-Lan
Task Queues
Support for multiple datastores
Automated emails/reminders
Storage-specific plugins to optimize operations
Design and Implementation of the Workflow
of an Academic Cloud
18
Baadal: Infrastructure
32 blade servers each with 2x6 core Intel® Xeon® CPU
X5670 @ 2.93GHz and 16 GB RAM
16 blade servers each with 2x4 core Intel® Xeon® CPU
E5540 @ 2.53GHz and 12 GB RAM
A 10Gbps Ethernet backbone
50 TB of virtualized storage based on a NetApp 3210V NAS
and HP EVA6400 SAN with FC disks
Design and Implementation of the Workflow
of an Academic Cloud
19
Baadal: Performance
Test1 KVM + Desktop2 KVM + Server3 VMWare + Server4
Empty loop
(10,000,000)
21840 us 44321 us 44553 us
Fork (1,000,000) 29.72s 6.88s 3.97s
wget (685.29MB) 54.09s 20.36s 9.5s
cp (685.29MB) 71.97s 11.65s 26.07s
iscp (685.29MB) 29.64s 52.34s 4.75s
oscp (685.29MB) 73.54s 83.68s 4.86s
Ping hypervisor 0.2886s 0.3712s 0.1204s
Design and Implementation of the Workflow
of an Academic Cloud
20
1. Each VMs is allocated 1GB RAM, 1 vCPU and a 10 GB hard disk.
2. Desktops used are lab machines with typical configuration as 4GB RAM, C2D, 500GB hard disk
on a 1Gbps Ethernet
3. KVM + Server refers to KVM hypervisor running on HP Proliant BL460cG7 (16GB RAM, 24
CPU, 10Gbps Ethernet)
4. VMWare + Server refers to VMWare as hypervisor running on Dell PowerEdge R710 (24GB
RAM, 16 CPU, 10Gbps Ethernet)
Changes to Baadal [by CSC@IITD]
We are not handing over the port number for connecting to
the VNC server due to network traffic issues and also most of
the Linux users can use SSH and Windows users can use
Remote Desktop from inside Windows. But we have kept VNC
ports for administration purposes.
We are using Kerberos for back-end authentication; it can be
easily replaced by any other authentication mechanism using
inbuilt Web2py authentication modules.
Faculty/students in the admin team have two roles i.e. normal
user and administrator, which they can switch between.
Design and Implementation of the Workflow
of an Academic Cloud
21
Future Work: Community-based Cloud
Design and Implementation of the Workflow
of an Academic Cloud
22
Can be used to put under-utilized resources like lab
machines to good use
Challenges
Reliability
Network and storage topology
Scheduling
Solution for high reliability: record-replay
Already implemented successfully in Linux/KVM
References
1. Laor Kivity, Kamay, Lublin, and Liguori. KVM: The Linux Virtual
Machine Monitor. Virtualization Technology for Directed I/O.
Intel Technology Journal, 10:225-230, July 2007.
2. Libvirt, the virtualization API. http://www.libvirt.org.
3. Massimo DiPierro. Web2py Enterprise Web Framework, 2nd
Ed. Wiley Publishing, 2nd edition, 2009.
4. Ubuntu enterprise cloud - overview.
http://www.ubuntu.com/business/cloud/overview.
5. VMWare vCloud Director - deliver infrastructure as a
service without compromise.
http://www.vmware.com/products/vcloud-
director/features.html.
Design and Implementation of the Workflow
of an Academic Cloud
23
Thank You
Questions?