-
Installation
-
Docker
- sudo apt-get install docker
- sudo apt install docker.io
-
Midnight Commander
- sudo apt install mc
-
Pull an Yandex-tank image
- sudo docker pull direvius/yandex-tank
-
Create work directory with:
1) token-file (.txt)
2) test-file (.yaml)
-
Create token-file
- use https://overload.yandex.net/ to receive your token
-
create empty token.txt file
- sudo touch token.txt
- fill it with your token
-
Create loadtest.yaml file with test scenario
- overload:
enabled: true
package: yandextank.plugins.DataUploader
token_file: "token.txt"
phantom:
address: 203.0.113.1:80 # [Target's address]:[target's port]
uris:
- /
headers:
-
load_profile:
load_type: rps # schedule load by defining requests per second
schedule: line(1, 10, 10m) # starting from 1rps growing linearly to 10rps during 10 minutes
console:
enabled: true # enable console output
telegraf:
enabled: false # let's disable telegraf monitoring for the first time
-
Run Docker container, change entrypoint
- docker run \
-v $(pwd):/var/loadtest \
-v $SSH_AUTH_SOCK:/ssh-agent -e SSH_AUTH_SOCK=/ssh-agent \
--net host \
-it \
--entrypoint /bin/bash \
direvius/yandex-tank
-
In my case: sudo docker run -v $(pwd):/var/loadtest -v $SSH_AUTH_SOCK:/ssh-agent -v ~/yandex-tank/:/var/dasha/ -e SSH_AUTH_SOCK=/ssh-agent --net host -it --entrypoint /bin/bash direvius/yandex-tank
- my directory ~/yandex-tank
-
Start your test Within container with yandex-tank command
- sudo yandex-tank -c /var/dasha/loadtest.yaml -i
-
Results
- using your console
-
using https://overload.yandex.net
-
Public tests
- show my tests only