PVE. Установка сервисного пакета окружения: различия между версиями
Материал из Флора AI
Нет описания правки |
E.Elagina (обсуждение | вклад) |
||
| Строка 20: | Строка 20: | ||
[https://cloud.connect2ai.net/index.php/apps/files/?dir=/pve&fileid=612 Дистрибутив] распространяется в виде универсального установочного пакета. Для установки пакета запустить инсталлятор с требуемыми ключами. При запуске без ключей инсталлятор выдаст короткую справку. Пакет может быть установлен в ''онлайн'' режиме, при наличии прямого доступа в интернет или через прокси. Для установки в оффлайн режиме сперва нужно запустить экземпляр скрипта на копии целевой системы (версии и ядра) с доступом в интернет. | [https://cloud.connect2ai.net/index.php/apps/files/?dir=/pve&fileid=612 Дистрибутив] распространяется в виде универсального установочного пакета. Для установки пакета запустить инсталлятор с требуемыми ключами. При запуске без ключей инсталлятор выдаст короткую справку. Пакет может быть установлен в ''онлайн'' режиме, при наличии прямого доступа в интернет или через прокси. Для установки в оффлайн режиме сперва нужно запустить экземпляр скрипта на копии целевой системы (версии и ядра) с доступом в интернет. | ||
* Загрузить последнюю версию окружения <code>curl -s "<nowiki>https://repo.connect2ai.net/api/pve/new</nowiki>" --user '[user]:[pass]' 2>&1 | bash</code> или в интерактивном режиме <code>bash -c "$(curl -s <nowiki>https://repo.connect2ai.net/api/pve</nowiki> --user '[user]:[pass]' 2>&1)"</code>. | * Загрузить последнюю версию окружения <code>curl -s "<nowiki>https://repo.connect2ai.net/api/pve/new</nowiki>" --user '[user]:[pass]' 2>&1 | bash</code> или в интерактивном режиме <code>bash -c "$(curl -s <nowiki>https://repo.connect2ai.net/api/pve</nowiki> --user '[user]:[pass]' 2>&1)"</code>. | ||
* Обновить PVE <code>/opt/pve/inupdate</code> в интерактивном режиме. Или запустить с | * Обновить PVE <code>/opt/pve/inupdate</code> в интерактивном режиме. Или запустить с ключом: | ||
** <code>/opt/pve/inupdate -b</code> - обновить до последней beta версии; | ** <code>/opt/pve/inupdate -b</code> - обновить до последней beta версии; | ||
** <code>/opt/pve/inupdate -r</code> - обновить до последней release версии; | ** <code>/opt/pve/inupdate -r</code> - обновить до последней release версии; | ||
| Строка 29: | Строка 29: | ||
* В папке с окружением можно добавить 2 файла конфигурации (данные фалы так же будут использоваться продуктами при отсутствие у них своих): | * В папке с окружением можно добавить 2 файла конфигурации (данные фалы так же будут использоваться продуктами при отсутствие у них своих): | ||
** echo -n <code>"[user]:[pass]"</code> > /opt/pve/.userapi (это файл авторизации в API, нужен для обновления) | ** echo -n <code>"[user]:[pass]"</code> > /opt/pve/.userapi (это файл авторизации в API, нужен для обновления) | ||
** echo -n <code>"<nowiki>http://example.com:3128</nowiki> [user] [password]"</code> > /opt/pve/.proxy (это файл конфигурации proxy необходим для обновления, при | ** echo -n <code>"<nowiki>http://example.com:3128</nowiki> [user] [password]"</code> > /opt/pve/.proxy (это файл конфигурации proxy необходим для обновления, при отсутствующем прямом подключение к интернету) | ||
При | При установке рядом со скриптом окружения можно положить freeze.txt с альтернативным набором модулей. В потоке вывода в результате вы увидите сообщение "Существует внешний файл список модулей pip3". | ||
| Строка 91: | Строка 91: | ||
|''-i/--install - для установки с системными пакетами'' | |''-i/--install - для установки с системными пакетами'' | ||
| -f/--full - полный набор pip3 модулей под все типы | | -f/--full - полный набор pip3 модулей под все типы | ||
| rowspan="6" |Данные наборы ключей используются совместно, в разных комбинациях. Сборка с ключем CPU актуально при отсуствие видеокарты в системе, собранный | | rowspan="6" |Данные наборы ключей используются совместно, в разных комбинациях. Сборка с ключем CPU актуально при отсуствие видеокарты в системе, собранный инсталлятор весит ~1Gb. Ключ полного набора модулей делает инсталлятор универсальным, но такой инсталлятор весит ~9Gb. Если инстялятор был собран с ключем устновки под другую ОС, его так же можно использовать с ключем обновления для текущей или любой другой. Если набор модулей, который включен в оффлайн инсталлятор не достаточен, он попытается загрузить не достающие модули из интернета напримую или предложит ввести настройки Proxy. | ||
|- | |- | ||
| | | | ||
| Строка 131: | Строка 131: | ||
| | | | ||
| | | | ||
|Удаляем, внутренний архим из инстялятора. Редактирование | |Удаляем, внутренний архим из инстялятора. Редактирование инсталлятора с архивом может привезти к повреждению архива. | ||
|} | |} | ||
Примеры использования ключей | Примеры использования ключей | ||
Версия от 16:06, 5 февраля 2025
Общее описание
Пакет Python Virtual Environment (PVE) предназначен для подготовки виртуального python3 окружения для работы сервисов:
• Short Phrase Recognizer • Simple Biometry Server • Simple Entity Extractor • Simple Message Classifier • Text To Speech Server
Термины и определения
Python Virtual Environment (PVE) – пакет для установки python3 окружения для сервисов. Самостоятельно PVE не используется.
Расчет нагрузки
Для установки пакета требуется свободное место в каталоге /opt не менее 3Gb, без поддержки видеокарты, и/или 8Gb с поддержкой.
Так же при установки используется временная папка /tmp/archive, куда распаковывается содержимое архива до 7Gb.
Установка/обновление пакета окружения
Дистрибутив распространяется в виде универсального установочного пакета. Для установки пакета запустить инсталлятор с требуемыми ключами. При запуске без ключей инсталлятор выдаст короткую справку. Пакет может быть установлен в онлайн режиме, при наличии прямого доступа в интернет или через прокси. Для установки в оффлайн режиме сперва нужно запустить экземпляр скрипта на копии целевой системы (версии и ядра) с доступом в интернет.
- Загрузить последнюю версию окружения
curl -s "https://repo.connect2ai.net/api/pve/new" --user '[user]:[pass]' 2>&1 | bashили в интерактивном режимеbash -c "$(curl -s https://repo.connect2ai.net/api/pve --user '[user]:[pass]' 2>&1)". - Обновить PVE
/opt/pve/inupdateв интерактивном режиме. Или запустить с ключом:/opt/pve/inupdate -b- обновить до последней beta версии;/opt/pve/inupdate -r- обновить до последней release версии;/opt/pve/inupdate -n- обновить до последней версии (не важно beta или release).
- Проверить актуальную версию окружения
curl -s "https://repo.connect2ai.net/api/pve/version. - Посмотреть лог изменений
curl -s "https://repo.connect2ai.net/api/pve/changelog" --user '[user]:[pass]'. - Полное описание всех команд API репозитория можно найти по ссылке https://repo.connect2ai.net/api.
[user]:[pass]- это тот же логин и пароль, что и от Nextcloud. - В папке с окружением можно добавить 2 файла конфигурации (данные фалы так же будут использоваться продуктами при отсутствие у них своих):
- echo -n
"[user]:[pass]"> /opt/pve/.userapi (это файл авторизации в API, нужен для обновления) - echo -n
"http://example.com:3128 [user] [password]"> /opt/pve/.proxy (это файл конфигурации proxy необходим для обновления, при отсутствующем прямом подключение к интернету)
- echo -n
При установке рядом со скриптом окружения можно положить freeze.txt с альтернативным набором модулей. В потоке вывода в результате вы увидите сообщение "Существует внешний файл список модулей pip3".
Варианты использование инсталлятора
Описание ключей установки приведено в таблице
| Параметр,
назначение |
Параметр,
назначение |
Параметр,
назначение |
Примечание |
|---|---|---|---|
| -i/--install - установить окружение | -on/--online - онлайн | -cpu/--cpu - полный набор pip3 модулей под CPU | Данные наборы ключей используются совместно, в разных комбинациях. Что бы устновить в оффлайн режиме, необходимо собрать скрипт с ключём -b/--build. Установка с ключем CPU актуально при отсуствие видеокарты в системе, окружение занимает всего ~3Gb. |
| -off/--offline - оффлайн | -cu11/--cu11- полный набор pip3 модулей под GPU CU11.8 | ||
| -cu12/--cu12 - полный набор pip3 модулей под GPU CU12.1 | |||
| -ups/--ups - отдельное окружение для ups | |||
| -res/--res - отдельное окружение для res | |||
| -u/--update - обновить окружение | -on/--online - онлайн | -cpu/--cpu - полный набор pip3 модулей под CPU | Данные наборы ключей используются совместно, в разных комбинациях. Что бы обновить в оффлайн режиме, необходимо собрать скрипт с ключём -b/--build. Обновление с ключем CPU актуально при отсуствие видеокарты в системе, окружение занимает всего ~3Gb. Обновление отличается от устновки, тем что пропускается этап установки системных пакетов. Ставится только окружение с модулями. Оффлайн исталятор с ключем обновления становится универсальным под любую ОС, так как не зависим от системных пакетов. |
| -off/--offline - оффлайн | -cu11/--cu11- полный набор pip3 модулей под GPU CU11.8 | ||
| -cu12/--cu12 - полный набор pip3 модулей под GPU CU12.1 | |||
| -ups/--ups - отдельное окружение для ups | |||
| -res/--res - отдельное окружение для res | |||
| -b/--build - скачать все пакеты, и модули, и упаковать в скрипт | -i/--install - для установки с системными пакетами | -f/--full - полный набор pip3 модулей под все типы | Данные наборы ключей используются совместно, в разных комбинациях. Сборка с ключем CPU актуально при отсуствие видеокарты в системе, собранный инсталлятор весит ~1Gb. Ключ полного набора модулей делает инсталлятор универсальным, но такой инсталлятор весит ~9Gb. Если инстялятор был собран с ключем устновки под другую ОС, его так же можно использовать с ключем обновления для текущей или любой другой. Если набор модулей, который включен в оффлайн инсталлятор не достаточен, он попытается загрузить не достающие модули из интернета напримую или предложит ввести настройки Proxy. |
| -u/--update - для обновления, только окружение | -cpu/--cpu - полный набор pip3 модулей под CPU | ||
| -cu11/--cu11- полный набор pip3 модулей под GPU CU11.8 | |||
| -cu12/--cu12 - полный набор pip3 модулей под GPU CU12.1 | |||
| -ups/--ups - отдельное окружение для ups | |||
| -res/--res - отдельное окружение для res | |||
| -u/--uninstall - удалить окружение | Одинарный ключ, удаляет окружение из папки /opt | ||
| -e/--extract - скопировать внутренний архив рядом со скриптом | -d/--dir путь/имя_каталога | Второй аргумент не обязательный. Без указания папки, распакуется архив. С указанием папки, распакуется содержимое архива в указанную папку. | |
| -p/--pack имя_архива - запаковать архив в скрипт | -d/--dir путь/имя_каталога | Второй аргумент не обязательный. Без указания папки, к установщику приерепляем архив. С указанием папки, к установщику приерепляем содержимое каталога. | |
| -n/--null - удалить внутренний архив из скрипта | Удаляем, внутренний архим из инстялятора. Редактирование инсталлятора с архивом может привезти к повреждению архива. |
Примеры использования ключей
-- Установить окружение с полным набором модулей под CPU
Пример использования: ./pve-<версия>-<релиз>.sh -i -cpu -on
-- Установить окружение из заранее собранного инсталлера с полным набором модулей под CPU
Пример использования: ./pve-<версия>-<релиз>.sh -i -cpu -off
-- Собрать все пакеты для установки оффлайн окружения с полным набором модулей под CPU
Пример использования: ./pve-<версия>-<релиз>.sh -b -i -cpu
-- Собрать все пакеты для обновления оффлайн окружения с полным набором модулей под CPU
Пример использования: ./pve-<версия>-<релиз>.sh -b -u -cpu
-- Скопировать внутренний архив рядом со скриптом не распаковывая в папку
Пример использования: ./pve-<версия>-<релиз>.sh -e
-- Запаковать архив в скрипт
Пример использования: ./pve-<версия>-<релиз>.sh -p <service>-offline.tgz
-- Сжать каталог и запаковать архив в скрипт
Пример использования: ./pve-<версия>-<релиз>.sh -p -d <имя каталога>
-- Распаковать внутренний архив рядом со скриптом в каталог
Пример использования: ./pve-<версия>-<релиз>.sh -e -d archive
-- Удалить внутренний архив из скрипта
Пример использования: ./pve-<версия>-<релиз>.sh --null
-- Удалить окружение
Пример использования: ./pve-<версия>-<релиз>.sh --uninstall
Удаление окружения
Для удаления выполните команду: /opt/pve/uninstall.
Часто задаваемые вопросы
| Вопрос | Ответ |
|---|---|