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.5.tar.gz (71.8 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.5-py3-none-any.whl (91.1 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: backend.ai-manager-19.3.5.tar.gz
  • Upload date:
  • Size: 71.8 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.1.0 requests-toolbelt/0.9.1 tqdm/4.32.2 CPython/3.6.8

File hashes

Hashes for backend.ai-manager-19.3.5.tar.gz
Algorithm Hash digest
SHA256 b788deb047e1d0673da290409c156f8d4780298835034897b8e514ef717a66cc
MD5 28ad5baf6d190ba47d09a96e5927bcef
BLAKE2b-256 6155845282a25fa342f5efc71bc6c80a9353c3c7b900c105de8bb5fc31e0f868

See more details on using hashes here.

File details

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

File metadata

  • Download URL: backend.ai_manager-19.3.5-py3-none-any.whl
  • Upload date:
  • Size: 91.1 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.1.0 requests-toolbelt/0.9.1 tqdm/4.32.2 CPython/3.6.8

File hashes

Hashes for backend.ai_manager-19.3.5-py3-none-any.whl
Algorithm Hash digest
SHA256 ea362b800a0c750576ebee6425a5c4de037c9bbdaf783a8041c8a44b92ca9af8
MD5 51438696f8fb8616519b0ae89353b865
BLAKE2b-256 e28d5ef9a1459d8f03bb79a6661e01e81a529208beae99e67084604a5091aa3e

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