FixedIpNotFoundForInstance: Instance 1 has zero fixed ips.
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
OpenStack Compute (nova) |
Fix Released
|
Wishlist
|
Dan Prince |
Bug Description
Using nova trunk w/ FlatDHCP revision 1239:
I'm getting the following nova-network.log exceptions when trying to boot an instance:
(nova): TRACE: File "/usr/lib/
(nova): TRACE: rval = node_func(
(nova): TRACE: File "/usr/lib/
(nova): TRACE: ips = super(FloatingIP, self).allocate_
(nova): TRACE: File "/usr/lib/
(nova): TRACE: return self.get_
(nova): TRACE: File "/usr/lib/
(nova): TRACE: fixed_ips = self.db.
(nova): TRACE: File "/usr/lib/
(nova): TRACE: return IMPL.fixed_
(nova): TRACE: File "/usr/lib/
(nova): TRACE: return f(*args, **kwargs)
(nova): TRACE: File "/usr/lib/
(nova): TRACE: raise exception.
(nova): TRACE: FixedIpNotFound
(nova): TRACE:
2011-07-01 13:12:18,260 ERROR nova.rpc [-] Returning exception Instance 1 has zero fixed ips. to caller
---
I have created both fixed and floating IPs.
This exception is reproducible when installing nova from scratch and trying to boot an instance immediately after starting all the services.
If I wait a couple minutes after starting the various nova services (network, compute, etc.) instances seem to boot fine and I have no issues.
Is there a periodic task of some sort we need to run upon startup to obtain a set of fixed IPs for instances?
Related branches
- Devin Carlen (community): Disapprove
-
Diff: 158 lines (+56/-9)6 files modifiedbin/nova-manage (+5/-3)
nova/db/sqlalchemy/api.py (+3/-1)
nova/db/sqlalchemy/migrate_repo/versions/035_network_add_configured.py (+40/-0)
nova/db/sqlalchemy/models.py (+1/-0)
nova/network/manager.py (+6/-5)
nova/tests/__init__.py (+1/-0)
Changed in nova: | |
status: | New → Incomplete |
Changed in nova: | |
status: | Confirmed → In Progress |
Changed in nova: | |
status: | In Progress → Fix Committed |
Changed in nova: | |
milestone: | none → diablo-3 |
Changed in nova: | |
milestone: | diablo-3 → 2011.3 |
status: | Fix Committed → Fix Released |
Yes. Originally the networks are not configured on the network hosts. You can solve this in two ways:
1) prior to booting the network hosts. Populate the host column in the networks table. Then the hosts will configure themselves as a part of their boot process.
2) wait for the network host period task to pick up the networks. They run about twice a minute. In order to scale linearly each host will only pick up and configure 1 network (so they take turns basically). So if you have 3 networks and 1 host. It'll take 1.5 minutes or so. If you have as many hosts and networks, you're all set once the first period task kicks.