design and implementation of the workflow of an academic cloud abhishek gupta, jatin kumar, daniel j...
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: WorkflowStep 1: User logs in
Design and Implementation of the Workflow of an Academic Cloud
8
Baadal: WorkflowStep 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: WorkflowStep 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: PerformanceTest1 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 Ethernet3. 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
References1. 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 Cloud23