Создайте экземпляр EC2 (ubuntu) и подключите экземпляр к локальному терминалу на вашем компьютере.

Действия, которые необходимо выполнить после подключения удаленного экземпляра к вашему терминалу

## Загрузить Anaconda на виртуальную машину Ubuntu

команда 1: wget http://repo.continuum.io/archive/Anaconda3–2020.11-linux-x86_64.sh

2020.11 — последняя версия на момент написания.

## Установить Анаконду

cmd2 :установить Anaconda3–2020.11-linux-x86_64.sh

## Проверьте, какой Python вы используете

cmd3 :какой питон

если этот cmd3 ничего не возвращает, сделайте это

cmd4 : исходный файл .bashrc

после cmd4 снова выполните cmd3, он должен вернуть что-то вроде этого

/home/ubuntu/anaconda3/python

## Настройка JupyterNoteBook

cmd5 :ноутбук jupyter — сгенерировать-конфигурацию

  • между блокнотом и двойным тире должен быть пробел
  • Это создаст файл конфигурации для jupyter в .jupyter/location.

## Редактировать созданный файл конфигурации

cmd6 :cd .jupytrer/

## Откройте редактор Vim для редактирования файла конфигурации

cmd7 :vim jupyter_notebook_config.py

jupyter_notebook_config.py — сгенерированный файл конфигурации

После открытия jupyter_notebook_config.py используйте «i», чтобы вставить (начать редактирование) в этот файл.

вставьте приведенный ниже код поверх файла

  • jupyterNotebook = get_config()
  • jupyterNotebook.NotebookApp.ip = «*» (это позволяет JupyterNotebook работать на всех IP-адресах вашего экземпляра), которые вы можете изменить в зависимости от ваших потребностей.
  • jupyterNotebook.NotebookApp.open_browser = False (по умолчанию браузер не открывается)
  • jupyterNotebook.NotebookApp.port = 9999

После вставки вышеуказанных строк нажмите esc, чтобы остановить редактирование, и введите: wq, чтобы сохранить и выйти из редактора.

## Проверьте, работает ли jupyterNoteBook

cmd8 :блокнот jupyter

вы должны увидеть блокнот Jupyter, работающий на порту 9999

После этого перейдите в aws и скопируйте общедоступный IP-адрес нашего экземпляра (ec2…..)

введите следующий URL в браузере

https://ec2-xx-xx-xxx-xxx:9999

ec2-xx-xx — это скопированный общедоступный IP-адрес вашего экземпляра.

после ввода этого URL-адреса вы, вероятно, получите предупреждение о ненадежном сертификате ((потому что на данный момент у нас нет ssl-сертификата), вы можете игнорировать это предупреждение

## Установка Spark (корневой каталог)

  • Sparks нужна Scala, Scala нужна java для работы
  • поэтому нам нужно установить java и scala

cmd9 :обновление sudo apt

cmd10 :sudo apt install default-jre (установка java)

cmd11 : sudo apt установить scala

используйте эти команды, чтобы проверить, правильно ли они установлены

  • Java-версия; должен вернуть версию Java
  • scala-версия ; должна вернуть версию scala

## Яустанавливаю Py4j

  • Py4J позволяет программам Python, работающим в интерпретаторе Python, динамически получать доступ к объектам Java в виртуальной машине Java.

Чтобы установить эту библиотеку, нам нужно убедиться, что установленный pip подключен к python Anaconda, а не к deafult ubuntu,

для этого мы устанавливаем путь

cmd12 : экспорт PATH=$PATH:$HOME/anaconda3/bin

Теперь используйте conda для установки pip

cmd13 : conda install pip

проверьте, используем ли мы правильный pip или нет, используя команду what pip , она должна вернуть pip, подключенный к anaconda3 (вы увидите путь)

## Установите Spark и Hadoop

источник: https://archive.apache.org/dist/spark

cmd14 : wget https://archive.apache.org/dist/spark/spark-3.1.1/spark-3.1.1-bin-hadoop3.2.tgz

3.1.1 — последняя версия на момент написания статьи.

Он загрузит пакет spark и hadoop, и мы должны его извлечь.

cmd15 : sudo tar -zxvfspark-3.1.1-bin-hadoop3.2.tgz

## Теперь Python должен распознать искру

cmd16: экспорт SPARK_HOME=’/home/ubuntu/spark-3.1.1-bin-hadoop3.2'

cmd17 : экспорт PATH=$SPARK_HOME:$PATH

cmd18 : export PYTHONPATH=$SPARK_HOME/python:$PYTHONPATH

Теперь снова запустите Jupyter Notebook с помощью cmd8.

Откройте ядро ​​Python в браузере (используя этот https://ec2-xx-xx-xxx-xxx:9999)

запустите следующий фрагмент кода

из pyspark импортировать SparkContext

sc = SparkContext()

запустите код, если код работает без ошибок, процесс установки pyspark на AWS EC2 выполнен успешно