Панель управления для гипервизоров VMware ESX / ESXi
Go to file
2024-11-28 21:07:52 +03:00
routers Добавлен проект 2024-11-28 21:07:52 +03:00
static Добавлен проект 2024-11-28 21:07:52 +03:00
templates Добавлен проект 2024-11-28 21:07:52 +03:00
.gitignore Добавлен проект 2024-11-28 21:07:52 +03:00
app.py Добавлен проект 2024-11-28 21:07:52 +03:00
create-update.sh Добавлен проект 2024-11-28 21:07:52 +03:00
db_manager.py Добавлен проект 2024-11-28 21:07:52 +03:00
default.env Добавлен проект 2024-11-28 21:07:52 +03:00
forms.py Добавлен проект 2024-11-28 21:07:52 +03:00
README.md Добавлен проект 2024-11-28 21:07:52 +03:00
requirements.txt Добавлен проект 2024-11-28 21:07:52 +03:00
start.sh Добавлен проект 2024-11-28 21:07:52 +03:00
stop.sh Добавлен проект 2024-11-28 21:07:52 +03:00
upd-file.txt Добавлен проект 2024-11-28 21:07:52 +03:00
update.sh Добавлен проект 2024-11-28 21:07:52 +03:00
vms.py Добавлен проект 2024-11-28 21:07:52 +03:00
wsgi.py Добавлен проект 2024-11-28 21:07:52 +03:00

Проект dashboard'а команды Printum

Основные возможности и функционал:

  1. Резервирование виртуальной машины (далее - ВМ) за исполнителем с указанием задачи.

  2. Редактирование данных ВМ и удаление из списка.

  3. Управление ВМ - запуск, остановка и перезагрузка.

Описание и функционал:

    Перед первоначальным запуском необходимо настроить параметры в файле .env:

DB_TYPE - поддерживаемые БД SQLite (указать - sqlite), PostgreSQL (указать - postgresql), MySQL (указать - mysql).

При установке параметра == sqlite, указывать только DB_NAME.

DB_USER - имя пользователя БД.

DB_PASS - пароль пользователя БД

DB_HOST - хост БД.

DB_PORT - порт БД.

DB_NAME - имя БД.

SESSION_TYPE - место хранения сессии пользователя, возможна установка параметров file (хранение сессии локально), redis (хранение сессии на сервере Redis)

REDIS_HOST - хост сервера Redis.

REDIS_PORT - порт сервера Redis.

REDIS_DB - номер БД сервера Redis.

REDIS_PASS - пароль БД сервера Redis.

SESSION_LIFETIME - время жизни сессии пользователя.

SESSION_KEY_PREFIX - префикс для сессии.

HYPER1_HOST - хост 1-го гипервизора.

HYPER2_HOST - хост 2-го гипервизора. HYPER3_HOST - хост 3-го гипервизора.

HYPER4_HOST - хост 4-го гипервизора. HYPER1_USER - пользователь 1-го гипервизора.

HYPER2_USER - пользователь 2-го гипервизора.

HYPER3_USER - пользователь 3-го гипервизора.

HYPER4_USER - пользователь 4-го гипервизора.

HYPER1_PASS - пароль 1-го гипервизора.

HYPER2_PASS - пароль 2-го гипервизора.

HYPER3_PASS - пароль 3-го гипервизора.

HYPER4_PASS - пароль 4-го гипервизора.

DISABLING_TASK - отключение выполнения фоновых задач (треюуется рестарт сервиса).

PERFORMANCE - параметр устанавливающий как производить полное обновление. По времени (параметр - time) или череч определенный промежуток времени (параметр - period).

FULL_UPDATE - при выборе параметра period установить количество минут через какое проводить полное обновление.

HOUR_FULL_UPDATE - при выборе параметра time установить время в формате 00:00 в которое будет запаскаться полное обновление.

POWER_STATUS_UPDATE - период в минутах через которое будет запускаться обновление статусов ВМ.

REGISTER_OFF - при установленном значение True будет отключена регистрация.

SECRET - секретный ключ.

Запуск

    Для запуска сервиса выполните скрипт start.sh с правами администратора. При передаче скрипту параметра -dev приложение запустится в режиме разработки.

Пример:

sudo ./start.sh

При таком запуске приложение будет запущено на 5000 порту.

sudo ./start.sh -dev

При таком запуске приложение будет запущено в режиме разработчика.

sudo ./start.sh 80

При таком запуске приложение будет запущено на 80 порту (порт указать возможно любой).

Остановка

Для остановки выполните скрипт stop.sh

Пример:

sudo ./stop.sh

Обновление

    Перед обновление ОБЯЗАТЕЛЬНО сделать снапшот системы и остановить сервис. После запустить выполнение скрипта create-update.sh (файлы которые "попадут" в обновление указываются в upd-file.txt)

sudo ./create-update.sh

При выполнении с параметром -copy созданный во время выполнения скрипта архив будет передан на сервер проекта в директорию /tmp/update-dashboard (будет запрошен пароль от пользователя user), далее необходимо созданный архив распаковать на сервере проекта в директорю /tmp/update-dashboard и выполнить скрипт update.sh

sudo ./update.sh

При передачи параметра -all файлы которые есть в обновлении но нет в проекте будут добавлены без запроса, иначе на каждый файл будет запрос добавления (обновление будет производится согласно файла upd-file.txt)