가상환경에서 PySpark 개발환경 구축하기

윈도우에서 우분투 설치하고 가상환경 세팅하기


WSL2설치

윈도우에서 우분투 리눅스를 사용하려면 WSL2를 설치해주어야 한다.


step1

윈도우 검색바에서 Windows 기능 켜기/끄기 를 검색하고 실행!!

‘Windows 하이퍼바이저 플랫폼’‘가상 머신 플랫폼’에 체크하고 재부팅을 해주어야 한다.

이미 체크가 되어있다면 다음단계로 넘어가자.

1


step2

윈도우 검색바에서 Windows PowerShell 을 검색하고 관리자 권한으로 실행!!

Windows PowerShell에서 아래의 문장들을 각각 하나씩 순서대로 입력해주고 실행해준다.

둘 다 실행하였다면 재부팅을 해주어야 한다.

dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart


재부팅 이 완료되었으면 Windows PowerShell 실행 후 아래 텍스트를 입력해주고 실행해준다.

wsl --set-default-version 2

2


우분투 설치하고 가상환경 세팅하기


우분투 설치

Microsoft Store에 ubuntu 검색하고 다운로드 후 실행을 눌러주자.

3


Ubuntu를 처음 실행하면 username과 passcode를 설정해준다.

4


필요한 파일 설치 & 환경변수


  • 우분투 업데이트 & 업그레이드
sudo apt-get update && sudo apt-get upgrade


  • 자바 설치
sudo apt-get install -y openjdk-8-jdk


  • spark 설치
sudo wget https://archive.apache.org/dist/spark/spark-3.2.0/spark-3.2.0-bin-hadoop3.2.tgz
sudo tar -xvzf spark-3.2.0-bin-hadoop3.2.tgz


  • 파이썬 업그레이드
sudo apt install python3.8
sudo update-alternatives --install /usr/bin/python python /usr/bin/python3.8 1
sudo apt upgrade -y python


  • 환경변수 설정
vi ~/.bashrc 


  • vi편집기 최하단에 아래 텍스트 붙혀넣기
    • 2번째줄의 username은 우분투를 첫 실행했을때 만들었던 username을 넣어줘야 한다
export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64
export SPARK_HOME=/home/**username**/spark-3.2.0-bin-hadoop3.2
export PATH=$JAVA_HOME/bin:$PATH
export PATH=$SPARK_HOME/bin:$PATH
export PYSPARK_PYTHON=/usr/bin/python3.8
export PYSPARK_DRIVER_PYTHON=jupyter
export PYSPARK_DRIVER_PYTHON_OPTS='notebook'

5


  • 환경변수 적용
source ~/.bashrc


가상환경 세팅하기


  • virtualenv & pip설치
sudo apt install -y virtualenv
sudo apt install -y python3-pip


  • 디렉토리 만들고 이동
mkdir pyspark_ml
cd pyspark_ml


  • 가상환경 실행하기
virtualenv --python=python3.8 venv
source venv/bin/activate

6


  • 라이브러리 설치
pip3 install numpy pandas matplotlib seaborn jupyterlab pyspark==3.2.0


pyspark 개발환경 세팅


  • 노트북 비밀번호 설정하기

      python
      >>> from notebook.auth import passwd
      >>> passwd()
    
    • 주피터 노트북 비밀번호를 설정해준다 (ex.1234)
    • password를 다 치면 어떠한 문장이 나오는데 필요하므로 복사해둘것!

      7


  • 주피터 노트북 설정
    • 2번째줄의 username은 우분투를 첫 실행했을때 만들었던 username을 넣어줘야 한다
jupyter notebook --generate-config
sudo vi /home/username/.jupyter/jupyter_notebook_config.py


  • config.py 수정
    • 이전에 password를 치고 나왔던 문장을 아래에 붙혀넣기 해준다
c.NotebookApp.allow_origin = '*'
c.NotebookApp.open_browser = False
c.NotebookApp.password = '아까 복사했던 문장'

7


  • pyspark 실행
pyspark

8


  • 주피터 노트북 실행
    • localhost:8888 접속
    • 설정해둔 비밀번호로 접속 (ex.1234)

9


끝!


Categories:

Updated:

Leave a comment