python-compute/README.md
2023-06-17 20:07:50 +03:00

28 lines
1.7 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Node Agent
Агент для работы на ворк-нодах.
Пока взаимодействовать можно только так (через [test.py](test.py)):
```
sudo env NODEAGENT_CONFIG_FILE=$PWD/configuration.toml python test.py
```
# Модули
Основной класс тут `NodeAgent`. Через него осуществляется доступ ко всем методам.
- `base` тут базовый класс.
- `main` тут объявлен `NodeAgent`.
- `exceptions` тут исключения.
- `config` тут понятно.
- `vm` тут объявлен класс `VirtualMachine` с базовыми методами для виртуалок. Генерацию XML для дефайна ВМ следует сделать в отдельном модуле.
# TODO
Нужно что-то придумать с обработкой ошибок. Сейчас на неожиданности я вызываю исключения, нужно некритичные из них обработать, чтобы приложение не падало при обращении к несуществующему домену или нефатальных ошибок при работе с существующими доменами.
# Как это должно выглядеть
`node-agent` должен быть обычным DEB-пакетом. В пакете само приложение, sysyemd-сервис, конфиг. Бонусом можно доложить консольные утилиты (пока не реализованы): `nodeagent-vmctl` (чтобы напрямую дергать методы виртуалок), `guest-cmd` (обёртка над virsh quest-agent-command).