Creating an EC2 Provisioning Module for VCL Cameron Mann & Everett Toews.
-
Upload
bertram-harris -
Category
Documents
-
view
214 -
download
0
Transcript of Creating an EC2 Provisioning Module for VCL Cameron Mann & Everett Toews.
![Page 1: Creating an EC2 Provisioning Module for VCL Cameron Mann & Everett Toews.](https://reader035.fdocuments.us/reader035/viewer/2022062801/56649e725503460f94b71c76/html5/thumbnails/1.jpg)
Creating an EC2 Provisioning Module for VCL
Cameron Mann & Everett Toews
![Page 2: Creating an EC2 Provisioning Module for VCL Cameron Mann & Everett Toews.](https://reader035.fdocuments.us/reader035/viewer/2022062801/56649e725503460f94b71c76/html5/thumbnails/2.jpg)
Virtual Computing Lab (VCL)
• Apache Incubator project
• Dynamically provision physical and virtual machines
for end-users
* Image from http://cwiki.apache.org/VCL
![Page 3: Creating an EC2 Provisioning Module for VCL Cameron Mann & Everett Toews.](https://reader035.fdocuments.us/reader035/viewer/2022062801/56649e725503460f94b71c76/html5/thumbnails/3.jpg)
Motivation
• Cloud computing is growing quickly
• AWS, OpenStack, Eucalyptus
• Opportunity to easily add significant compute
resources to VCL
• Makes it easier to pilot or scale VCL
• What if all you had to do to setup a VCL system was
supply the management node?
![Page 4: Creating an EC2 Provisioning Module for VCL Cameron Mann & Everett Toews.](https://reader035.fdocuments.us/reader035/viewer/2022062801/56649e725503460f94b71c76/html5/thumbnails/4.jpg)
Objectives
• End users should never have to know they’re using
the EC2 provisioning module
• Avoid changes to existing code
• Maintain VCL’s flexibility as much as possible
![Page 5: Creating an EC2 Provisioning Module for VCL Cameron Mann & Everett Toews.](https://reader035.fdocuments.us/reader035/viewer/2022062801/56649e725503460f94b71c76/html5/thumbnails/5.jpg)
VCL Terminology
• Computer
– Can refer to physical or virtual machine
– Each virtual machine is associated with a VM host
– Describes available hardware
• VM Host
– Computer that hosts virtual machines
• Image
– Disk image used to launch virtual machines
– Minimum hardware requirements
![Page 6: Creating an EC2 Provisioning Module for VCL Cameron Mann & Everett Toews.](https://reader035.fdocuments.us/reader035/viewer/2022062801/56649e725503460f94b71c76/html5/thumbnails/6.jpg)
EC2 Terminology
• Endpoint
– Exposes the EC2 API to users
• Instance
– Equivalent to a virtual machine
• Image
– Disk image used to launch instances
– Also kernel and ramdisk images
• Machine Type
– Describes the hardware an instance will be launched with
![Page 7: Creating an EC2 Provisioning Module for VCL Cameron Mann & Everett Toews.](https://reader035.fdocuments.us/reader035/viewer/2022062801/56649e725503460f94b71c76/html5/thumbnails/7.jpg)
VCL + EC2
• Image
– VCL image => EC2 image
– Minimum hardware => machine type
• Computer
– VM host => endpoint
– Virtual machine => instance
– Available hardware => largest machine type
![Page 8: Creating an EC2 Provisioning Module for VCL Cameron Mann & Everett Toews.](https://reader035.fdocuments.us/reader035/viewer/2022062801/56649e725503460f94b71c76/html5/thumbnails/8.jpg)
Provisioning
![Page 9: Creating an EC2 Provisioning Module for VCL Cameron Mann & Everett Toews.](https://reader035.fdocuments.us/reader035/viewer/2022062801/56649e725503460f94b71c76/html5/thumbnails/9.jpg)
Provisioning Cont.
1. User selects image and time
2. VCL finds a computer that the user has permission
to use, meets the hardware requirements of the
image and is available at the specified time
3. Provisioning module generates run instances
request and sends to EC2 API endpoint
4. Wait for instance to launch and run OS post load
tasks
![Page 10: Creating an EC2 Provisioning Module for VCL Cameron Mann & Everett Toews.](https://reader035.fdocuments.us/reader035/viewer/2022062801/56649e725503460f94b71c76/html5/thumbnails/10.jpg)
Image Capture
• Use the cloud’s existing image management, don’t
try to replace it
• Images are cloud-dependent
• EC2 utilities available to bundle/upload/register
• Works well for Linux, Windows is more complicated
![Page 11: Creating an EC2 Provisioning Module for VCL Cameron Mann & Everett Toews.](https://reader035.fdocuments.us/reader035/viewer/2022062801/56649e725503460f94b71c76/html5/thumbnails/11.jpg)
What’s Left?
• Networking
– VCL assumes two interfaces: one private, one public
– Instances have one private interface
– Public IP addresses assigned through NAT
• Expectation conflicts with reality
• Open source under Apache License
![Page 12: Creating an EC2 Provisioning Module for VCL Cameron Mann & Everett Toews.](https://reader035.fdocuments.us/reader035/viewer/2022062801/56649e725503460f94b71c76/html5/thumbnails/12.jpg)
Questions?