Работать из терминала Jupyter/JupyterLab
В Jupyter и JupyterLab можно использовать терминал. Он работает как стандартная Linux-консоль с интерпретатором bash. В командной строке терминала можно исполнять привычные Linux-команды, такие, как ls , wget , git , pip list , pip install —user и др.
Доступны и некоторые специфические операции, например:
- подключиться по SSH к исполняемой задаче ;
- переместить данные из S3 в NFS и обратно .
- Запустить терминал
- Переместить данные между S3 и NFS с помощью командной строки
Запустить терминал
- Создайте Jupyter Server или подключитесь к уже существующему .
- Подключитесь к Jupyter Notebook в рамках Jupyter Server. Для этого нажмите Подключиться . По завершении откроется интерфейс Jupyter Notebook.
- В интерфейсе Jupyter нажмите New , затем Terminal . Откроется терминал.
Чтобы увидеть список поддерживаемых команд, наберите в командной строке:
aicloud --help
Переместить данные между S3 и NFS с помощью командной строки
Чтобы переместить данные:
-
Передайте параметры доступа к бакету S3.
aicloud s3-save-credentials 'YOUR_S3_NAMESPACE' 'YOUR_ACCESS_KEY_ID' 'YOUR_SECURITY_KEY'
Результат отобразится в командной строке:
S3 Credentials "" created
aicloud s3-copy 's3://your_bucket_name/mnist.npz' '/home/jovyan/'
- s3://your_bucket_name/mnist.npz — каталог, откуда копируются файлы.
- /home/jovyan/ — каталог, в который копируются файлы.
- Узнать лимит на количество файлов .
- О других способах перемещения данных
Установка Jupyter Notebook на CentOS

Опубликовано: 18.11.2020
Jupyter Notebook — это приложение для создания книг и документов из вычислительного материала (в формате .ipynb). Его установка и запуск должны выполняться от пользователя с правами, отличными от root. В данной инструкции мы будем выполнять часть операций от последнего, остальное — от пользователя jupyter. Руководство подходит для Linux CentOS версий 7 и 8. Перед установкой можно ознакомиться с приложением онлайн на официальном сайте.
Установка и запуск
От пользователя root устанавливаем необходимые компоненты:
# yum install gcc python3-devel python3-pip kernel-headers
- gcc — набор компиляторов для разных языков программирования.
- python3-devel — средства для разработки Python. Библиотеки и инструменты для создания своих модулей и возможности встраивания Python в другие приложения.
- python3-pip — инструмент для установки пакетов python.
- kernel-headers — заголовочные файлы ядра. Необходимы для сборки модулей последнего.
Создаем пользователя, от которого будем запускать Jupyter Notebook:
# useradd jupyter -m
* наш пользователь будет с именем jupyter. Также мы сразу создаем для него домашний каталог.
Создаем правило в брандмауэре для подключения к Jupyter Notebook по сети:
# firewall-cmd —permanent —add-port=8080/tcp
* предполагается, что наш сервис будет запускаться на порту 8080.
Применяем настройки firewalld:
Заходим в систему под созданным пользователем jupyter:
Выполним установку питон-приложения jupyter:
$ pip3 install —user jupyter
Проверить корректность установки можно командой:
Мы должны увидеть версию установленного приложения, например:
jupyter core : 4.7.0
jupyter-notebook : 6.1.5
qtconsole : 4.7.7
ipython : 7.16.1
ipykernel : 5.3.4
jupyter client : 6.1.7
jupyter lab : not installed
nbconvert : 6.0.7
ipywidgets : 7.5.1
nbformat : 5.0.8
traitlets : 4.3.3
* обратите внимание, что в списке есть jupyter lab, который не установлен. При желании, его устанавливаем командой: pip3 install —user jupyterlab.
Создаем конфигурационный файл для Jupyter Notebook:
jupyter notebook —generate-config
Он должен появиться в домашней директории пользователя jupyter:
Writing default config to: /home/jupyter/.jupyter/jupyter_notebook_config.py
Задаем пароль для входа в веб-панель:
$ jupyter notebook password
Дважды вводим пароль — система создаст для него хэш и сохранить в домашней папке пользователя:
Enter password:
Verify password:
[NotebookPasswordApp] Wrote hashed password to /home/jupyter/.jupyter/jupyter_notebook_config.json
$ jupyter notebook —no-browser —ip=0.0.0.0 —port=8080
* в данном примере мы запускаем jupyter notebook на порту 8080 и на всех сетевых интерфейсах.
Открываем браузер и переходим по пути http://:8080 — должна открывать страница с формой ввода пароля, который мы создавали ранее — вводим его:

Откроется страница Jupyter Notebook:

Если jupyter notebook не открывается в браузере, запускаем другую консоль на компьютере с приложением и выполняем команду:
ss -tunlp | grep 8080
Мы должны увидеть что-то на подобие:
tcp LISTEN 0 128 0.0.0.0:8080 0.0.0.0:* users:((«jupyter-noteboo»,pid=8510,fd=5))
В противном случае проверяем, что у нас запустилось приложение. Но если команда ss -tunlp | grep 8080 показала наличие сервиса, который слушает на порту 8080, еще раз проверяем настройки брандмауэра:
Мы должны увидеть правило:
После окончания работы можно выходить из-под пользователя jupyter:
Запуск в качестве сервиса
Мы установили и запустили наше приложение из консоли. Однако, если мы хотим, чтобы Jupyter Notebook запускался как сервис автоматически, создаем юнит в systemd:
[Unit]
Description=Jupyter Notebook Service
After=network.target
[Service]
User=jupyter
Group=jupyter
Type=simple
WorkingDirectory=/home/jupyter
ExecStart=/home/jupyter/.local/bin/jupyter notebook —no-browser —ip=0.0.0.0 —port=8080
ExecReload=/bin/kill -HUP $MAINPID
Restart=on-failure
Перечитываем конфигурацию systemd:
JupyterLab – Установка и начало работы
Вы можете попробовать онлайн возможности JupyterLab перед установкой. Посетите https://jupyter.org/try и выберите вариант «попробовать JupyterLab».

На вкладке запуска отображаются доступные на данный момент ядра и консоли. Вы можете запустить новый ноутбук / терминал на основе любого из них. В левой колонке также есть вкладки для браузера файлов, запущенные ядра и вкладки, а также вид настроек.
JupyterLab обычно устанавливается автоматически с дистрибутивом Anaconda. Однако его также можно установить отдельно с помощью следующей команды conda –
conda install -c conda-forge jupyterlab
Вы также можете использовать команду pip для этой цели –
pip3 install jupyterlab
Для запуска приложения JupyterLab наиболее удобным способом является Anaconda Navigator, если он установлен.

Поочередно запустите его из командной строки из командной строки Windows / Linux или из командной строки Anaconda, используя эту команду –
jupyter lab
В любом случае, экран запуска приложения JupyterLab выглядит так:
Конвертация Jupyter-ноутбуков для запуска в пакетном режиме на суперкомпьютере (запуск через очередь задач)
Jupyter-ноутбуки можно сконвертировать в py-файл для запуска на суперкомпьютере в пакетном режиме. Благодаря такому режиму Вы сможете запускать сразу множество вычислительных задач с различными параметрами, не дожидаясь освобождения ресурсов. Поиск ресурсов для ваших задач будет круглосуточно выполнять планировщик slurm. Задачи начнут работу сразу после появления ресурсов, не дожидаясь вашего подключения к ноутбуку. После окончания работы пакетная задача будет завершена автоматически и ресурсы суперкомпьютера будут переданы следующим задачам без простоя.
Предварительно следует открыть ноутбук в веб-интерфейсе Jupyter и убедиться, что код подготовлен к автоматическому выполнению без участия пользователя.
Конвертация ноутбука в py-файл возможна следующими способами:
- В интерфейсе JupyterHub перейти в меню File -> Save and Export Notebook As. -> Executable script. После чего загрузить полученный файл на суперкомпьютер.

- В классическом интерфейсе Jupyter Notebook выбрать пункт File -> Download as -> Python (.py). После чего загрузить полученный файл на суперкомпьютер.

- В консоли суперкомпьютера загрузить модуль Python: module load Python и выполнить команду конвертации ноутбука: jupyter nbconvert —to python notebook_name.ipynb (сконвертированный py-файл будет сохранён в каталоге с ноутбуком под названием notebook_name.py).

Для выполнения данного py-файла на суперкомпьютере в пакетном режиме необходимо подготовить sbatch-файл. Пример sbatch-файла converted_notebook.sbatch для запуска сконвертированного ноутбука:
#!/bin/bash #SBATCH --job-name=converted_notebook # Название задачи #SBATCH --time=01-00 # Максимальное время выполнения
#SBATCH --nodes=1 # Все CPU и GPU будут выделены на одном вычислительном узле #SBATCH --cpus-per-task=4 # Количество CPU на одну задачу #SBATCH --gpus=2 # Требуемое кол-во GPU
#SBATCH --constraint="type_a|type_b|type_c" # Типы вычислительных узлов
#SBATCH --mail-type=END,FAIL # Укажите ваш email для отправки уведомлений
#SBATCH --mail-user=ваша_почта # События, требующие уведомления
module purge # Отключаем все ранее загруженные модули module load Python/PyTorch_GPU_v1.11 # Загрузка модуля Python PyTorch_GPU_v1.11 ipython converted_notebook.py # Выполнение расчёта
Укажите требуемые параметры для запуска задачи, название модуля/окружения, адрес электронной почты и имя файла. Для запуска задачи на суперкомпьютере необходимо выполнить команду sbatch converted_notebook.sbatch
Код из py-файла будет выполнен с использованием ipython точно также, как он выполняется в Jupyter-ноутбуке.
Подробно процесс подготовки sbatch-файлов и запуска задач описан в отдельной инструкции.
Ограчения пакетного режима
- В пакетном режиме запуска задач не будут сформированы графики с использованием модулей типа matplotlib.pyplot. Графики можно сохранять в файл, используя метод pyplot.savefig(‘plot_name.png’)
Нашли опечатку ?
Выделите её, нажмите Ctrl+Enter и отправьте нам уведомление. Спасибо за участие!
Сервис предназначен только для отправки сообщений об орфографических и пунктуационных ошибках.
Национальный исследовательский университет «Высшая школа экономики» → Отдел суперкомпьютерного моделирования → Конвертация Jupyter-ноутбуков для запуска в пакетном режиме на суперкомпьютере (запуск через очередь задач)
- О ВЫШКЕ
- Цифры и факты
- Руководство и структура
- Преподаватели и сотрудники
- Корпуса и общежития
- Закупки
- Обращения граждан в НИУ ВШЭ
- Фонд целевого капитала
- Противодействие коррупции
- Сведения о доходах, расходах, об имуществе и обязательствах имущественного характера
- Сведения об образовательной организации
- Людям с ограниченными возможностями здоровья
- Единая платежная страница
- Работа в Вышке
- ОБРАЗОВАНИЕ
- Лицей
- Довузовская подготовка
- Олимпиады
- Прием в бакалавриат
- Вышка+
- Прием в магистратуру
- Аспирантура
- Дополнительное образование
- Центр развития карьеры
- Бизнес-инкубатор ВШЭ
- НАУКА
- Научные подразделения
- Исследовательские проекты
- Мониторинги
- Диссертационные советы
- Защиты диссертаций
- Академическое развитие
- Конкурсы и гранты
- Научно-образовательный портал IQ.hse.ru
- XXIV Ясинская (Апрельская) международная научная конференция по проблемам развития экономики и общества
- РЕСУРСЫ
- Библиотека
- Издательский дом ВШЭ
- Книжный магазин «БукВышка»
- Типография
- Медиацентр
- Журналы ВШЭ
- Публикации
- Единый архив экономических и социологических данных
- Полезные ссылки
- Министерство науки и высшего образования РФ
- Министерство просвещения РФ
- Федеральный портал «Российское образование»
- Массовые открытые онлайн-курсы
Шрифты HSE Sans и HSE Slab разработаны в Школе дизайна НИУ ВШЭ