Implement role staring benchmarks on schedule.
Napisać rolę, która uruchomi testy i prześle wyniki to influxdb za pośrednictwem telegrafa na hoście lokalnym
Propozycja API roli
-
benchmarks_schedule
- shedule for the timer (e.g."*-*-* 01:11:00"
). See theOnCalendar=
section of thesystemd.timer
documentation for more info. -
benchmarks_schedule_maximum_random_delay
- maximum number of minutes timer can be delayed for scheduled time (by default delay will not be present)
przykładowa wygenerowan konfiguracja skryptu python
---
benchmarks:
- cpus_required: 2 # wymagana ilość wolnych cpu (zaszyte w roli)
name: database # Nazwa testu (zaszyte w roli)
log_level: DEBUG # Poziom logów które powinien wypluwać skrypt (zaszyte w roli) przydatne do debugowania
hostname: "compute002.stg.cloud.task.gda.pl" # na tego podstawie tworzony będzie URL do QEMU i połączenie z monitorinigiem (generowane na podstawie `inventory_hostname`)
Logika skryptu w pythonie
- ustaw logowanie
- przeiteruj przez benchmarki
- sprawdź czy jest wystarczająco wolnych cpu do odpalenia testu na podstawie informacji z libvirt
- uruchom test
- wyślij wyniki do monitoringu
Dedykowany kontener...
Dokończyć opis w ISSUE.....