메뉴 건너뛰기

Bigdata, Semantic IoT, Hadoop, NoSQL

Bigdata, Hadoop ecosystem, Semantic IoT등의 프로젝트를 진행중에 습득한 내용을 정리하는 곳입니다.
필요한 분을 위해서 공개하고 있습니다. 문의사항은 gooper@gooper.com로 메일을 보내주세요.


Jupyter 우분투 16.04LTS에 Jupyter설치

총관리자 2018.04.17 17:48 조회 수 : 90

0. root로 설치및 실행하는 경우임(홈디렉토리가 /svc/apps/gsda/bin/hadoop/라고 가정함)


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

   -sudo pip install jupyter 혹은(pip3 install jupyter)


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:0c46ffd3aab6:9c1bc7d7dad66a2de98c08c331a831a2b86e7aa0'

 *참고 : 패스워드를 12345로 한 경우임


5. 사용자 계정 홈디렉토리에는 숨겨진 디렉토리 .jupyter가 생성되어 있다. 이 디렉토리로 가서 서버 인증서 파일을 아래의 명령으로 생성한다.(https를 적용시에만 사용하고 설정함)

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'

(이부분은 https로 접근하기 위해서 설정하는 부분이고 https가 필요하지 않으면 설정하지 않아도 됨)


## 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'
(이것을 설정하지 않으면 jupyter를 실행시마다 발생되는 token을 지정하여 brower에서 notebook을 사용할 수 있음)

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

*참고 : 아무런 인증없이 사용하는 경우는 아래와 같이 ''으로 설정해준다.
c.NotebookApp.token = ''
c.NotebookApp.password = ''

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

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

* 최초 접근 :  https://gsda4:2244/?token=d3f42fc4f47d22eb421de8cc85953180c15a351a943355f2

*주의 : 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에서 안정하지 않은 연결이 표시되더라도 "안전하지 않은 상태로" 진행하면 로그인 화면이 뜬다.

번호 제목 글쓴이 날짜 조회 수
740 bananapi 5대(ubuntu계열 리눅스)에 yarn(hadoop 2.6.0)설치하기-ResourceManager HA/HDFS HA포함, JobHistory포함 총관리자 2015.04.24 19143
739 mapreduce appliction을 실행시 "is running beyond virtual memory limits" 오류 발생시 조치사항 총관리자 2017.05.04 16896
738 org.apache.hadoop.hdfs.server.common.InconsistentFSStateException: Directory /tmp/hadoop-root/dfs/name is in an inconsistent state: storage directory does not exist or is not accessible. 구퍼 2013.03.11 14781
737 drop table로 삭제했으나 tablet server에는 여전히 존재하는 테이블 삭제방법 총관리자 2021.07.09 7553
736 insert hbase by hive ... error occured after 5 hours..HMaster가 뜨지 않는 장애에 대한 복구 방법 총관리자 2014.04.29 7129
735 Resource temporarily unavailable(자원이 일시적으로 사용 불가능함) 오류조치 총관리자 2015.11.19 6828
734 HBase shell로 작업하기 구퍼 2013.03.15 5834
733 dr.who로 공격들어오는 경우 조치방법 file 총관리자 2018.06.09 5603
732 하둡 분산 파일 시스템을 기반으로 색인하고 검색하기 구퍼 2013.03.15 5573
731 [Decommission]시 시간이 많이 걸리면서(수일) Decommission이 완료되지 않는 경우 조치 총관리자 2018.01.03 5307
730 Ubuntu 16.04LTS 설치후 초기에 주어야 하는 작업(php, apache, mariadb설치및 OS보안설정등) file 총관리자 2017.05.23 5268
729 hive 2.0.1 설치및 mariadb로 metastore 설정 총관리자 2016.06.03 5184
728 Hive Query Examples from test code (2 of 2) 총관리자 2014.03.26 5005
727 Spark에서 Serializable관련 오류및 조치사항 총관리자 2017.04.21 4901
726 [gson]mongodb의 api를 이용하여 데이타를 가져올때 "com.google.gson.stream.MalformedJsonException: Unterminated object at line..." 오류발생시 조치사항 총관리자 2017.12.11 4399
725 import 혹은 export할때 hive파일의 default 구분자는 --input-fields-terminated-by "x01"와 같이 지정해야함 총관리자 2014.05.20 4244
724 checking for termcap functions library... configure: error: No curses/termcap library found 구퍼 2013.03.08 4120
723 sqoop작업시 hdfs의 개수보다 더많은 값이 중복되어 oracle에 입력되는 경우가 있음 총관리자 2014.09.02 4093
722 다수의 로그 에이전트로 부터 로그를 받아 각각의 파일로 저장하는 방법(interceptor및 multiplexing) 총관리자 2014.04.04 4089
721 .git폴더를 삭제하고 다시 git에 추가하고 서버에 반영하는 방법 총관리자 2017.06.19 4077

A personal place to organize information learned during the development of such Hadoop, Hive, Hbase, Semantic IoT, etc.
We are open to the required minutes. Please send inquiries to gooper@gooper.com.

위로