Обзор развертывания PyTorch на сервере¶
Предварительные требования и основные условия¶
Среда развертывания требует следующих системных спецификаций и прав доступа:
-
Операционная система: Ubuntu 22.04 LTS (подразумевается наличие
linux-generic-hwe-22.04и логикой определения версии релиза). -
Привилегии: Для начальной конфигурации системы, создания пользователей и установки пакетов требуются права root. В процессе создается учетная запись не-рутового пользователя с именем
user. -
Оборудование: Графический процессор NVIDIA с поддержкой CUDA toolkit. Сценарий установки специфически проверяет наличие модели NVIDIA H100 (PCI ID
10de:2330) для установки соответствующего пакета ядра (linux-generic-hwe-22.04). -
Пакеты: Система устанавливает
curl,wget,sudo,gcc,ubuntu-drivers-commonиlibnvinfer5-dev. -
Порты: Сценарии развертывания не настраивают и не открывают внешние сетевые порты. Приложение работает локально на сервере.
FQDN конечной панели¶
На основе предоставленных переменных конфигурации Полное доменное имя (FQDN) для хоста следующее:
-
Зона:
hostkey.in -
Префикс:
pytorch -
Формат:
pytorch<Server ID>.hostkey.in:<port>
Примечание: Конкретный <Server ID> не определен в предоставленных файлах конфигурации. Развертывание не настраивает веб-панель или внешний сервис, слушающий определенный порт, доступный через этот FQDN. Настройка предназначена строго для локальной среды разработки PyTorch.
Структура файлов и каталогов¶
Файлы приложения и конфигурации организованы в домашней директории учетной записи user:
-
Домашняя директория пользователя:
/home/user -
Виртуальная среда:
/home/user/venv -
Сценарий установки:
/home/user/pytorch_install.sh -
Сценарий активации:
/home/user/pytorch.sh -
Установка CUDA для всей системы:
/usr/local/cuda -
Учетные данные пользователя:
/root/user_credentials(содержит автоматически сгенерированный пароль для учетной записиuser). -
Системные пакеты: Установлены через
aptв стандартные системные расположения.
Процесс установки приложения¶
Установка выполняется с помощью последовательности скриптов оболочки (shell scripts), выполняемых на сервере. Процесс не использует контейнеризацию для самого времени выполнения (runtime) PyTorch.
-
Подготовка системы:
-
Все системные пакеты обновляются до последних версий.
-
Драйверы NVIDIA определяются и устанавливаются на основе рекомендуемой версии для оборудования.
-
Если обнаружен GPU H100, устанавливается пакет ядра
linux-generic-hwe-22.04.
-
-
Установка CUDA Toolkit:
-
Определяется версия релиза Ubuntu.
-
Загружается и устанавливается кольцо ключей CUDA (keyring).
-
Пакет
cudaустанавливается черезapt.
-
-
Создание учетной записи пользователя:
-
Создается пользователь с именем
userсо случайно сгенерированным 8-значным паролем. -
Пароль сохраняется в
/root/user_credentials. -
Пользователь добавляется в группы
sudoиusers.
-
-
Настройка среды Python:
-
Python 3.10,
pipиvenvустанавливаются для всей системы. -
Устанавливается пакет
libnvinfer5-dev.
-
-
Установка PyTorch:
-
Сценарий
pytorch_install.shвыполняется от имени учетной записиuser. -
Этот скрипт создает виртуальную среду Python в
/home/user/venv. -
PyTorch (
torch,torchvision,torchaudio) устанавливается внутри этой виртуальной среды с помощьюpip. -
Переменные среды для CUDA (
PATHиLD_LIBRARY_PATH) добавляются в~/.bashrc.
-
Права доступа и безопасность¶
-
Учетная запись пользователя: Приложение настроено для использования под учетной записью
user. -
Доступ Sudo: Учетная запись
userдобавлена в группуsudo, что позволяет повышать привилегии при необходимости. -
Учетные данные: Пароль для учетной записи
userхранится в файле/root/user_credentialsв виде строки открытого текста. Доступ к этому файлу имеет только пользовательroot. -
Межсетевой экран (Firewall): Предоставленные скрипты не настраивают никаких правил межсетевого экрана (например,
ufwилиiptables). Предполагается, что сервер находится за внешним уровнем безопасности или управляется через политики безопасности на уровне хоста.
Базы данных¶
Руководство по развертыванию и файлы конфигурации не включают установку или настройку каких-либо служб баз данных (таких как MySQL, PostgreSQL или MongoDB). Среда PyTorch представляет собой автономную вычислительную и среду разработки.
Контейнеры Docker и их развертывание¶
Процесс развертывания, описанный в исходных файлах, не использует Docker, Docker Compose или любые технологии контейнеризации. PyTorch устанавливается непосредственно в операционную систему хоста внутри виртуальной среды Python.
Прокси-серверы¶
В предоставленных скриптах не настроены прокси-серверы (Nginx, Traefik, Apache). Развертывание не включает SSL-сертификаты, пользовательские домены или конфигурации веб-серверов.
Настройки разрешений¶
Разрешения на файлы и директории устанавливаются следующим образом в ходе установки:
-
Системные скрипты: Скрипт
install_script.shсоздается в/root/install_script.shс правамиu=rwx,g=r,o=r(744) и принадлежит пользователюroot. -
Скрипты пользователя:
-
pytorch_install.shсоздается в/home/userс правами на выполнение (chmod +x). -
pytorch.shсоздается в/home/userс правами на выполнение (chmod +x).
-
-
Домашняя директория: Директория
/home/userсоздается со стандартными правами собственности для учетной записиuser.
Расположение файлов конфигурации и данных¶
-
Конфигурация пользователя:
~/.bashrcмодифицируется для включения переменных среды CUDA. -
Виртуальная среда:
/home/user/venvсодержит установленные пакеты Python. -
Хранилище учетных данных:
/root/user_credentialsсодержит пароль для учетной записиuser. -
Конфигурация CUDA:
/usr/local/cudaсодержит toolkit CUDA и библиотеки.
Доступные порты для подключения¶
Скрипты развертывания не настраивают никаких сетевых служб прослушивания. Следовательно, ни один порт явно не открывается и не доступен для внешнего подключения в рамках этой установки PyTorch. Среда предназначена для локального выполнения скриптов Python на сервере.
Запуск, остановка и обновление¶
Для PyTorch не создаются служб systemd или фоновых демонов. Приложение запускается и управляется пользователем вручную.
-
Активация среды: Запустите скрипт активации для входа в виртуальную среду:
Или вручную: -
Запуск PyTorch: После активации виртуальной среды выполните скрипты Python напрямую:
-
Деактивация среды: Выйдите из виртуальной среды:
-
Обновление: Для обновления PyTorch активируйте виртуальную среду и используйте pip:
-
Обновления системы: Системные пакеты (CUDA, драйверы) можно обновлять с помощью стандартных команд
aptот имениroot: