메뉴 건너뛰기

Cloudera, BigData, Semantic IoT, Hadoop, NoSQL

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


Jupyter CentOS 7.x에 Jupyter설치

총관리자 2018.04.18 00:05 조회 수 : 4270

1. python3.4및 pip3설치

yum install -y epel-release

yum install python34-pip


1-2. Jupyter를 아래의 명령으로 설치한다.

  - pip3.4 install foo


2. Jupyter notebook디폴트 환경설정파일 생성한다.

  - sudo jupyter notebook -- generate-config


3. 사용자 계정 홈 디렉토리에 jupyter라는 이름의 디렉토리를 생성한다.

    (jupyter notebook이 사용할 디렉토리이며 이름은 아무거나 상관없음)

  - mkdir jupyter


4. ipython을 실행하여 Jupyter Notebook 서버에 접속할 때 사용할 패스워드의 해시값을 생성하고 복사해 둔다.


root@gsda4:~/:$ ipython

Python 3.5.2 (default, Nov 23 2017, 16:37:01)

Type 'copyright', 'credits' or 'license' for more information

IPython 6.3.1 -- An enhanced Interactive Python. Type '?' for help.


In [1]: from IPython.lib import passwd

In [2]: passwd()

Enter password:

Verify password:

Out[2]: 'sha1:a334bc73b70e:8c2d56e5dd27deca01bbdb06549655b51af22e6a'


Do you really want to exit ([y]/n)?


5. 사용자 계정 홈디렉토리에는 숨겨진 디렉토리 .jupyter가 생성되어 있다. 이 디렉토리로 가서 서버 인증서 파일을 아래의 명령으로 생성한다.

root@gsda4:~/.jupyter# openssl req -x509 -nodes -days 365 -newkey rsa:1024 -keyout mycert.pem -out mycert.pem

Generating a 1024 bit RSA private key

.............................................++++++

....................................................++++++

writing new private key to 'mycert.pem'

-----

You are about to be asked to enter information that will be incorporated

into your certificate request.

What you are about to enter is what is called a Distinguished Name or a DN.

There are quite a few fields but you can leave some blank

For some fields there will be a default value,

If you enter '.', the field will be left blank.

-----

Country Name (2 letter code) [AU]:KR

State or Province Name (full name) [Some-State]:Seoul

Locality Name (eg, city) []:Seoul

Organization Name (eg, company) [Internet Widgits Pty Ltd]:FreeL

Organizational Unit Name (eg, section) []:Dev

Common Name (e.g. server FQDN or YOUR name) []:SangHyeonPark

Email Address []:gooper@gooper.com


6. /svc/apps/gsda/bin/hadoop/.jupyter디렉토리로 가보면 jupyter_notebook_config.py파일을 열어서 다음 항목을 수정한다.

## The full path to an SSL/TLS certificate file.

c.NotebookApp.certfile = u'/svc/apps/gsda/bin/hadoop/.jupyter/mycert.pem'


## The IP address the notebook server will listen on.
c.NotebookApp.ip = '*'

## The directory to use for notebooks and kernels.
c.NotebookApp.notebook_dir = u'/svc/apps/gsda/bin/hadoop/jupyter'

## Whether to open in a browser after starting. The specific browser used is
#  platform dependent and determined by the python standard library `webbrowser`
#  module, unless it is overridden using the --browser (NotebookApp.browser)
#  configuration option.
c.NotebookApp.open_browser = False

#  The string should be of the form type:salt:hashed-password.
c.NotebookApp.password = u'sha1:a334bc73b70e:8c2d56e5dd27deca01bbdb06549655b51af23e6a'

## The port the notebook server will listen on.
c.NotebookApp.port = 8888

7. jupyter notebook실행(백그라운드로 실행)
jupyter notebook --allow-root &

8. brower로 확인
https://gsda4:8888

*주의 : http로 접근하면 "[W 18:06:51.864 NotebookApp] SSL Error on 10 ('39.115.133.57', 53438): [SSL: WRONG_VERSION_NUMBER] wron number (_ssl.c:645)" 와 같은 Error가 발생하므로 https로 지정해서 접근해야 하며 brower에서 안정하지 않은 연결이 표시되더라도 "안전하지 않은 상태로" 진행하면 로그인 화면이 뜬다.


번호 제목 날짜 조회 수
570 TransmitData() to failed: Network error: Recv() got EOF from remote (error 108) 오류 현상 2019.02.15 3865
569 [Oozie]Disk I/O error: Failed to open HDFS file dhfs://..../tb_aaa/....OPYING 2019.02.15 3797
568 kafka에서 메세지 중복 consume이 발생할 수 있는 상황 2018.10.23 3913
567 [sentry]role부여후 테이블명이 변경되어 오류가 발생할때 조치방법 2018.10.16 4199
566 hive metastore ERD file 2018.09.20 4090
565 Error: java.lang.RuntimeException: java.lang.OutOfMemoryError 오류가 발생하는 경우 2018.09.20 4057
564 physical memory used되면서 mapper가 kill되는 경우 오류 발생시 조치 2018.09.20 4716
563 impala,hive및 hdfs만 접근가능하고 파일을 이용한 테이블생성가능하도록 hue 권한설정설정 2018.09.17 3273
562 cloudera(python 2.7.5)에서 anaconda3로 설치한 외부 python(3.6.6)을 이용하여 pyspark를 사용하는 설정 2018.09.14 4463
561 ntp시간 맞추기 2018.09.12 2341
560 ubuntu 커널 업그레이드 방법 2018.09.02 3223
559 oracle to hive data type정리표 2018.08.22 7375
558 postgresql-9.4에서 FATAL: remaining connection slots are reserved for non-replication superuser connections가 나올때 조치 2018.08.16 4479
557 sentry설정 방법및 활성화시 설정이 필요한 파일및 설정값, 계정생성 방법 2018.08.16 4227
556 컬럼및 라인의 구분자를 지정하여 sqoop으로 데이타를 가져오고 hive테이블을 생성하는 명령문 2018.08.03 4035
555 sqoop으로 mariadb에 접근해서 hive 테이블로 자동으로 생성하기 2018.08.03 4260
554 Last transaction was partial에 따른 Unable to load database on disk오류 발생시 조치사항 2018.08.03 6652
553 RHEL 7.4에 zeppelin 0.7.4 설치 2018.07.31 4370
552 conda를 이용한 jupyterhub(v0.9)및 jupyter설치 (v4.4.0) 2018.07.30 4322
551 anaconda3 (v5.2) 설치및 머신러닝 관련 라이브러리 설치 절차 2018.07.27 3634
위로