lp:~mike-mayo/+junk/nova
- Get this branch:
- bzr branch lp:~mike-mayo/+junk/nova
Branch information
- Owner:
- Mike Mayo
- Status:
- Development
Recent revisions
- 346. By Vish Ishaya
-
This patch removes the ugly network_index that is used by VlanManager and turns network itself into a pool. It adds support for creating the networks through an api command:
nova-manage network create # creates all of the networks defined by flags
or
nova-manage network create 5 # create the first five networksThis moves the network out of project.create, associating a network to a project lazily in project_
get_network. This allows for a bit greater control over networks. There are a couple outstanding issues:
1) Where do networks get disassociated? Right now I'm not disassociating at all. We're sharing ldap users across different deploys, whereas sql db is unique per deploy. Perhaps the solution is to have a flag like disassociate_on_project_ destroy and make it optional?
2) How do we handle creation of networks for tests? It is really slow to create a pool of networks and fixed_ips for each test case. Right now I'm taking advantage of the fact that the db isn't cleaned between tests, and creating them if they don't exist in BaseTestCase.SetUp() and disassociating in TearDown(). Ideally this should be replaced with fixtures of some sort. Comments on these two issues are welcome.
- 345. By Michael Gundlach
-
Revert the conversion to 64-bit ints stored in a PickleType column, because PickleType is incompatible with having a unique constraint.
We moved away from 32 bit ints because of the chance of collision. It turns out the existing code already checked for collisions and retried, so this wasn't an issue.
- 344. By Soren Hansen
-
This patch adds support for EC2 security groups using libvirt's nwfilter mechanism, which in turn uses iptables and ebtables on the individual compute nodes.
This has a number of benefits:
* Inter-VM network traffic can take the fastest route through the network without our having to worry about getting it through a central firewall.
* Not relying on a central firewall also removes a potential SPOF.
* The filtering load is distributed, offering great scalability.Caveats:
* It only works with libvirt and only with libvirt drivers that support nwfilter (qemu (and thus kvm) and uml, at the moment) - 343. By Michael Gundlach
-
Change internal_id from a 32 bit int to a 64 bit int.
Specifically, generate internal_id as a random number in [0, 2^64). SQLAlchemy has no built-in type for big integers, so the internal_id column is a PickleType, set to non-mutable to avoid performance penalties associated with mutable column types. Under the hood, this is stored as a Binary.
In Austin+1 we'll probably be replacing internal_id with a string, but we need something bigger than 32 bits for Austin.
- 342. By Michael Gundlach
-
Make Instance.name a string again instead of an integer.
Prefix it with some characters for good measure in case any code consumes .name and can't handle strings of the form /[0-9]+/.
Branch metadata
- Branch format:
- Branch format 7
- Repository format:
- Bazaar repository format 2a (needs bzr 1.16 or later)