예제

참고

자세한 명령어 사용법들은 -h, --help 인자를 사용하여 각 명령어의 세부 도움말을 참고하십시오.

현재 실행 중인 세션 목록 보기

backend.ai ps

이 명령은 사실 다음 명령어의 짧은 별칭입니다:

backend.ai admin sessions

간단한 코드 실행하기

다음 명령어는 Python 세션을 띄우고 그 안에서 -c 옵션으로 넘겨진 코드를 바로 실행합니다. --rm 옵션은 실행이 완료되자마자 클라이언트가 자동으로 세션을 종료시키도록 지시합니다.

backend.ai run --rm -c 'print("hello world")' python

다음 명령어는 Python 세션을 띄우고 ./myscript.py 파일로 전달된 코드를 그 안에서 실행합니다. 이때 --exec 옵션으로 지정한 shell 명령어를 이용하여 실행합니다.

backend.ai run --rm --exec 'python myscript.py arg1 arg2' \
           python ./myscript.py

가속기를 활용한 세션 사용하기

다음 명령어는 Python TensorFlow 세션을 가상 GPU 0.5개를 활용하도록 지정하여 띄우고, 그 안에서 ./mygpucode.py 파일을 실행합니다.

backend.ai run --rm -r gpu=0.5 \
           python-tensorflow ./mygpucode.py

실행 중인 세션 종료하기

--rm 옵션 없이 run 명령을 실행하거나 start 명령을 사용한 경우 여러분의 연산 세션은 미리 설정된 시간(기본 30분) 동안 계속 떠있습니다.그렇게 대기 중인 세션들은 backend.ai ps 명령으로 조회할 수 있습니다. 다음 명령어를 활용하여 그러한 세션들을 세션 ID를 이용해 종료합니다. 세션 ID를 여러 개 적어서 여러 세션을 한꺼번에 종료할 수도 있습니다.

backend.ai rm <sessionID>

Jupyter Notebook용 세션을 만들고 접속하기

다음 명령어는 "mysession"이라 이름붙여진 Python 세션을 띄웁니다. 이때 띄우기만 하고 코드를 바로 실행하지는 않습니다. 이어서, 그 안에서 실행되는 "jupyter" 서비스에 접속하는 로컬 프록시를 TCP 포트 9900번에 실행합니다. start 명령은 생성된 연산 세션이 제공하는 응용 서비스들을 보여주므로, 여러분은 이어서 app을 실행할 때 어떤 것으로 접속할지 선택할 수 있습니다.

backend.ai start -t mysession python
backend.ai app -p 9900 mysession jupyter

app 명령은 한번 실행되면 사용자가 적절한 소프트웨어로 접속하기를 기다립니다. Jupyter 서비스의 경우, 여러분이 선호하는 웹브라우저를 이용하여 원래 Jupyter Notebook 환경을 사용하듯이 해당 주소로 접속하면 됩니다. app 명령을 중지하려면 Ctrl+C 단축키를 누르거나 SIGINT 시그널을 보냅니다.

가상폴더를 사용한 연산 세션 실행하기

다음 명령어는 "mydata1"이라는 이름의 가상 폴더를 생성하고, 그 안에 ./bigdata.csv라는 이름의 파일을 업로드합니다.

backend.ai vfolder create mydata1
backend.ai vfolder upload mydata1 ./bigdata.csv

다음 명령어는 "mydata1"이란 가상 폴더가 탑재된 Python 세션을 하나 띄웁니다. 코드 실행 옵션은 편의상 생략되었습니다. 이어서 두번째 명령은 여러분의 코드가 생성한 ./bigresult.txt 파일을 "mydata1" 가상폴더로부터 다운로드합니다.

backend.ai run --rm -m mydata1 python ...
backend.ai vfolder download mydata1 ./bigresult.txt

세션 안에서 실행되는 여러분의 코드에서는 가상폴더를 /home/work/mydata1 이라는 일반 디렉토리처럼 그대로 사용할 수 있습니다. (이때 기본 활성 작업 디렉토리는 /home/work입니다.)

병렬 실험을 위한 연산 세션 실행하기

(준비 중입니다)