네이버클라우드

[Ncloud] Data Forest로 Jupyter Lab 접속해보기

graph-dev 2023. 9. 2. 15:54
728x90

Data Forest

 

오랜만에, 데이터 분석과 관련된 서비스를 살펴봤습니다.

나름대로 분석을 하지만 주로 small data 위주로 진행했고 클라우드를 사용한 적이 거의 없다보니 이런 서비스가 반갑기만 합니다.

무언가 답을 찾는 과정은 다양하게 접근해봐야하지 않겠습니까? 그 수단 중 하나가 클라우드 서비스 인 것입니다. 간단히 가이드부터 읽어보겠습니다.

 

Ncloud 서비스를 살펴보면서, AI Forest라는 게 있다고 하길래 궁금했습니다. 그런데 찾아보니, Data Forest만 있고 그 하위 목록에 AI Forest라는 게 있더군요. 그래서 이 Data Forest 서비스 부터 살펴보기로 했습니다.

Data Forest

VPC 환경에서만 사용이 가능하다는 점을 기억해둡시다.

Data Forest는 Apache Hadoop 기반의 대용량 멀티테넌트 빅데이터 처리 클러스터입니다. Data Forest는 다양한 빅데이터 프레임워크를 지원하여 데이터 저장, 데이터 처리, 딥러닝 분석, 서빙을 쉽고 간편하게 수행할 수 있습니다. 보안 기술이 적용되며 대용량 데이터가 분산 스토리지에 저장되므로 안전하게 사용할 수 있습니다.

하둡 기반으로 빅데이터 처리를 하는 도구이고, 데이터는 분산 스토리지에 저장하니 안전하다고 합니다. 사용하는 데 불편하지는 않을까 걱정했는데, 다행히도 전용 주소 링크가 있다고 합니다.

Data Forest 앱을 생성하면 즉, 빠른 링크, Quick Link 라는 게 생깁니다. 각 앱마다 AppMaster라는 것에 대한 링크를 가지는데, 이 페이지를 통해 Data Forest 로그인해서 접근합니다.

생성해보겠습니다.

 

Data Forest 생성 전 화면

 

계정 생성 화면

 

계정 이름은 최소 2자 , 최대 16자의 영문자, 숫자를 조합하여 사용할 수 있습니다. 비밀번호는 8자 이상, 20자 이하의 영어대소문자/특수문자/숫자 각각 1자 이상 포함해야 하고 특수문자도 조건이 있으니 잘 피해서 설정하겠습니다.

 

2~3분 기다려주면 계정이 생성되고 상태가 "운영중"으로 변합니다.

 

 

이 때 상세 내용을 볼 수 있습니다. 재밌는 것이 HDFS Quota(할당량)이 파일 개수 1백만 개, 용량은 200TB로 설정되는데 koya, tata 라는 탭이 있다는 점입니다. 코야, 타타는 임의로 지은 걸까요? 궁금하네요.

 

또한, 클러스터 접속 정보를 보면, 커버로스 키탭 다운로드라는 게 있습니다. 클러스터에 접속하기 위해 이 키탭이라는 것이 필요하다는 것이죠.

 

 

 

그 외에도 계정 설정 변경은 HDFS Quota(파일 개수: 1 백만 개, 용량: 200TB)를 바꾸거나 커버로스 키탭 / 계정 패스워드를 초기화하는 옵션을 제공합니다.

 

 

Notebooks

 

다음은 노트북이라는 개념에 대해 알아보겠습니다.

데이터 분석을 하시는 분들이라면, 한번쯤 들어보시는 게 주피터 노트북(Jupyter notebook)입니다. 이와 유사한 IDE라고 생각하면 되겠습니다.

 

 

노트북 생성을 누릅니다.

 

 

노트북 설정은 아래와 같습니다. 노트북 이름은 설정할 때, 영어 소문자, 숫자, 하이픈으로만 구성해야하고 첫글자는 영어로 하고 마지막 글자가 하이픈이 아니면 됩니다. 또한, Subnet은 KR2 리전의 Public Subnet만 설정 가능하다는 점도 알아둡시다. 서버 사양은 가장 낮은 것으로 해두었습니다. 4EA vCPU, 16GB 메모리, HDD 50GB로 설정했습니다.

 

 

 

 다음은 노트북 서버 컴포넌트에 사용자 설정하는 부분입니다. Jupyter Lab 컴포넌트의 Access Password는 접속시 사용할 비밀번호로 필수 입력값입니다. 비밀번호는 8자 이상, 20자 이하의 영문자, 숫자 및 특수문자를 조합해서 사용해야 합니다. ACG는 자동으로 생성되는데, 차후 활용을 위해 기억해두세요.

 

Object Storage는 네이버 클라우드의 저장소로, 이 Data Forest에서 사용한 분석 결과 파일 등을 저장할 때 사용하면 좋겠네요. 연동을 하려면 API 인증 정보가 필요합니다. 또한, Access Key, Secret Key는 네이버 클라우드 콘솔 > 마이 페이지 > 인증키 관리에서 확인할 수 있다고 합니다. 해당 값을 잘 저장해서 넣어줍니다.

 

 

인증키도 넣어줍니다. 그리고 생성 버튼을 누르면 노트북이 생성됩니다. 상태를 보고 운영중으로 변하면 이제 사용할 준비가 끝난 것입니다.

 

 

 운영중으로 변하면, 간단히 상세 노트북 정보를 확인할 수 있습니다. Subnet, ACG 정보 등이 있고 노트북 아이디, 도메인, ACG 이름 정도만 알아 둡시다.

 

 

그 외에 자세한 사항은 가이드를 참고합시다.

https://guide.ncloud-docs.com/docs/df-notebook

 

노트북 생성 및 관리

 

guide.ncloud-docs.com

이제 접속을 해보겠습니다. 가이드에 따르면 접속 방법이 두 가지로 도메인 주소를 이용하거나 ssh 접속 방법이 있습니다. 결국 GUI이냐 CLI 차이인 것이죠.

 

도메인 주소로 접속하기

Ncloud에서 웹 UI 접속을 위해서는 ACG 설정에서 허용포트 TCP 80을 추가해줘야 한다고 합니다. 이를 위해, Compute > Server > ACG로 이동합니다. 혹은, 위에 상세 정보에서 ACG 우측 버튼을 눌러도 됩니다.

 

 

 위에서 자동 생성한 ACG 이름이 df(data forest)로 시작하는 것을 찾아서 Inbound 허용 포트를 추가해줍니다. 접근 소스는 보안을 위해서는 myIP를 눌러서 본인 IP에서만 접속을 허용해주는게 좋습니다. 저는 연습을 위해 0.0.0.0/0(전체)로도 하겠습니다만, 보안상 권장하지는 않습니다.

 

ACG 규칙 설정

 

 다시 Data Forest > Notebook으로 가서, 도메인 옆에 있는 단추를 누릅니다. 그리고 아래 화면에서 “Jupyter Lab”을 누르면 접속이 됩니다.

 

 

아래는 접속 화면이고 여기서 비밀번호는 저희가 Notebook 생성시 작성한 비밀번호 값을 넣으면 로그인이 됩니다.

 

접속 화면

 

접속이 완료되었습니다. 아래에서 다양한 Notebook 파일을 생성해서 사용해볼 수 있습니다.

 

간단하게 ipynb 파일을 생성해서 hello world!를 출력해봤습니다.

 

여기서 멈추면 재미가 없죠. 좌측에 있는 다양한 버튼을 살펴보겠습니다. Object Storage와 연동했다면, 좌측 맨 위에 단추를 살펴봅시다.

 

 

“Object Storage Browser”가 뜨고 아래 있는 Bucket들이 뜹니다. 이 버킷들은 실제 Ncloud Bucket과 동일합니다. 분석 결과값 등 파일이 클라우드 저장소에 자동으로 업로드 되면 편리하고 안전하겠죠?

 

 실제로 사용해보면, Object Storage에 자동으로 저장되지는 않고, 아쉽게도 그 아래에 있는 File browser 탭에만 저장이 됩니다. Object Storage에는 폴더나 파일(.ipynb 제외)만 저장이 가능한 것으로 보입니다. 차후 개선이 되겠죠? 분석은 File browser에 있는 ipynb 등의 파일로 수행해야겠습니다.

 

ssh로 접속하기

위 화면에서 자세히 보시면, ssh 접속이라는 부분이 있습니다. 접속 아이디는 forest라고 합니다.

 

 ssh 접속을 위해서는 ACG 설정에서 TCP 허용 포트를 22로 Inbound 규칙에 추가해줍니다. 다시 ACG 우측 버튼을 눌러주면, ACG 설정으로 이동합니다. 여기서 df로 시작하는 규칙을 선택하고 ACG 설정을 누른 후, Inbound 규칙에 TCP / 본인 IP / 허용포트는 22로 설정해서 추가 버튼을 누르고 적용까지 눌러줘야 저장이 됩니다.

 

ACG 설정을 규칙보기 버튼을 눌러 본인 IP에서 TCP 80, 22 허용 포트가 추가되었는지 마지막으로 확인해주시고, 이제 접속을 수행하겠습니다.

 

 

 접속은 가이드에 따라 아래와 같은 코드로 접속합니다. Mac OS 기준으로 터미널 등에서 접속합니다. 만약 Windows OS에서 PUTTY 같은 외부 접속 프로그램을 사용한다면 가이드를 참고해서 별도로 추가 작업(PEM 파일 변환 등)을 진행하셔야 합니다.

https://guide.ncloud-docs.com/docs/df-notebook#2-노트북-노드-접속

 

chmod 400 </path/to/pem-key>
ssh -i </path/to/pem-key>  forest@<notebook-domain>

 

MacOS 터미널에서 실행하면 다음과 같습니다.

 ssh로 접속을 완료했습니다. 이제 forest 계정으로 ssh 서버에 접속을 했습니다. 참고로, 특정 패키지를 추가로 설치할 때는 yum 명령어를 사용해야 합니다. home 디렉토리에서 파일을 살펴보면, data, keytab이라는 디렉토리가 있고, keytab은 앞서 제작한 graph.keytab 파일이 있는 것을 알 수 있습니다.

 

[forest@notebook-e-3c0y ~]$ tree
.
├── data
└── keytab
    └── graph.keytab

2 directories, 1 file

 

 이렇게 두 가지 방법으로 Data forest에 접속을 해봤습니다. 다음에는 Data Forest가 자랑하는 15가지 Apps에 대해 알아보는 콘텐츠를 진행해보겠습니다.