- def reserve_instance(self, image_id, kernel_id, ramdisk_id, \
- instance_type, key_name, user_data, group_name):
- conn = self.driver.euca_shell.get_euca_connection()
- logger.info('Reserving an instance: image: %s, kernel: ' \
- '%s, ramdisk: %s, type: %s, key: %s' % \
- (image_id, kernel_id, ramdisk_id,
- instance_type, key_name))
- try:
- reservation = conn.run_instances(image_id=image_id,
- kernel_id=kernel_id,
- ramdisk_id=ramdisk_id,
- instance_type=instance_type,
- key_name=key_name,
- user_data = user_data,
- security_groups=[group_name])
- #placement=zone,
- #min_count=min_count,
- #max_count=max_count,
-
- except Exception, err:
- logger.log_exc(err)
-
-
- def run_instances(self, slicename, rspec, keyname, pubkeys):
- """
- Create the security groups and instances.
- """
- # the default image to use for instnaces that dont
- # explicitly request an image.
- # Just choose the first available image for now.
- image_manager = ImageManager(self.driver)
- available_images = image_manager.get_available_disk_images()
- default_image_id = None
- default_aki_id = None
- default_ari_id = None
- default_image = available_images[0]
- default_image_id = ec2_id(default_image.id, default_image.container_format)
- default_aki_id = ec2_id(default_image.kernel_id, 'aki')
- default_ari_id = ec2_id(default_image.ramdisk_id, 'ari')