2017-04-17 66 views
0

我正在嘗試自動化測試,並計劃在centos vm中爲壓力工具觸發一個cron作業。作爲cronjob在centos中運行壓力工具vm

這是我遵循的步驟:

1) Install cron 
2) crontab -e 
3) */30 * * * * root stress --cpu 100 --io 4 --vm 2 --timeout 600s 

的效用應該醒來每30分鐘運行600S。

問題:當從 聯機手動觸發時,應力工具完美無缺。但是,如果按計劃執行cron作業,它會觸發但不會產生壓力。例如:手動觸發作業會在虛擬機上創建100%的壓力。 當作爲cron工作時,它只產生3%的壓力。

回答

0

不要把它放在user crontab中。我認爲,這會引入較低的nice級別,其中kernel會在進程使用高CPU時將進程置於較低優先級。

你可以嘗試一些事情,

#1 Create a script from these commands 
~]# cat <<EOF> /usr/local/etc/get_stress.sh 
    #!/bin/bash 
    stress --cpu 100 --io 4 --vm 2 --timeout 600s 
    EOF 
~]# chmod u+x /usr/local/etc/get_stress.sh 
~]# echo '*/30 * * * * root /usr/local/etc/get_stress.sh' > /etc/cron.d/stress-cron 

以上應該工作作爲一個系統的cron。如果這不起作用。檢查流程運行時的nice級別。

`ps axl | grep stress` 

NI列應顯示它正在運行的優先級。