Как подключиться к кластеру dataproc с ноутбуками Jupyter из облачной оболочки
1378 просмотра
2 ответа
Я видел инструкции здесь https://cloud.google.com/dataproc/docs/tutorials/jupyter-notebook для настройки ноутбуков Jupyter с помощью dataproc, но я не могу понять, как изменить процесс, чтобы использовать оболочку Cloud вместо создания туннеля SSH локально. Я смог подключиться к ноутбуку datalab, запустив
datalab connect vmname
из облачной оболочки, а затем с помощью функции предварительного просмотра. Я хотел бы сделать что-то подобное, но с ноутбуками Jupyter и кластером dataproc.
Автор: dobbysock1002 Источник Размещён: 10.09.2019 08:50Ответы (2)
3 плюса
Теоретически, вы можете в основном следовать тем же инструкциям, что и https://cloud.google.com/shell/docs/features#web_preview, чтобы использовать локальную переадресацию портов для доступа к вашим ноутбукам Jupyter в Dataproc через тот же «предварительный просмотр в Интернете» в Cloud Shell. особенность. Что-то вроде следующего в вашей облачной оболочке:
gcloud compute ssh my-cluster-m -- -L 8080:my-cluster-m:8123
Однако есть две проблемы, которые мешают этому работать:
Вам необходимо изменить конфигурацию Jupyter, добавив в нижнюю часть следующее
/root/.jupyter/jupyter_notebook_config.py
:c.NotebookApp.allow_origin = '*'
Для предварительного просмотра в Cloud Shell необходимо добавить поддержку веб-сокетов.
Если вы не сделаете (1), вы получите всплывающие ошибки при попытке создать блокнот из-за отказа Jupyter прокси-домена облачной оболочки. К сожалению (2) требуется более глубокая поддержка самой Cloud Shell; это проявится как ошибки типаA connection to the notebook server could not be established.
Другой возможный вариант без ожидания (2) - запустить собственный прокси-сервер nginx как часть действия инициализации jupyter в кластере Dataproc, если вы можете соответствующим образом получить его для веб-сокетов прокси. Смотрите эту тему для аналогичной ситуации: https://github.com/jupyter/notebook/issues/1311
Обычно этот тип поддержки неработающих веб-сокетов в прокси-слоях является распространенной проблемой, поскольку он все еще является относительно новым; со временем все больше и больше вещей будут поддерживать веб-сокеты из коробки.
В качестве альтернативы:
Dataproc также поддерживает использование действия инициализации Datalab; это настроено так, что проксирование websockets уже позаботилось. Таким образом, если вы не слишком зависимы только от Jupyter, то в облачной оболочке работает следующее:
gcloud dataproc clusters create my-datalab-cluster \
--initialization-actions gs://dataproc-initialization-actions/datalab/datalab.sh
gcloud compute ssh my-datalab-cluster-m -- -L 8080:my-datalab-cluster-m:8080
А затем выберите обычный «Веб-просмотр» на порте 8080. Или вы можете выбрать другие поддерживаемые Cloud Shell порты для локальной привязки, например:
gcloud compute ssh my-datalab-cluster-m -- -L 8082:my-datalab-cluster-m:8080
В этом случае вы бы выбрали 8082
порт предварительного просмотра.
0 плюса
Вы не можете подключиться к Dataproc через Datalab, установленный на виртуальной машине (на GCE).
В качестве документации, которую вы упомянули, вы должны запустить Dataproc с действием инициализации Datalab.
Более того, Datalab connect
команда доступна только в том случае, если вы создали Datalab благодаря этой Datalab create
команде.
Вы должны создать SSH-туннель к своему главному узлу («vmname-m», если имя вашего кластера «vmname») с помощью:
gcloud compute ssh --zone YOUR-ZONE --ssh-flag="-D 1080" --ssh-flag="-N" --ssh-flag="-n" "vmname-m"
Автор: Olivier
Размещён: 14.04.2017 10:12
Вопросы из категории :
- google-cloud-platform Как использовать Google App Engine с моим собственным голым доменом (не поддоменом)?
- google-cloud-platform Наглядный пример использования Google App Engine Images get_serving_url ()
- google-cloud-platform Как открыть определенный порт, например 9090, в Google Compute Engine
- google-cloud-platform Как увеличить размер корневого диска в Google Compute Engine?
- google-cloud-platform В чем разница между Google App Engine и Google Compute Engine?
- jupyter-notebook в блокноте Ipython / Jupyter, Pandas не отображает график, который я пытаюсь построить
- jupyter-notebook Как написать LaTeX в IPython Notebook?
- jupyter-notebook How can I open the interactive matplotlib window in IPython notebook?
- jupyter-notebook «ImportError: модуль не указан» при попытке запустить скрипт Python
- jupyter-notebook Можно ли печатать разными цветами в ноутбуке ipython?
- google-cloud-dataproc Примеры Dataproc + BigQuery - есть ли в наличии?
- google-cloud-dataproc Гуава версия при использовании спарк-оболочки
- google-cloud-dataproc Pausing Dataproc cluster - Google Compute engine
- google-cloud-dataproc SparkR на Dataproc (Spark 1.5.x) не работает
- google-cloud-dataproc Мониторинг сеансов Spark-Shell или PySpark-Shell в кластере Dataproc
- gcp Как сбросить постоянный диск пользователя Google Cloud Shell?
- gcp Taggin BigQuery заданий / запросов с пользовательскими метаданными
- gcp Google Cloud Stackdriver Monitor Использование вычислительного диска
- gcp Google Big Query - таблицы с разделением по датам с возможными данными
- gcp BigQuery DeDuplication на два столбца как уникальный ключ