AWS EC2 Ubuntu에 주피터 서버 구축하기

PNG

AWS EC2 우분투 프리티어 인스턴스에 주피터 서버를 구축하여, 언제 어디서나 접속가능한 데이터 분석 환경을 만들어보겠습니다.


Environment

  • OS : macOS Mojave 10.14.6 ver


AWS 프리티어 인스턴스 생성

PNG

AWS Console 에 접속 및 로그인을 합니다.


PNG

인스턴스를 눌러줍니다.


PNG

인스턴스 시작 버튼을 눌러줍니다.


PNG

프리티어 사용가능한 인스턴스 중 Ubuntu 18.04를 선택합니다.


PNG

검토 및 시작 버튼을 눌러줍니다.


PNG

시작하기 버튼을 눌러줍니다.


PNG

새 키 페어 생성을 선택하고, 키 페어 이름을 입력합니다.


PNG

키 페어 다운로드 버튼을 눌러줍니다. 우분투 인스턴스에 접속 시 필히 필요하므로 안전한 곳에 저장하여 유실되지 않도록 주의합니다.


PNG

다운로드 받은 키 페어 파일입니다.


PNG

인스턴스 시작 버튼을 눌러줍니다.


PNG

인스턴스 보기 버튼을 눌러줍니다.


PNG

하단 부분에 인스턴스의 퍼블릭 IP가 나타납니다.


SSH 접속

PNG

sudo chmod 600 jupyter.pem
ssh -i jupyter.pem ubuntu@퍼블릭ip주소

터미널 실행 후 위 명령어를 입력하여 생성한 우분투 인스턴스에 접속합니다.

최초 접속 시 종종 Permission 관련 에러가 발생하기도 합니다. 따라서 sudo chmod 600 jupyter.pem을 통해 키페어의 권한을 올려준 뒤 접속을 시도한 것입니다.


아나콘다 배포판 다운로드

wget https://repo.anaconda.com/archive/Anaconda3-2019.10-Linux-x86_64.sh

우분투 EC2에 접속한 상태에서 아나콘다 배포판을 설치합니다.
(2019.10 python 3.7 for linux 버전을 기준으로 합니다.)


아나콘다 배포판 설치

sudo bash Anaconda3-2019.10-Linux-x86_64.sh

license term 에 동의(yes) 후 설치를 완료합니다.


아나콘다 path 설정

nano ~/.bashrc

PNG

export PATH=/home/ubuntu/anaconda3/bin:$PATH

위 내용을 가장 하단부에 입력 후
ctrl+x입력 - y입력 - Enter입력 하여 빠져나옵니다.

source .bashrc
conda info --envs

콘다 정보가 정상적으로 출력된다면 아나콘다 배포판 설치가 완료된 것입니다.

sudo chown -R ubuntu:ubuntu anaconda3

ubuntu 유저에게 anaconda3 디렉토리에 대한 권한을 넘겨줍니다.


가상환경 생성

conda create -n venv python=3.7 anaconda

가상환경 venv를 생성합니다.

source activate venv

가상환경 venv를 활성화합니다.


주피터 서버 구축

jupyter notebook --generate-config

.jupyter디렉토리와 .jupyter/jupyter_notebook_config.py설쩡 파일이 생성됩니다.

cd .jupyter
ipython

디렉토리 이동 후 ipython을 실행합니다.

from notebook.auth import passwd
passwd()

패스워드를 입력하고, 결과로 나온 암호를 복사해둡니다.

'sha1:390d90....'
exit()

ipython을 빠져나옵니다.

nano jupyter_notebook_config.py

아래와 같이 설정할 파라미터를 찾고 주석(#)을 제거한 뒤 설정값을 입력합니다. 설정을 마친 후 nano를 빠져나옵니다. 단, ip는 퍼블릭이 아닌 프라이빗 ip를 입력합니다.

c.NotebookApp.password = '복사한 sha1 암호'
c.NotebookApp.ip = 'EC2 Private IP Address'
c.NotebookApp.port = '8888'
c.NotebookApp.notebook_dir = '/home/ubuntu/project'


AWS EC2 포트 개방

PNG


PNG


PNG


PNG


PNG


주피터 서버 실행

cd ~
mkdir project
jupyter notebook

PNG

주피터 서버 구축이 완료되었습니다.

태그:

카테고리:

업데이트:

댓글남기기