Skip to main content

Python client for Kingbird

Project description


.. image::
:alt: Latest Version

.. image::
:alt: Downloads

Centralised service for multi-region OpenStack deployments.

Kingbird is an centralized OpenStack service that provides resource operation and
management across multiple OpenStack instances in a multi-region OpenStack deployment.
This service is part of the OPNFV Multisite project that intends to address
the use cases related to distributed cloud environments.

Kingbird provides features like centralized quota management, centralized view for
distributed virtual resources, global view for tenant level IP/MAC address space management,
synchronisation of ssh keys, images, flavors, etc. across regions.


Python client for Kingbird

This is a client library for Kingbird built on the Kingbird API. It
provides a Python API (the ``kingbirdclient`` module) and a command-line tool


First of all, clone the repo and go to the repo directory::

$ git clone
$ cd python-kingbirdclient

Then just run::

$ pip install -e .


$ pip install -r requirements.txt
$ python install

Running Kingbird client

If Kingbird authentication is enabled, provide the information about OpenStack
auth to environment variables. Type::

$ export OS_REGION_NAME=<Region>
$ export OS_PROJECT_NAME=<project_name>
$ export OS_IDENTITY_API_VERSION=<identity_version>
$ export OS_PASSWORD=<password>
$ export OS_AUTH_TYPE=<auth_type>
$ export OS_AUTH_URL=http://<Keystone_host>/identity
$ export OS_USERNAME=<user_name>
$ export OS_TENANT_NAME=<tenant_name>

.. note:: In client, we use Keystone auth version v3 as
server supports only v3.*

To make sure Kingbird client works, type::

$ kingbird quota defaults


$ kingbird sync list

You can see the list of available commands typing::

$ kingbird --help

About sync template command
Provide the input file in .yaml/.yml/.json to sync multiple resource-types to multiple regions
Sample input file for .yaml/.yml

- resource_type: fake_resource_type
- fake_resource_1
- fake_resource_2
- fake_source_region
- fake_target_region_1
- fake_target_region_2
force: "True"

Sample input file for .json

"Sync": [
"resource_type": "fake_resource_type",
"resources": [

Note: "force" is optional in .yaml and .json files.

Useful Links
* Free software: Apache license
* `PyPi`_ - package installation
* `Launchpad project`_ - release management
* `Blueprints`_ - feature specifications
* `Bugs` - issue tracking
* `Source`_
* `How to Contribute`_
* `Documentation`_

.. _PyPi:
.. _Launchpad project:
.. _Bugs:
.. _Blueprints:
.. _Source:
.. _How to Contribute:
.. _Documentation:

Project details

Download files

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

Files for python-kingbirdclient, version 0.2.1
Filename, size File type Python version Upload date Hashes
Filename, size python_kingbirdclient-0.2.1-py2-none-any.whl (77.3 kB) File type Wheel Python version py2 Upload date Hashes View
Filename, size python-kingbirdclient-0.2.1.tar.gz (59.7 kB) File type Source Python version None Upload date Hashes View

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page