lp:~vishvananda/nova/clean-compute

Created by Vish Ishaya and last modified
Get this branch:
bzr branch lp:~vishvananda/nova/clean-compute
Only Vish Ishaya can upload to this branch. If you are Vish Ishaya please log in for upload directions.

Branch merges

Related bugs

Related blueprints

Branch information

Owner:
Vish Ishaya
Project:
OpenStack Compute (nova)
Status:
Merged

Recent revisions

570. By Vish Ishaya

removed rpc in cloud

569. By Vish Ishaya

merged trial fix again

568. By Vish Ishaya

fix bad function signature in create_networks

567. By Vish Ishaya

merged lp:~vishvananda/nova/lp703012

566. By Vish Ishaya

import re, remove extra call in cloud.py. Move get_console_output to compute_api

565. By Ed Leafe

Implements the blueprint for enabling the setting of the root/admin password on an instance.

It uses a new xenapi plugin 'agent' that handles communication to/from the agent running on the guest.

564. By Nachi Ueno

OpenStack Compute (Nova) IPv4/IPv6 dual stack support
http://wiki.openstack.org/BexarIpv6supportReadme

Tested with
 unit test
 smoke test

No conflict with current branch r 562.
Fixed comment by Soren and Vish

563. By MORITA Kazutaka

This change introduces support for Sheepdog (distributed block storage
system) which is proposed in
https://blueprints.launchpad.net/nova/+spec/sheepdog-support

Requirements:

 - libvirt 0.8.7 or later
 - qemu 0.13.0 or later

How to test:

1. install Sheepdog

  The software is available from SourceForge.net:
    https://sourceforge.net/projects/sheepdog/files/

  See also:
    http://wiki.qemu.org/Features/Sheepdog/Getting_Started#Install

2. run the sheepdog daemon on each hosts

    $ sheep /store_dir

  /store_dir is a directory to store sheepdog objects. The directory
  must be on the filesystem with an xattr support.

3. format the sheepdog storage

    $ collie cluster format --copies=3

4. run nova-volume

    $ nova-volume --volume_driver=nova.volume.driver.SheepdogDriver

562. By Vish Ishaya

This modifies libvirt to use CoW images instead of raw images. This is much more efficient and allows us to use the snapshotting capabilities available for qcow2 images. It also changes local storage to be a separate drive instead of a separate partition.

I'm proposing this branch for review to get feedback. I may have inadvertently broken a few things. Comments and possible issues:

1. I haven't tested the other hypervisors. I may have broken libvirt xen support and uml support with this patch.
2. Is it useful to have a use_cow_images param, or should it just be automatic for qemu/kvm and turned off for everything else.
3. create_image is a large annoying method. I tried to clean it up a bit, but it could probably use a bit more refactoring.
4. disk.py seems to be only used by the hypervisors, so perhaps it should move into virt dir.
5. disk.py/partition() is unused now. Should we leave it in or throw it away?

Comments welcome

561. By Soren Hansen

Add a new method to firewall drivers to tell them to stop filtering a particular instance. Call it when an instance has been destroyed.

Use dict()s (keyed off id's) instead of set()s for keeping track of instances and security groups in the iptables firewall driver. __eq__ for objects from sqlalchemy fetched in different sessions doesn't work as expected, so I needed to explicitly filter on ID.

Branch metadata

Branch format:
Branch format 7
Repository format:
Bazaar repository format 2a (needs bzr 1.16 or later)
Stacked on:
lp:~hudson-openstack/nova/trunk
This branch contains Public information 
Everyone can see this information.

Subscribers