Создайте экземпляр 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 выполнен успешно