brunch

You can make anything
by writing

C.S.Lewis

by 박재열 Oct 14. 2022

[NCP] tf서버 Anaconda 가상환경 구축

네이버클라우드 플랫폼 tf 서버 가상환경 구축

 데이터 분석을 위해 가상 환경을 구축할 필요가 있는 이유와 로컬에서 Anaconda를 이용하는 방법은 아래의 포스트에 잘 설명이 되어 있다.


 https://chancoding.tistory.com/85


  이 포스트는 네이버 클라우드 플랫폼 고객지원팀의 답변을 참조하여, 네이버 클라우드 플랫폼의 Tensorfflow server를 사용할 경우, anaconda를 활용하여 어떻게 가상환경을 구축하는지를 다룬다. 


1.TF 서버 구축과 연결


 https://guide.ncloud-docs.com/docs/tensorflow-tensorflow-1-1


 우선은 위와 같은 네이버 클라우드 플랫폼의 사용자 가이드를 따라 서버를 만든다. 이후에 가이드에 따라 포트포워딩과 jupyter까지를 연결해준다.


2. Anaconda 환경 구축 


'tensorflow-server 상품은 conda를 활용하여 호환되는 라이브러리를 설치하여 이를 패키징 한 형태로 제공하고 있습니다.'


이에 따라, conda 환경 구축에는 두가지 방법이 존재하게 되는데,


1)상품 내에 설치된 conda를 활용하는 방법 

2)conda를 새로 구성하는 방법 


 나는 이중에 1번 방법인 상품 내에 설치된 conda를 활용하는 방법을 따랐는데, 2번을 활용할 경우 아래와 같은 일들이 발생하기 때문이다.


** tensorflow-server상품 가이드에서 제공하는 자체 멍령어 "jup"은 사용할 수 없습니다.

** 추가로 별도의 acg 설정을 함께 해주셔야 합니다.


 상품 내에 설치된 conda를 활용하는 방법은 다음과 같다.


 1)putty 실행

 2)putty를 활용하여 접속

    -접속 아이피 + 포트번호 connect -> root -> 비밀번호 

 

 그러면 아래와 같은 화면이 뜬다.


 

 

 이제  'VM터미널에서 jupyter 컨테이너가 실행중인지 확인 (컨테이너 이름, tf-server-mkl)' 하기 위해 다음과 같은 커맨드를 입력한다. 

 

 $docker ps


 실행이 확인 됐다면, 'VM터미널에서 jupyter 컨테이너 안으로 진입 (컨테이너 이름, tf-server-mkl)' 한다. 

 

 $docker exec -it tf-server-mkl bash


 이후에는, '컨테이너 내에 conda 바이너를 활용해서 새로운 환경 구성' 하면 되는데, 이 과정은 처음에 첨부한 포스트에 잘 설명이 되어 있다. 

 

커맨드를 모두 입력했을 경우 putty 콘솔 창. pycaret env를 새로 만들었기에, conda env list에서 pycare env가 존재하는 모습.

 


컨테이너 내에 conda 바이너를 활용해서 새로운 환경 구성
conda 위치 : /opt/conda/bin/conda

** 기본 conda 환경에서 jupyter 가 구성되어있기 때문에, conda 작업시에 영향이 가지 않도록 주의하시기 바랍니다.


 레퍼런스: 네이버 클라우드 플랫폼 고객지원팀의 문의 답변 메일. 전체 메일은 다음과 같다. 


 안녕하세요. 네이버 클라우드 플랫폼입니다.

conda 환경을 구성하는 방법에 대해서 문의하셨는데요,
상품 내에 설치된 conda를 활용하는 방법, conda를 새로 구성하는 방법 두 가지로 가능할 것 같습니다.

(1) 첨부파일 캡처 참고

(1) 상품 내에 설치된 conda를 활용하는 방법
tensorflow-server 상품은 conda를 활용하여 호환되는 라이브러리를 설치하여 이를 패키징 한 형태로 제공하고 있습니다.

이미 설치한 conda 바이너리를 활용해서 conda 환경(env)을 구성하고자 하신다면 VM에 접속하신 다음에 jupyter 컨테이너로 한번 더 접속하는 과정을 거쳐야 합니다,


<첨부파일 참고>
putty를 이용해서 tensorflow-server상품이 설치된 VM에 접속하신 다음
$ ssh {vm계정}@{tensorflow-server상품의 공인IP}
VM터미널에서 jupyter 컨테이너가 실행중인지 확인 (컨테이너 이름, tf-server-mkl)
$ docker ps 
VM터미널에서 jupyter 컨테이너 안으로 진입. (컨테이너 이름, tf-server-mkl)
$ docker exec -it tf-server-mkl bash

컨테이너 내에 conda 바이너를 활용해서 새로운 환경 구성
  conda 위치 : /opt/conda/bin/conda

** 기본 conda 환경에서 jupyter 가 구성되어있기 때문에, conda 작업시에 영향이 가지 않도록 주의하시기 바랍니다.


(2) conda를 새로 구성하는 방법

기존 conda 환경의 jupyter는  VM 상에서 컨테이너로 실행 중입니다.
VM에는 anaconda가 설치되어 지 있지 않다는 의미입니다. 
따라서 vm 상에서는 anaconda를 새로 설치하여 구성할 수 있습니다. 

1. putty로 tensorflow-server 상품 VM에 ssh 접속합니다. (jupyter 컨테이너로 진입하지 않습니다.)
2. anaconda를 공식 웹페이지에서 다운받은 뒤 vm에 설치합니다.
3, 새로 설치한 anaconda를 활용해서 conda 환경을 구성하고 라이브러리를 설치할 수 있습니다.

** tensorflow-server상품 가이드에서 제공하는 자체 멍령어 "jup"은 사용할 수 없습니다.
** 추가로 별도의 acg 설정을 함께 해주셔야 합니다.

더욱더 궁금하신 사항은 고객지원으로 문의 부탁드립니다.
감사합니다.


 굉장히 만족스러운 답변이었습니다. 감사합니다. 

브런치는 최신 브라우저에 최적화 되어있습니다. IE chrome safari