Restucture the L3 agent to support Kilo ++
We've been talking about ideas for restructuring the agent a bit in early Kilo in the L3 meeting. Let's get the plan nailed down.
Blueprint information
- Status:
- Complete
- Approver:
- Kyle Mestery
- Priority:
- High
- Drafter:
- Carl Baldwin
- Direction:
- Approved
- Assignee:
- Carl Baldwin
- Definition:
- Approved
- Series goal:
- Accepted for kilo
- Implementation:
- Implemented
- Milestone target:
- 2015.1.0
- Started by
- Kyle Mestery
- Completed by
- Kyle Mestery
Related branches
Related bugs
Sprints
Whiteboard
March-24 (mestery): This needs to merge by March-31 to make Kilo.
March-19 (mestery): A few patches left, FFE for Kilo, moving to RC.
March-17 (mestery): Marking as Implemented, there are 3 minor patches left which will be tracked with a bug for either the RC release or Liberty.
February-2 (mestery): A lot of this has merged, but it won't complete until Kilo-3.
December-1 (mestery): Marking for Kilo-2
Gerrit topic: https:/
Addressed by: https:/
Eliminate unnecessary indirection in L3 agent
Gerrit topic: https:/
Addressed by: https:/
Kilo refactoring and restructuring the L3 agent
Addressed by: https:/
WIP Remove broad exception catch from _periodic_
Gerrit topic: https:/
Addressed by: https:/
L3 Agent refactor - extract device driver loading from agents
Addressed by: https:/
Move classes out of l3_agent.py
Addressed by: https:/
Tighten up try/except block around rpc call
Addressed by: https:/
Move stale namespace cleanup logic out of L3 agent
Addressed by: https:/
L3 Agent restructure - observer hierarchy
Addressed by: https:/
Check metadata iptables chains during functional test
Addressed by: https:/
Hand out L3 agent driver notifications
Addressed by: https:/
Add metadata proxy L3 agent driver
Addressed by: https:/
Refactor process_router method in L3 agent
Addressed by: https:/
Move classes out of l3_agent.py
Addressed by: https:/
Move classes out of l3_agent.py
Addressed by: https:/
Move classes out of l3_agent.py
Addressed by: https:/
Disable autorebase in Neutron
Addressed by: https:/
L3 Agent restructure - observer hierarchy
Addressed by: https:/
L3 Agent restructure - observer hierarchy
Addressed by: https:/
WIP Move Floating IP processing to Router class
Addressed by: https:/
refactor l3-agent to include dvr.py
Addressed by: https:/
Revert "Add metadata proxy L3 agent driver"
Addressed by: https:/
Refactor of floating ip processing in L3 Agent
Addressed by: https:/
Create DvrRouter as a sub-class of Router
Addressed by: https:/
VPNaaS: Remove methods, once router object available
Addressed by: https:/
Move main entry point out of agent.py
Addressed by: https:/
Adapt VPN agent to use new main for L3 Agent
Addressed by: https:/
DHCP agent restructuring
Addressed by: https:/
Remove main alias for bw compat with vpn agent
Addressed by: https:/
Create arping helper in ip_lib
Addressed by: https:/
WIP Encapsulate DVR Fip namespace
Addressed by: https:/
Refactor management of namespaces in the L3 Agent
Addressed by: https:/
Replace FLOATING_
Addressed by: https:/
Move constants definitions to router classes
Addressed by: https:/
Add coverage for extra routes extension
Addressed by: https:/
Move extra routes processing to router classes
Addressed by: https:/
Move DVR floating ip methods to dvr_router
Addressed by: https:/
WIP Move ha functionality to ha_router
Addressed by: https:/
Make the interface driver available to the router classes
Addressed by: https:/
Move DVR floating ip methods to dvr_router
Addressed by: https:/
Don't pass the port down to the floating ip processing
Addressed by: https:/
Use weak ref to avoid deleting fip namespace through agent
Addressed by: https:/
Refactor radvd control in the l3-agent
Addressed by: https:/
WIP Move port processing to router classes
Addressed by: https:/
Remove reference to self.services_sync
Addressed by: https:/
WIP Move external port processing to router classes
Addressed by: https:/
Refactor DVR _arp_entry methods
Addressed by: https:/
Move _set_subnet_
Addressed by: https:/
Move create_
Addressed by: https:/
VPNaaS: device driver and agent refactoring part 1
Addressed by: https:/
Misc HA router cleanups
Gerrit topic: https:/
Addressed by: https:/
Add functional test for namespaces manager
Addressed by: https:/
WIP Last-ditch effort to get the router stuff out of the agent
Addressed by: https:/
Add tests for the l3 agent namespaces manager
Addressed by: https:/
Use router state in get_ha_device_name and ha_network_added
Addressed by: https:/
Rename/move some HA routers methods
Addressed by: https:/
Remove HaRouter.verify_ha
Gerrit topic: https:/
Addressed by: https:/
Merge branch 'master' into neutron-pecan