Skip to main content

Backend.AI Manager

Project description

Backend.AI Manager with API Gateway

Package Structure

  • ai.backend
    • manager: Abstraction of agents and computation kernels
    • gateway: User and Admin API (REST/GraphQL) gateway based on aiohttp

Installation

Please visit the installation guides.

For development

Prerequisites

  • libnsappy-dev or snappy-devel system package depending on your distro
  • Python 3.6 or higher with pyenv and pyenv-virtualenv (optional but recommneded)
  • Docker 17.03 or later with docker-compose (18.03 or later is recommended)

Clone the meta repository and install a "halfstack" configuration. The halfstack configuration installs and runs dependency daemons such as etcd in the background.

~$ git clone https://github.com/lablup/backend.ai halfstack
~$ cd halfstack
~/halfstack$ docker-compose -f docker-compose.halfstack.yml up -d

Then prepare the source clone of the agent as follows. First install the current working copy.

~$ git clone https://github.com/lablup/backend.ai-manager manager
~$ cd manager
~/manager$ pyenv virtualenv venv-manager
~/manager$ pyenv local venv-manager
~/manager (venv-manager) $ pip install -U pip setuptools   # ensure latest versions
~/manager (venv-manager) $ pip install -U -r requirements-dev.txt

With the halfstack, you can run the agent simply like (note that you need a working manager running with the halfstack already):

~/manager (venv-manager) $ scripts/run-with-halfstack.sh python -m ai.backend.gateway.server --debug

To develop and debug, configure the manager as follows:

~/manager (venv-manager) $ scripts/run-with-halfstack.sh backend.ai-manager etcd put vfolder/_mount /mnt
~/manager (venv-manager) $ scripts/run-with-halfstack.sh backend.ai-manager etcd update-images -f sample-configs/image-metadata.yml
~/manager (venv-manager) $ scripts/run-with-halfstack.sh backend.ai-manager etcd update-aliases -f sample-configs/image-aliases.yml
~/manager (venv-manager) $ cp alembic.ini.sample alembic.ini
~/manager (venv-manager) $ edit alembic.ini  # match the config with the halfstack
~/manager (venv-manager) $ scripts/run-with-halfstack.sh backend.ai-manager schema oneshot head
~/manager (venv-manager) $ scripts/run-with-halfstack.sh backend.ai-manager fixture populate example_keypair

To run tests:

~/manager (venv-manager) $ scripts/run-with-halfstack.sh python -m pytest -m 'not integration'

To run tests including integration tests, you first need to install the agent in the same virtualenv.

~$ git clone https://github.com/lablup/backend.ai-agent agent
~$ cd manager
~/manager (venv-manager) $ pip install -e ../agent
~/manager (venv-manager) $ scripts/run-with-halfstack.sh python -m pytest

Project details


Release history Release notifications | RSS feed

This version

18.12

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

backend.ai-manager-18.12.tar.gz (54.1 kB view details)

Uploaded Source

Built Distribution

backend.ai_manager-18.12-py3-none-any.whl (71.2 kB view details)

Uploaded Python 3

File details

Details for the file backend.ai-manager-18.12.tar.gz.

File metadata

  • Download URL: backend.ai-manager-18.12.tar.gz
  • Upload date:
  • Size: 54.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.20.0 setuptools/40.5.0 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/3.6.7

File hashes

Hashes for backend.ai-manager-18.12.tar.gz
Algorithm Hash digest
SHA256 079e83526435863ccc5a5d512066c0855a728875b1df2ac2e4ac3e9d9716a47a
MD5 bc11ef455fa5eb83ed1edddc4212203c
BLAKE2b-256 c846aeafc89090dde33846d179ff84278428e6c9e5d1e5bcdcbf579178dbe28f

See more details on using hashes here.

Provenance

File details

Details for the file backend.ai_manager-18.12-py3-none-any.whl.

File metadata

  • Download URL: backend.ai_manager-18.12-py3-none-any.whl
  • Upload date:
  • Size: 71.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.20.0 setuptools/40.5.0 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/3.6.7

File hashes

Hashes for backend.ai_manager-18.12-py3-none-any.whl
Algorithm Hash digest
SHA256 7c83095759541d6530f460c5f8cdca1594732e2916346c34eef435a4928c08c4
MD5 77fbb791dad58636d7e36f5520132de9
BLAKE2b-256 ad6dfefedc6a3633a2abf0429b9a78624784a76f0c464473a2fd211d0de5ba23

See more details on using hashes here.

Provenance

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page