ddc2a81532
This patch is for supporting deploying multiple instances of zun-compute to multiple hosts. In particular, if a container is created, it will be scheduled to a host picked by a scheduler. The host was recorded at the container object. Later, container life-cycle operations will call/cast to the host, to which the container was scheduled. The list of changes of this commit is as following: * Add a basic scheduler framework. The default scheduler is a basic scheduler that randomly choose a host. * In RPC, add support for sending message to specified host. * In compute, add APIs to schedule a container. * In context, add a method to elevate to admin privilege * In Nova driver, force the nova instance to be created in the scheduled host. This requires to elevate context before calling Nova APIs. * In objects and dbapi, add a method to list Zun services with specified binary. * In setup.cfg, add a scheduler entry point. * In cmd, use hostname as the rpc server ID (instead of a generated short ID). * In conf, use hostname as default value of CONF.host. Implements: blueprint support-multiple-hosts Implements: blueprint basic-container-scheduler Change-Id: I6955881e3087c488eb9cd857cbbd19f49f6318fc
69 lines
1.7 KiB
INI
69 lines
1.7 KiB
INI
[metadata]
|
|
name = zun
|
|
summary = Container Management service for OpenStack
|
|
description-file =
|
|
README.rst
|
|
author = OpenStack
|
|
author-email = openstack-dev@lists.openstack.org
|
|
home-page = https://wiki.openstack.org/wiki/Zun
|
|
classifier =
|
|
Environment :: OpenStack
|
|
Intended Audience :: Information Technology
|
|
Intended Audience :: System Administrators
|
|
License :: OSI Approved :: Apache Software License
|
|
Operating System :: POSIX :: Linux
|
|
Programming Language :: Python
|
|
Programming Language :: Python :: 2
|
|
Programming Language :: Python :: 2.7
|
|
Programming Language :: Python :: 3
|
|
Programming Language :: Python :: 3.4
|
|
|
|
[files]
|
|
packages =
|
|
zun
|
|
|
|
[build_sphinx]
|
|
source-dir = doc/source
|
|
build-dir = doc/build
|
|
all_files = 1
|
|
|
|
[upload_sphinx]
|
|
upload-dir = doc/build/html
|
|
|
|
[compile_catalog]
|
|
directory = zun/locale
|
|
domain = zun
|
|
|
|
[update_catalog]
|
|
domain = zun
|
|
output_dir = zun/locale
|
|
input_file = zun/locale/zun.pot
|
|
|
|
[extract_messages]
|
|
keywords = _ gettext ngettext l_ lazy_gettext
|
|
mapping_file = babel.cfg
|
|
output_file = zun/locale/zun.pot
|
|
|
|
[entry_points]
|
|
console_scripts =
|
|
zun-api = zun.cmd.api:main
|
|
zun-compute = zun.cmd.compute:main
|
|
zun-db-manage = zun.cmd.db_manage:main
|
|
|
|
oslo.config.opts =
|
|
zun = zun.opts:list_opts
|
|
zun.conf = zun.conf.opts:list_opts
|
|
|
|
oslo.config.opts.defaults =
|
|
zun = zun.common.config:set_cors_middleware_defaults
|
|
|
|
zun.database.migration_backend =
|
|
sqlalchemy = zun.db.sqlalchemy.migration
|
|
|
|
zun.scheduler.driver =
|
|
chance_scheduler = zun.scheduler.chance_scheduler:ChanceScheduler
|
|
fake_scheduler = zun.tests.unit.scheduler.fake_scheduler:FakeScheduler
|
|
|
|
tempest.test_plugins =
|
|
zun_tests = zun.tests.tempest.plugin:ZunTempestPlugin
|