Перейти к содержанию

Обзор развертывания TensorFlow на сервере

Предварительные требования

Для успешного развертывания среды выполнения TensorFlow с поддержкой GPU необходимо соблюдение следующих условий:

  • Операционная система: Ubuntu или Debian.

  • Аппаратное обеспечение: Наличие графического ускорителя NVIDIA (в частности, оптимизировано для моделей H100).

  • Права доступа: Права суперпользователя (sudo) для установки системных пакетов и драйверов.

  • Сетевой доступ: Доступ к репозиториям Ubuntu, серверам NVIDIA и PyPI для загрузки драйверов, CUDA и библиотек Python.

Процесс установки приложения

Процесс развертывания является комплексным и включает в себя настройку операционной системы, установку проприетарных драйверов и подготовку изолированной среды Python.

1. Подготовка операционной системы

  • Обновление всех системных пакетов до последних версий.

  • Удаление неиспользуемых зависимостей и очистка системы.

  • Установка базовых утилит: curl, wget, sudo.

  • Если система обнаруживает видеокарту модели H100, устанавливается пакет ядра linux-generic-hwe-22.04 для обеспечения совместимости.

2. Настройка графической подсистемы (NVIDIA)

  • Установка пакета ubuntu-drivers-common.

  • Автоматический поиск и установка рекомендуемого проприетарного драйвера NVIDIA.

  • Установка компилятора gcc.

  • Добавление репозитория NVIDIA и установка пакета cuda.

3. Настройка пользователя и окружения

  • Создание системного пользователя user с домашним каталогом /home/user и правами администратора (sudo).

  • Генерация случайного пароля для пользователя (сохраняется в файле /root/user_credentials).

  • Установка библиотек разработки: libnvinfer5-dev.

  • Установка Python 3.10, менеджера пакетов pip и инструмента создания виртуальных окружений venv.

4. Настройка среды выполнения TensorFlow

Для пользователя user выполняется автоматическая настройка среды:

  • Создается виртуальное окружение (venv).

  • Устанавливается пакет tensorflow[and-cuda].

  • Загружается и распаковывается библиотека TensorRT (версия 8.6.1).

  • Устанавливаются необходимые библиотеки через pip (включая wheel и обновленный tensorrt).

Кастомные скрипты и дополнительные настройки

В процессе развертывания используются специализированные скрипты для автоматизации сложных этапов:

Имя файла Расположение Назначение
install_script.sh /root/install_script.sh Основной установочный скрипт: настройка драйверов NVIDIA, CUDA, создание пользователя и подготовка Python-окружения.
tensorflow_install.sh /home/user/tensorflow_install.sh Скрипт установки библиотек внутри виртуального окружения: установка TensorFlow, TensorRT и проверка доступности GPU.
tensorflow.sh /home/user/tensorflow.sh Скрипт активации среды: настройка путей PATH, LD_LIBRARY_PATH для CUDA и TensorRT, а также инициализация переменных окружения.

Права доступа и безопасность

  • Пользователь: Для работы с приложением используется выделенный пользователь user.

  • Безопасность: Пароль пользователя генерируется случайным образом через openssl и хранится в /root/user_credentials.

  • Ограничения: Все основные операции по установке драйверов выполняются от имени суперпользователя, в то время как работа с библиотеками Python изолирована внутри виртуального окружения пользователя.

Расположение конфигурационных файлов и данных

Тип данных Путь / Описание
Данные пользователя /home/user
Виртуальное окружение Python /home/user/venv
Библиотеки TensorRT /home/user/TensorRT-8.6.1.6/lib
Файл с учетными данными /root/user_credentials

Доступные порты для подключения

В данной конфигурации явные сетевые порты приложения не открываются, так как развертывание ориентировано на локальное выполнение вычислений через Python. Однако для работы GPU требуются стандартные системные ресурсы.

Запуск и управление приложением

Для начала работы с TensorFlow необходимо активировать настроенную среду:

  1. Переключиться на пользователя user:

    su - user
    

  2. Активировать окружение с помощью вспомогательного скрипта:

    source ~/tensorflow.sh
    

После активации можно запускать Python-скрипты, использующие TensorFlow. Для проверки работоспособности используется команда:

python3 -c "import tensorflow as tf; print(tf.config.list_physical_devices())"

question_mark
Я могу вам чем-то помочь?
question_mark
ИИ Помощник ×