Public bug reported: I am trying to control the host's ios at the same time. I set the properties in nova.conf:
scheduler_default_filters=RetryFilter,AvailabilityZoneFilter,RamFilter,ComputeFilter,ComputeCapabilitiesFilter,ImagePropertiesFilter,IoOpsFilter max_io_ops_per_host=2 But I can still schedule an instance at the host which has two instances is rebuilding. The task status of rebuild instances is REBUILD_SPAWNING="rebuild_spawning", but the io_workload in stats.py is : @property def io_workload(self): """Calculate an I/O based load by counting I/O heavy operations.""" def _get(state, state_type): key = "num_%s_%s" % (state_type, state) return self.get(key, 0) num_builds = _get(vm_states.BUILDING, "vm") num_migrations = _get(task_states.RESIZE_MIGRATING, "task") num_rebuilds = _get(task_states.REBUILDING, "task") num_resizes = _get(task_states.RESIZE_PREP, "task") num_snapshots = _get(task_states.IMAGE_SNAPSHOT, "task") num_backups = _get(task_states.IMAGE_BACKUP, "task") return (num_builds + num_rebuilds + num_resizes + num_migrations + num_snapshots + num_backups) The I/O heavy operations not contain the "rebuild_spawning" status. ** Affects: nova Importance: Undecided Status: New ** Tags: io ioopsfilter workload -- You received this bug notification because you are a member of Yahoo! Engineering Team, which is subscribed to OpenStack Compute (nova). https://bugs.launchpad.net/bugs/1337359 Title: The io_ops_filter is not working while instance is rebuilding. Status in OpenStack Compute (Nova): New Bug description: I am trying to control the host's ios at the same time. I set the properties in nova.conf: scheduler_default_filters=RetryFilter,AvailabilityZoneFilter,RamFilter,ComputeFilter,ComputeCapabilitiesFilter,ImagePropertiesFilter,IoOpsFilter max_io_ops_per_host=2 But I can still schedule an instance at the host which has two instances is rebuilding. The task status of rebuild instances is REBUILD_SPAWNING="rebuild_spawning", but the io_workload in stats.py is : @property def io_workload(self): """Calculate an I/O based load by counting I/O heavy operations.""" def _get(state, state_type): key = "num_%s_%s" % (state_type, state) return self.get(key, 0) num_builds = _get(vm_states.BUILDING, "vm") num_migrations = _get(task_states.RESIZE_MIGRATING, "task") num_rebuilds = _get(task_states.REBUILDING, "task") num_resizes = _get(task_states.RESIZE_PREP, "task") num_snapshots = _get(task_states.IMAGE_SNAPSHOT, "task") num_backups = _get(task_states.IMAGE_BACKUP, "task") return (num_builds + num_rebuilds + num_resizes + num_migrations + num_snapshots + num_backups) The I/O heavy operations not contain the "rebuild_spawning" status. To manage notifications about this bug go to: https://bugs.launchpad.net/nova/+bug/1337359/+subscriptions -- Mailing list: https://launchpad.net/~yahoo-eng-team Post to : yahoo-eng-team@lists.launchpad.net Unsubscribe : https://launchpad.net/~yahoo-eng-team More help : https://help.launchpad.net/ListHelp