The networking_cisco.plugins.cisco.l3.schedulers.l3_router_hosting_device_scheduler
Module¶
-
class
networking_cisco.plugins.cisco.l3.schedulers.l3_router_hosting_device_scheduler.
CandidatesHAFilterMixin
¶ Bases:
object
-
class
networking_cisco.plugins.cisco.l3.schedulers.l3_router_hosting_device_scheduler.
L3RouterHostingDeviceBaseScheduler
¶ Bases:
object
Slot-aware base scheduler of Neutron routers to hosting devices.
-
get_candidates
(plugin, context, r_hd_binding_db)¶ - Selection criteria: Hosting devices that…
- … are based on the template required by router’s type AND … are administratively up AND … are active (i.e., has status HD_ACTIVE) AND … are bound to tenant owning router OR is unbound AND … are enough slots available to host the router
Among hosting devices meeting these criteria the device with less allocated slots is preferred.
-
schedule_router
(plugin, context, r_hd_binding_db)¶
-
unschedule_router
(plugin, context, r_hd_binding_db)¶
-
-
class
networking_cisco.plugins.cisco.l3.schedulers.l3_router_hosting_device_scheduler.
L3RouterHostingDeviceHALongestRunningScheduler
¶ Bases:
networking_cisco.plugins.cisco.l3.schedulers.l3_router_hosting_device_scheduler.CandidatesHAFilterMixin
,networking_cisco.plugins.cisco.l3.schedulers.l3_router_hosting_device_scheduler.L3RouterHostingDeviceLongestRunningScheduler
Schedules a Neutron router on a hosting device.
The scheduler is HA aware and will ignore hosting device candidates that are used by other Neutron routers in the same HA group.
- Selection criteria:
The longest running hosting device that is not already hosting a router in the HA group and which has enough slots available to host the router.
Hosting devices with creation date/time less than EQUIVALENCE_TIME_DIFF are considered equally old.
Among hosting devices meeting these criteria and that are of same age the device with less allocated slots is preferred.
-
class
networking_cisco.plugins.cisco.l3.schedulers.l3_router_hosting_device_scheduler.
L3RouterHostingDeviceHARandomScheduler
¶ Bases:
networking_cisco.plugins.cisco.l3.schedulers.l3_router_hosting_device_scheduler.CandidatesHAFilterMixin
,networking_cisco.plugins.cisco.l3.schedulers.l3_router_hosting_device_scheduler.L3RouterHostingDeviceRandomScheduler
Schedules a Neutron router on a hosting device.
The scheduler is HA aware and will ignore hosting device candidates that are used by other Neutron routers in the same HA group.
- Selection criteria:
- A randomly selected hosting device that is not already hosting a router in the HA group and which has enough slots available to host the router.
-
class
networking_cisco.plugins.cisco.l3.schedulers.l3_router_hosting_device_scheduler.
L3RouterHostingDeviceLongestRunningScheduler
¶ -
Schedules a Neutron router on a hosting device.
- Selection criteria:
The longest running hosting device that has enough slots available to host the router
Hosting devices with creation date/time less than EQUIVALENCE_TIME_DIFF are considered equally old.
Among hosting devices meeting these criteria and that are of same age the device with less allocated slots is preferred.
-
schedule_router
(plugin, context, r_hd_binding_db)¶
-
unschedule_router
(plugin, context, r_hd_binding_db)¶
-
class
networking_cisco.plugins.cisco.l3.schedulers.l3_router_hosting_device_scheduler.
L3RouterHostingDeviceRandomScheduler
¶ -
Schedules a Neutron router on a hosting device.
- Selection criteria:
- A randomly selected hosting device that has enough slots available to host the router.
-
schedule_router
(plugin, context, r_hd_binding_db)¶
-
unschedule_router
(plugin, context, r_hd_binding_db)¶