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:
objectSlot-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.L3RouterHostingDeviceLongestRunningSchedulerSchedules 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.L3RouterHostingDeviceRandomSchedulerSchedules 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)¶