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

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-19.3.4.tar.gz (71.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

backend.ai_manager-19.3.4-py3-none-any.whl (90.7 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: backend.ai-manager-19.3.4.tar.gz
  • Upload date:
  • Size: 71.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.0.1 requests-toolbelt/0.9.1 tqdm/4.32.2 CPython/3.6.8

File hashes

Hashes for backend.ai-manager-19.3.4.tar.gz
Algorithm Hash digest
SHA256 35bd901e7c8f3963dc64801ccddb614d7432c82d3339df87cd9ff9accc6ad416
MD5 fe4500da10e7b0bf38bd99d6bd092b16
BLAKE2b-256 ffd0eb08deb0dd8912c96d6857a8afdac654952567e225163adf1e25c2b98b95

See more details on using hashes here.

File details

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

File metadata

  • Download URL: backend.ai_manager-19.3.4-py3-none-any.whl
  • Upload date:
  • Size: 90.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.0.1 requests-toolbelt/0.9.1 tqdm/4.32.2 CPython/3.6.8

File hashes

Hashes for backend.ai_manager-19.3.4-py3-none-any.whl
Algorithm Hash digest
SHA256 4849c8caea9e684b58125209611b56977bcb399f582ad80cb273b962f3966f35
MD5 0093a7a6ed640ebcee14dad99bc0b9d6
BLAKE2b-256 519e35f7324c1fb4acbf234fddf6f6478ae0a7bba82002984c6f01d4d9c16a1d

See more details on using hashes here.

Supported by

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