ironic_python_agent.burnin module¶
- ironic_python_agent.burnin.fio_disk(node)[source]¶
Burn-in the disks with fio
Run an fio randrw job for a configurable number of iterations or a given amount of time.
- Parameters:
node – Ironic node object
- Raises:
CommandExecutionError if the execution of fio fails.
- ironic_python_agent.burnin.fio_network(node)[source]¶
Burn-in the network with fio
Run an fio network job for a pair of nodes for a configurable amount of time. The pair is either statically defined in driver_info via ‘agent_burnin_fio_network_config’ or the role and partner is found dynamically via a tooz backend.
The writer will wait for the reader to connect, then write to the network. Upon completion, the roles are swapped.
- Parameters:
node – Ironic node object
- Raises:
CommandExecutionError if the execution of fio fails.
- Raises:
CleaningError if the configuration is incomplete.
- ironic_python_agent.burnin.gpu_burn(node)[source]¶
Burn-in and check correct count of GPUs using gpu-burn
Check that the expected number of GPUs are available on the node and run a GPU burn-in job for a configurable amount of time.
- Parameters:
node – Ironic node object
- ironic_python_agent.burnin.stress_ng(node, stressor_type, default_timeout=86400)[source]¶
Run stress-ng for different stressor types
Burn-in a configurable number of CPU/VM with stress-ng, for a configurable amount of time but default of 24 hours.
- Parameters:
node – Ironic node object
stressor_type – ‘cpu’ or ‘vm’
default_timeout – Default timeout in seconds (default: 86400)
- Raises:
ValueError if an unknown stressor_type is provided
- Raises:
CommandExecutionError if the execution of stress-ng fails.
- ironic_python_agent.burnin.stress_ng_vm(node)[source]¶
Burn-in the memory with the vm stressor in stress-ng.
Run stress-ng with a configurable number of workers on a configurable amount of the available memory for a configurable amount of time. Without config use as many workers as CPUs, 98% of the memory and stress it for 24 hours.