diff --git a/doc/requirements/management b/doc/requirements/management new file mode 100644 index 000000000..ff954de73 --- /dev/null +++ b/doc/requirements/management @@ -0,0 +1,164 @@ +--- +group: Management +--- + +Management operations allows the user to control and maintain the Open CAS +Linux. They are performed from console line with management tool. + +-------------------------------------------------------------------------------- +-------------------------------------------------------------------------------- +title: Add core device +id: add_core_device +--- + +The management tool shall allow to add the core device to the cache instance. + +-------------------------------------------------------------------------------- +-------------------------------------------------------------------------------- +title: Add core device repeatedly +id: add_core_device_repeatedly +--- + +While the core device is added to the cache instance, the management tool shall +not allow to add the core device to any cache instance. + +-------------------------------------------------------------------------------- +-------------------------------------------------------------------------------- +title: Cache volume states +id: cache_volume_states +--- + +The cache volume shall be allowed to switch between the following states: + +1. active +2. inactive + +-------------------------------------------------------------------------------- +-------------------------------------------------------------------------------- +title: Cache volume default state +id: cache_volume_default_state +--- + +When the cache volume is added to the cache instance its state is set to the +_active_ state by default. + +-------------------------------------------------------------------------------- +-------------------------------------------------------------------------------- +title: Remove cache volume +id: remove_cache_volume +--- + +The management tool shall allow to remove the cache volume from the cache +instance. + +-------------------------------------------------------------------------------- +-------------------------------------------------------------------------------- +title: Remove cache volume with flush +id: remove_cache_volume_flush +--- + +When the removing operation is invoked while the cache volume contains the dirty +data, the management tool shall trigger the flush before removing the cache +volume from the cache instance as the default behaviour. + +-------------------------------------------------------------------------------- +-------------------------------------------------------------------------------- +title: Remove cache volume without flush +id: remove_cache_volume_no_flush +--- + +When the removing operation is invoked while the cache volume contains the dirty +data and it is explicitly specified, the management tool shall not trigger the +flush before removing the cache volume from the cache instance and shall inform +about the consequences. + +-------------------------------------------------------------------------------- +-------------------------------------------------------------------------------- +title: Interrupt flush during cache volume removal +id: remove_cache_volume_flush_interrupt +--- + +While the cache volume that contains dirty data is removed with flush, the +management tool shall allow to interrupt the removal operation and the cache +volume shall remain its previous state and proper information shall be +displayed. + +-------------------------------------------------------------------------------- +-------------------------------------------------------------------------------- +title: Detach cache volume +id: detach_cache_volume +--- + +The management tool shall allow to detach the active cache volume from the cache +instance. After the detaching operation the cache volume shall stay in the core +pool of the cache instance from which the cache volume was detached. + +-------------------------------------------------------------------------------- +-------------------------------------------------------------------------------- +title: Detach inactive cache volume +id: detach_cache_volume_inactive +--- + +The management tool shall not allow to detach the inactive cache volume from the +cache instance. + +-------------------------------------------------------------------------------- +-------------------------------------------------------------------------------- +title: Detach cache volume with flush +id: detach_cache_volume_flush +--- + +When the detaching operation is invoked while the cache volume contains the +dirty data, the management tool shall trigger the flush before detaching the +cache volume from the cache instance as the default behaviour. + +-------------------------------------------------------------------------------- +-------------------------------------------------------------------------------- +title: Detach cache volume without flush +id: detach_cache_volume_no_flush +--- + +When the detaching operation is invoked while the cache volume contains the +dirty data and it is explicitly stated, the management tool shall not trigger +the flush before detaching the cache volume from the cache instance and shall +inform about the consequences. + +-------------------------------------------------------------------------------- +-------------------------------------------------------------------------------- +title: Interrupt flush during cache volume detaching +id: detach_cache_volume_flush_interrupt +--- + +While the cache volume that contains dirty data is removed with flush, the +management tool shall allow to interrupt the removal operation and the cache +volume shall remain its previous state and proper information shall be +displayed. + +-------------------------------------------------------------------------------- +-------------------------------------------------------------------------------- +title: Attach inactive cache volume +id: attach_inactive_cache_volume +--- + +While the cache volume is in inactive state, the management tool shall allow to +attach the cache volume to the cache instance to which core pool the cache +volume belongs. + +-------------------------------------------------------------------------------- +-------------------------------------------------------------------------------- +title: Attach active cache volume +id: attach_inactive_cache_volume +--- + +While the cache volume is in active state, the management tool shall not allow +to attach the cache volume to any cache instance. + +-------------------------------------------------------------------------------- +-------------------------------------------------------------------------------- +title: Remove inactive cache volume +id: remove_inactive_cache_volume +--- + +While the cache volume is in the inactive state, the management tool shall allow +to remove the cache volume from the core pool of the cache instance to which the +cache volume belongs.