zabbixvms
Zabbix agent pro monitorování instalací VMS od Logic Elements.
Sleduje MySQL databázi (BVMS), do které zapisuje serverový software VMS, a odvozené metriky o stavu systému (měřené otáčky, stáří bufferů, konfigurace a časových značek, počty řádků v bufferech, ukládání a export surových dat VMS a TVMS, stáří trendových dat vybraných signálů) odesílá na Zabbix server jako trapper položky (vms.speed, vms.buf_rows, ...). Na samostatný host serveru posílá nabití baterie UPS, které čte z Eaton Intelligent Power Protector.
Balíček vznikl vyčleněním z projektu pyvms; na něm už nezávisí a s databází BVMS pracuje sám.
Dokumentace
- PRS-zabbixvms.md – Product Requirement Specification: účel projektu, use cases a requirementy.
- PLAN-zabbixvms.md – plán: rozpad requirementů do etap.
- NAVRH-zabbixvms.md – návrh struktury balíčku: jména, členění modulů a odpovědnosti.
- NAVOD-zabbix.md – návod k nastavení Zabbixu: založení hostů, import šablony, mez otáček, odesílání e-mailů při problému, prefixy tabulek surových dat a signály trendových dat.
- CHYBY-agenta.md – co agent hlásí, kde chyby vznikají a kde k nim hledat podrobnosti.
- BUILD-balicku.md – sestavení balíčku: virtuální prostředí, testy,
build.bata publikování.
Instalace
Na serveru, kde má agent běžet, se balíček nainstaluje a pak se zaregistruje služba. Druhý příkaz zapisuje do registru, takže potřebuje příkazovou řádku spuštěnou jako správce:
pip install .
zabbixvms-service install
Registrace nastaví automatický start služby, práva k datové složce a spouštění tray
aplikace po přihlášení uživatele. Na serveru bez přístupu k PyPI se instaluje ze složky
offline – celý postup je v BUILD-balicku.md.
Běží pouze na Windows (pro integraci s Windows Service se používá pywin32).
Python musí být na serveru nainstalovaný pro celý stroj (volba „for all users"), ne jen
pro přihlášeného uživatele. Služba běží pod účtem LocalSystem a hostitelský proces
pythonservice.exe potřebuje najít python3XX.dll. U instalace jen pro uživatele leží tahle
knihovna v %LOCALAPPDATA%, LocalSystem ji na své cestě nemá a služba pak nenastartuje –
ohlásí se jen chyba 1053, protože proces skončí dřív, než stihne odpovědět správci služeb.
Použití
Instalace vytvoří dva vstupní body:
zabbixvms-service– služba WindowsZabbixVms,zabbixvms-tray– ikona v systray, spouští se bez konzolového okna.
Jsou to programy ve složce Scripts toho Pythonu, do kterého se balíček nainstaloval.
Příkazová řádka je zná jen tehdy, když je ta složka v PATH: u Pythonu nainstalovaného pro
celý stroj to platí vždycky, u virtuálního prostředí až po jeho aktivaci. Hlášení
The term 'zabbixvms-service' is not recognized znamená právě tohle, ne chybějící balíček.
Konfigurace (přístupové údaje k MySQL a Zabbixu, seznam monitorovaných turbín) je JSON
v souboru C:\ProgramData\LogicElements\ZabbixVms\config.json. Pokud soubor neexistuje,
vytvoří se při prvním spuštění z výchozí šablony dodané v balíčku; existující soubor
zůstává beze změny i při aktualizaci balíčku. Jen instalační skript z offline do něj při
aktualizaci doplní položky, které přinesla nová verze, a původní soubor nechá vedle jako
config.json.bak.
Balíček žádné heslo neobsahuje: v nově vytvořené konfiguraci jsou hesla do MySQL
(database.password) a do IPP (server.ups.password) prázdná a obsluha je doplní do
config.json. Dokud v něm heslo do MySQL není, agent se nepřipojí a do logu zapíše chybu
přístupu.
Vývoj
Ve vývojovém checkoutu se instaluje editovatelně do virtuálního prostředí a testy se spouští z kořene repozitáře:
.\.venv\Scripts\Activate.ps1
pip install -e ".[dev]"
pytest
Vstupní body pak leží v .venv\Scripts, takže bez aktivovaného prostředí je potřeba plná
cesta – třeba .\.venv\Scripts\zabbixvms-service.exe install. Založení prostředí
i nastavení, které aktivaci povolí, popisuje BUILD-balicku.md.
Licence
MIT © Logic Elements s.r.o. — viz LICENSE.
Metadata
Release files for zabbixvms 0.5.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| zabbixvms-0.5.1.tar.gz | 98.0 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| zabbixvms-0.5.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 145.9 kB
Release files / zabbixvms-0.5.1.tar.gz
| Download URL | zabbixvms-0.5.1.tar.gz |
|---|---|
| Size | 98.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
fff86206a146c47343400e23eea829db5db2e21f7b06c35fa55617c51387e00b
|
|
BLAKE2b-256 checksum How to use checksums |
f3a55a13e54837873e1876e60379f0114c9dfbe7a55a3ec52dcdf9ad194e874c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.7
|
Release files / zabbixvms-0.5.1-py3-none-any.whl
| Download URL | zabbixvms-0.5.1-py3-none-any.whl |
|---|---|
| Size | 47.9 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
44f20f5ff794330f2ad305f79898c67d81c4bcb2575c62597a3bba52e3b4a737
|
|
BLAKE2b-256 checksum How to use checksums |
2ba6010a713b51222a9b0bf561e363e76e96d6b1b42a81d2493ded4e5b2a6c45
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.7
|