Перейти к содержимому

Как запустить jupiter notebook через консоль

  • автор:

Работать из терминала Jupyter/JupyterLab

В Jupyter и JupyterLab можно использовать терминал. Он работает как стандартная Linux-консоль с интерпретатором bash. В командной строке терминала можно исполнять привычные Linux-команды, такие, как ls , wget , git , pip list , pip install —user и др.

Доступны и некоторые специфические операции, например:

  • подключиться по SSH к исполняемой задаче ;
  • переместить данные из S3 в NFS и обратно .
  • Запустить терминал
  • Переместить данные между S3 и NFS с помощью командной строки

Запустить терминал

  1. Создайте Jupyter Server или подключитесь к уже существующему .
  2. Подключитесь к Jupyter Notebook в рамках Jupyter Server. Для этого нажмите Подключиться . По завершении откроется интерфейс Jupyter Notebook.
  3. В интерфейсе 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:

Стартовая страница 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

На вкладке запуска отображаются доступные на данный момент ядра и консоли. Вы можете запустить новый ноутбук / терминал на основе любого из них. В левой колонке также есть вкладки для браузера файлов, запущенные ядра и вкладки, а также вид настроек.

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-файл возможна следующими способами:

  1. В интерфейсе JupyterHub перейти в меню File -> Save and Export Notebook As. -> Executable script. После чего загрузить полученный файл на суперкомпьютер.
  2. В классическом интерфейсе Jupyter Notebook выбрать пункт File -> Download as -> Python (.py). После чего загрузить полученный файл на суперкомпьютер.
  3. В консоли суперкомпьютера загрузить модуль 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 разработаны в Школе дизайна НИУ ВШЭ

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *