Commit Graph

784 Commits

Author SHA1 Message Date
vladimir.p 8b4d46285b merged with rev.1499 2011-08-25 19:18:46 -07:00
vladimir.p 4834b920e3 VSA code redesign. Drive types completely replaced by Volume types 2011-08-25 18:38:35 -07:00
vladimir.p 08af6ab632 merged with volume_types. no code refactoring yet 2011-08-24 16:48:04 -07:00
vladimir.p 48cd9689de added virtio flag; associate address for VSA; cosmetic changes. Prior to volume_types merge 2011-08-24 15:51:29 -07:00
Hisaharu Ishii 88a2dfb582 Add comments for associate/dissociate logic 2011-08-24 14:01:33 -07:00
Hisaharu Ishii 2fc6837064 Merged from trunk 2011-08-23 15:32:44 -07:00
Hisaharu Ishii 8cd7dcca1c Stub out the DB in unit test.
Fix 'nova-manage network modify' to use db.network_update()
2011-08-23 15:06:24 -07:00
Nachi Ueno 82019a47e0 Merged with trunk 2011-08-23 08:46:55 -07:00
Vishvananda Ishaya de114ef5af This branch does the final tear out of AuthManager from the main code. The NoAuth middlewares (active by default) allow a user to specify any user and project id through headers (os_api) or access key (ec2_api).
The plan is to leave the auth manager code in but mention that it is deprecated.  There is a sample paste config in ini to still allow old auth.  Immediately after the diablo release we can tear out all of the Auth related code and not support the deprecated auth anymore.
2011-08-23 07:21:13 +00:00
Tushar Patil c2fb9485f9 Our goal is to add optional parameter to the Create server OS 1.0 and 1.1 API to achieve following objectives:-
1) Specify number and order of networks to the create server API.

In the current implementation every instance you launch for a project having 3 networks assigned to it will always have 3 vnics. In this case it is not possible to have one instance with 2 vnics ,another with 1 vnic and so on. This is not flexible enough and the network resources are not used effectively.

2) Specify fixed IP address to the vnic at the boot time. When you launch a server, you can specify the fixed IP address you want to be assigned to the vnic from a particular network. If this fixed IP address is already in use, it will give exception.

Example of Server Create API request XML:
<?xml version="1.0" encoding="UTF-8"?>

<server xmlns="http://docs.nttpflab.com/servers/api/v1.0"
        name="new-server-test" imageId="1" flavorId="1">
  <metadata>
    <meta key="My Server Name">Apache1</meta>
  </metadata>
  <personality>
    <file path="/etc/banner.txt">
        ICAgICAgDQoiQSBjbG91ZCBkb2VzIG5vdCBrbm93IHdoeSBp
    </file>
  </personality>
  <networks>
      <network uuid="6622436e-5289-460f-8479-e4dcc63f16c5" fixed_ip="10.0.0.3">
      <network uuid="d97efefc-e071-4174-b6dd-b33af0a37706" fixed_ip="10.0.1.3">
  </networks>
</server>

3) Networks is an optional parameter, so if you don't provide any networks to the server Create API, it will behave exactly the same as of today.

This feature is supported to all of the network models.
2011-08-23 02:05:35 +00:00
Hisaharu Ishii 0d0c8dfbf2 Change parameters of 'nova-manage network modify'.
Move common test codes into private method.
2011-08-22 16:46:29 -07:00
Alex Meade 77f15157c5 Ensure that reserve and unreserve exit when an address is not found 2011-08-22 17:08:11 -04:00
Hisaharu Ishii 259e71903b Merge latest lp:~tpatil/nova/add-options-network-create-os-apis 2011-08-22 13:42:09 -07:00
Vishvananda Ishaya fa168605f6 merged trunk 2011-08-22 13:14:08 -07:00
Hisaharu Ishii f05da72e28 Fix pep8 2011-08-22 11:50:44 -07:00
Hisaharu Ishii 9508bb599c Add 'nova-manage network modify' command. 2011-08-22 08:59:35 -07:00
Nachi Ueno 46ba1b111b Fixed mistake on mergew 2011-08-19 13:31:54 -07:00
Nachi Ueno 9059902c72 Merged with trunkw 2011-08-19 13:25:49 -07:00
Nachi Ueno c06bbe9973 Added monkey patching notification code function
w
2011-08-19 12:30:55 -07:00
Tushar Patil 10fdf23403 Merged from trunk 2011-08-19 10:08:46 -07:00
Dan Wendlandt 965f82ac12 Bugfix for lp 828429. Its still not clear to me exactly how this code path is actually invoked when nova is used, so I'm looking for input on whether we should be adding a test case for this, removing the code as unused, etc. Thanks. 2011-08-19 02:14:17 +00:00
Vishvananda Ishaya a4d63f1897 fix docstrings in new api bins 2011-08-18 11:31:28 -07:00
Vishvananda Ishaya 05e8c1755d one more 2011-08-18 11:28:43 -07:00
Vishvananda Ishaya 97552f05d5 fix typo 2011-08-18 11:28:02 -07:00
Vishvananda Ishaya 0cf36be73e add separate api binaries 2011-08-18 10:56:14 -07:00
Vishvananda Ishaya 125a2affec more cleanup of binaries per review 2011-08-18 10:55:39 -07:00
Dan Wendlandt 1ef677a2ea dhcpbridge: add better error if NETWORK_ID is not set, convert locals() to static dict 2011-08-18 09:50:24 -07:00
Dan Wendlandt b7019a57c4 in dhcpbridge, only grab network id from env if needed 2011-08-17 22:29:04 -07:00
Dan Wendlandt 635306fd00 bug #828429: remove references to interface in nova-dhcpbridge 2011-08-17 22:00:38 -07:00
Vishvananda Ishaya 90650e5bec make admin context the default, clean up pipelib 2011-08-17 19:31:01 -07:00
vladimir.p 2bc1e30291 merged with nova-1450 2011-08-17 16:44:34 -07:00
vladimir.p cabf9cc8f2 nova-manage VSA print & forced update_cap changes; fixed bug with report capabilities; added IP address to VSA APIs; added instances to APIs 2011-08-17 16:27:12 -07:00
Vishvananda Ishaya 6cdee85905 Make all services use the same launching strategy 2011-08-17 16:25:53 -07:00
Tushar Patil 9824270405 Resolved conflicts and merged with trunk 2011-08-16 16:18:48 -07:00
Tushar Patil 9081e8b62e Added uuid for networks and made changes to the Create server API format to accept network as uuid instead of id 2011-08-16 16:04:18 -07:00
Dan Wendlandt 6dbcc60d5f I'm taking Thierry at his word that I should merge early and merge often :)
In Diablo-3 we introduced "vif-plugging" to the hypervisor "virt" layer, allowing flexibility in how vNICs are attached to the network switch. This allowed non-linux bridge switch technologies (e.g., Open vSwitch, 802.1qbh) to be used with nova.

This blueprint adds a similar capability to linux_net.py, allowing the L3/DHCP capabilities to be "plugged" into Quantum networks.  Like in the virt layer, we created a vif driver that represents the behavior of Nova prior to the change (LinuxBridgeInterfaceDriver) and make it the default.  We also add a new driver for Open Vswitch that can be enabled using a flag (LinuxOVSInterfaceDriver).  The code is designed to support other drivers as well.  

Most of the interesting code is at the bottom of linux_net.py, where the drivers are defined.  I had to pull some common code related to setting IPs on devices out of ensure_bridge() so it could be used by either approach.  The driver's plug() method is invoked by the VlanManager's _setup_network() method.  Currently unplug() is unused, which seems to be inline with how the existing nova code works. 

In many places in linux_net.py, I had to tweak functions to accept the name of the linux device to configure, rather than just assuming it was the 'bridge' field in the network object, since with OVS it could be any linux device.  The code I am least sure about are the changes to bin/nova-dhcpbridge.  I changed to this key off of the network ID, rather than the bridge name.  

I've tested this with the linux bridge and with the OVS vif-plugging driver.  I was able to confirm that L3 forwarding and DHCP were operating correctly.
2011-08-16 22:59:43 +00:00
Tushar Patil 2be419cd88 Merged trunk 2011-08-15 17:30:13 -07:00
Jason Koelker 93d26d3fe4 merge trunk 2011-08-15 15:33:37 -05:00
Kei Masumoto ea53d0f37a Adding kvm-block-migration feature.
I wrote some description the below URL. I hope it may help for reviewing.
<http://etherpad.openstack.org/kvm-block-migration>
2011-08-15 20:31:43 +00:00
Jason Koelker 3ff86b8bc5 merge trunk, remove _validate_cidrs and replace functionality with a double for loop 2011-08-15 15:24:57 -05:00
Monsyne Dragon 2ed3b12cc8 Add durable flag for rabbit queues. 2011-08-15 16:14:35 +00:00
Tushar Patil ba11ce1671 Currently OS API doesn't accept availability zone parameter so there is no way to instruct scheduler (SimpleScheduler) to launch VM instance on specific host of specified zone.
Now changes have been made in the create_instance_helper to read the availability zone and pass it to the compute create API. Any OS extensions can take a advantage of it.
Also changes have been made in the nova-manage ServiceCommands class to expose zone information to the admin users. Only admin users will be allowed to launch VM instance on specific host.
2011-08-14 03:34:19 +00:00
Dan Wendlandt bfee9bd461 merge trunk, fix conflict frim dprince's branch to remove hostname from bin/nova-dhcpbridge 2011-08-12 17:43:19 -07:00
Dan Wendlandt 86d2109b8f merge in trunk, resolving conflicts with ttx's branch to switch from using sudo to run_as_root=True 2011-08-12 17:33:30 -07:00
Monsyne Dragon 6a5fa0bd07 remerge trunk 2011-08-13 00:06:42 +00:00
Monsyne Dragon e7858fabb4 Added durable option for nova rabbit queues
added queueu delete script for admin/debug purposes
2011-08-12 23:58:13 +00:00
vladimir.p 711a02450d nova-manage: fixed instance type in vsa creation 2011-08-12 13:37:22 -07:00
vladimir.p b66ea57ae1 removed VSA/drive_type code from EC2 cloud. changed nova-manage not to use cloud APIs 2011-08-12 12:51:54 -07:00
Tushar Patil 24df378532 Merged with trunk and fixed broken unit testcases 2011-08-12 12:29:24 -07:00
Kei masumoto 7393a114f4 merged rev1418 and fixed code so that less than 1G image can be migrated 2011-08-13 04:00:48 +09:00