First, let's install the stress-ng package. On Debian/Ubuntu you should use:
sudo apt install stress-ng
Whereas RHEL/CentOS/Fedora, we need to first enable the EPEL repository (which is generally safe, but proceed with moderate caution as this can change package versions!)then install stress:
sudo yum install epel-release
sudo yum install stress
Now that it's installed, we need to tell it to do something. To start, let's run a short 4-thread CPU test:
sudo stress --cpu 4 --timeout 30
If all goes well, a 30 second torture test should be executed on the CPU, using 4 seperate threads. If your system is a quad core, then this should sufficiently tax all cores. Though, if your system has HyperThreading (HT) or Simultaneous MultiThreading (SMT) technologies, you might want to use 8 threads so that your threaded cores are utilised too.
Here are a small selection of useful tests. Please edit as you see fit for your workload and requirements:
sudo stress --vm 4 --timeout 900s
This will start a 4-thread stress test, running malloc() and free() functions continually, for a period of 900 seconds.
sudo stress --io 4 --timeout 900s
This will start a 4-thread test running sync(), to stress the system's storage read and read buffers, for 900 seconds.
sudo stress --hdd 4 --timeout 900s
This will start a 4-thread test running write()/unlink(), which will write data to the system's storage and then delete it, for 900 seconds.
sudo stress --hdd 2 --io 4 --vm 6 --cpu 8 --timeout 900s
This combines a selection of all the above tests for 900 seconds. Combining tests can give a more realistic workflow of a busy server, mimicing usage of CPU, RAM and storage as if it were in regular use.