메뉴 건너뛰기

Cloudera, BigData, Semantic IoT, Hadoop, NoSQL

Cloudera CDH/CDP 및 Hadoop EcoSystem, Semantic IoT등의 개발/운영 기술을 정리합니다. gooper@gooper.com로 문의 주세요.


0. anaconda3가 이미 설치되어 있고 conda를 통하여 jupyterhub및 notebook를 설치완료된 상태이지만 python 3.6.5를 사용하지 못하고 RHEL 7.4에 default설치된 python 3.7.5를 사용하도록 PATH를 지정하는 경우 절대경로를 지정하지 않고 jupyterhub등을 실행하면 오류가 발생하고 특히 http://gooper.com:8000/에서 로그인 시도시 아래와 같은 오류가 발생하면서 로그인에 실패하면

config파일에 "c.Spawner.cmd = ['/usr/anaconda3/bin/jupyterhub-singleuser']"를 반드시 설정하고 기동해준다.(jupyterhub-singleuser가 있는 절대경로임)

--------------오류내용--------

 File "/usr/anaconda3/lib/python3.6/subprocess.py", line 1344, in _execute_child

        raise child_exception_type(errno_num, err_msg, err_filename)

    PermissionError: [Errno 13] Permission denied: 'jupyterhub-singleuser'


----------------설정방법(conda를 이용)------------

1. jupyterhub설치

  sudo /usr/anaconda3/bin/conda install -c conda-forge jupyterhub

2. jupyter설치

  sudo /usr/anaconda3/bin/conda install notebook

3. 설정파일이 저장될 위치 생성

  sudo mkdir /etc/jupyterhub

4. default 설정파일 생성 명령문

sudo /usr/anaconda3/bin/jupyterhub --generate-config -f /etc/jupyterhub/jupyterhub_config.py

5. 설정파일 수정(vi jupyterhub_config.py)후 저장

#  This is the address on which the proxy will bind. Sets protocol, ip, base_url

c.JupyterHub.bind_url = 'http://XXX.XXX.XXX.XXX:8000'


#  Some spawners allow shell-style expansion here, allowing you to use

#  environment variables. Most, including the default, do not. Consult the

#  documentation for your spawner to verify!

c.Spawner.cmd = ['/usr/anaconda3/bin/jupyterhub-singleuser']


5. 실행(debug모드로 실행)

  sudo /usr/anaconda3/bin/jupyterhub --debug


6. 확인(default는 PAM인증임)

https://localhost:8000


* jupyter는 jupyterhub를 통하면 자동으로 spawn되므로 따로 기동시킬 필요없음


위로