지원 동기 : backend.ai 설치과정

backend.ai를 설치해본다.

Posted by hyeyeon-sun on July 25, 2021 · 3 mins read

🚶‍♀️Prolog

backend.ai 개발 프로젝트를 진행하기 위해 backend.ai 환경을 설정하는 과제가 있었다. 이에 환경설정을 위해 노력했으나 아직은 에러를 해결중이다. 따라서 지금까지의 노력을 먼저 정리해보고자 한다.

  1. backend.ai Web Server 개요

SPA로 webui를 제공하고, API 요청을 프록시 하는 웹앱 호스팅 데몬

  • SPA란 ? Single Page Application의 약자로, 페이지가 변경될때마다 전체를 로드하는 것이 아니라, 브라우저에 최초에 한번 페이지 전체를 로드하고, 이후부터는 특정 부분만 Ajax를 통해 데이터를 바인딩하는 방식이다.
  • API 요청을 프록시 한다는 건 무슨 뜻일까? IP 주소로 웹 서버에 접속할 때, 현재 컴퓨터의 IP로 바로 접속되는 것이 아니라 일종의 대리인 역할을 하는 서버가 존재해
  • 그 서버에서 웹서버의 데이터를 받아오고, 받아온 데이터를 나의 컴퓨터로 전송해준다. 이 역할을 해주는 서버를 proxy라고 한다.
  1. backend.ai Web Server 설치 (prepare)

    먼저 3.9 버전 이상의 파이썬 가상환경과, 6.2 이상의 Redis 서버를 준비한다.

🔎 파이썬 가상환경 설정 – python -m venv BEvenv : 해당 명령어로 가상환경을 만든다. – 가상환경 폴더의 Scripts에 들어가서 activate 명령어를 입력하면 가상환경이 작동된다.

🔎 redis 서버 설치 – Redis 서버의 경우 윈도우 10에서는 지원하지 않는다고 한다 .. 대신 https://github.com/tporadowski/redis에서 redis를 지원한다고 하니 작동시켜보자
-> 최대가 5.0.10 인데 … -> 일단은 할 수 있는 가장 최신의 버전을 돌려보고 버전때문에 발생하는 이슈가 있으면 가상환경이나 컨테이너 등을 활용해보는 것으로 결정.

여기서 5.2.10 버전 release 폴더에서 zip 파일을 압축해제하고, redis-server.exe를 실행한다.

  1. backend.ai Web Server 설치(프로젝트 클론 & 실행)

좋아 이제 프로젝트를 클론해오고 pip install -U -e .를 하려는데 ..?

  • PermissionError: [WinError 5] 액세스가 거부되었습니다: 에러 -> 관리자 권한으로 실행하니 해결되었다.

  • Could not find a version that satisfies the requirement backend.ai-client>=21.9.0. pip 자체에 이 소스가 없다는 뜻인 것 같은데 .. pip upgrade도 했는데 왜 에러가 날까 했더니 -> pip3 install –upgrade pip 이걸로 업그레이드 해도 되지가 않는다 .. -> 아무리 업그레이드를 해도 이미 최신을 충족한다고 뜬다… https://m.blog.naver.com/bb_/221717225516 를 참고해 python 가상환경 때문이란 걸 알게 되었다. -> 가상환경을 높은 버전의 python 으로 다시 하자 ! 흠 그런데 redis도 윈도우 지원하는게 낮은 버전밖에 없어서 그걸 깔았는데 ..

image

https://hengbokhan.tistory.com/m/139 참고해서 py -3.9.6 -m pip install virtualenv –> 3.9.6 버전의 virtualenv 설치 –> 3.9.6 버전의 가상환경 만들기

했으나 .. https://umbum.dev/1079 를 통해 결국 파이썬 새 버전을 다시 설치하는 수밖에 없다는 걸 알게 되었다. 파이썬으로 진행하고 있는 다른 프로젝트도 있기에 버전이 꼬일 게 염려되었고, 따라서 아나콘다 가상환경을 활용하기로 했다.

  1. backend.ai Web Server 설치 - docker 이용

아나콘다 가상환경을 설정했음에도 버전이 없다는 에러가 발생했다. 그런데 그때 상단의 에러를 다시 한번 살펴보니 window에서 해당파일을 사용할 수 없다는 에러가 발생했고, 따라서 docker을 통해서 프로그램을 다시 설치하기 시작했다.

웹상의 자료를 참고해 docker-compose.yml 파일을 만들었다. image

그러나 docker을 돌리는 과정에서 에러가 발생했다.. docker run hello world 부터 안되기 시작했다.

image

따라서 docker를 지우고 다시 설치했고, window 10 home 버전이기에 두가지 방법이 있었다.

  • hyper-v를 이용한 방식 -> 설치는 정상적으로 되지만, 클라이언트에서만 되고 서버 버전은 제대로 깔리지 않는 에러가 발생했다.
  • WSL2 설치 -> powher shell 창이 먹통이 되며 컴퓨터가 다운되는 에러가 발생했다.



미션을 끝까지 완수하지 못한것은 아쉽지만, docker-compose 파일을 작성하며 docker 환경설정에 대해 다시 복기할 수 있는 기회가 되어서 좋았다. 컴퓨터를 고치는 대로 다시 WSL2를 설치하고, docker 데몬을 실행해 환경설정을 하고 backend.ai를 다시 돌려볼 예정이다.