Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/openstack/kuryr
Bridge between container framework networking and storage models to OpenStack networking and storage abstractions. Mirror of code maintained at opendev.org.
https://github.com/openstack/kuryr
Last synced: 4 days ago
JSON representation
Bridge between container framework networking and storage models to OpenStack networking and storage abstractions. Mirror of code maintained at opendev.org.
- Host: GitHub
- URL: https://github.com/openstack/kuryr
- Owner: openstack
- License: apache-2.0
- Created: 2015-07-14T18:00:55.000Z (over 9 years ago)
- Default Branch: master
- Last Pushed: 2024-09-10T08:26:12.000Z (2 months ago)
- Last Synced: 2024-09-10T10:37:59.233Z (2 months ago)
- Language: Python
- Homepage: https://opendev.org/openstack/kuryr
- Size: 1.63 MB
- Stars: 197
- Watchers: 45
- Forks: 46
- Open Issues: 0
-
Metadata Files:
- Readme: README.rst
- Contributing: CONTRIBUTING.rst
- License: LICENSE
Awesome Lists containing this project
README
========================
Team and repository tags
========================.. image:: https://governance.openstack.org/badges/kuryr.svg
:target: https://governance.openstack.org/reference/tags/index.html.. Change things from this point on
===============================
kuryr
===============================.. image:: https://raw.githubusercontent.com/openstack/kuryr/master/doc/images/kuryr_logo.png
:alt: Kuryr mascot
:align: centerDocker for OpenStack Neutron
Kuryr is a Docker network plugin that uses Neutron to provide networking
services to Docker containers. It provides containerised images for the
common Neutron plugins.* Free software: Apache license
* Documentation: https://docs.openstack.org/kuryr/latest/
* Source: https://opendev.org/openstack/kuryr
* Bugs: https://bugs.launchpad.net/kuryrFeatures
--------* TODO
Getting Code
------------::
$ git clone https://opendev.org/openstack/kuryr.git
$ cd kuryrPrerequisites
-------------::
$ sudo pip install -r requirements.txt
Installing Kuryr's libnetwork driver
------------------------------------For kuryr-libnetwork driver installation refer:
https://docs.openstack.org/kuryr-libnetwork/latest/readme.html
Configuring Kuryr
-----------------Generate sample config, `etc/kuryr.conf.sample`, running the following
::
$ tox -e genconfig
Rename and copy config file at required path
::
$ cp etc/kuryr.conf.sample /etc/kuryr/kuryr.conf
Edit keystone section in `/etc/kuryr/kuryr.conf`, replace ADMIN_PASSWORD:
::
auth_type = v3password
auth_url = http://127.0.0.1:5000
region_name = regionOne
user_doamin_name = Default
username = admin
project_domain_name = Default
project_name = service
password = ADMIN_PASSWORDIn the same file uncomment the `bindir` parameter with the path for the Kuryr
vif binding executables:::
bindir = /usr/local/libexec/kuryr
By default, Kuryr will use veth pairs for performing the binding. However, the
Kuryr library ships with two other drivers that you can configure in the
**binding** section::[binding]
#driver = kuryr.lib.binding.drivers.ipvlan
#driver = kuryr.lib.binding.drivers.macvlanDrivers may make use of other **binding** options. Both Kuryr library drivers in
the previous snippet can be further configured setting the interface that will
act as link interface for the virtual devices::link_iface = enp4s0
Running Kuryr
-------------Currently, Kuryr utilizes a bash script to start the service. Make sure that
you have installed `tox` before the execution of the below command.::
$ sudo ./scripts/run_kuryr.sh
After the booting, please restart your Docker service, e.g.,
::
$ sudo service docker restart
The bash script creates the following file if it is missing.
* ``/usr/lib/docker/plugins/kuryr/kuryr.json``: Json spec file for libnetwork.
Note the root privilege is required for creating and deleting the veth pairs
with `pyroute2 `_ to run.Testing Kuryr
-------------For a quick check that Kuryr is working create a network:
::
$ docker network create --driver kuryr test_net
785f8c1b5ae480c4ebcb54c1c48ab875754e4680d915b270279e4f6a1aa52283
$ docker network ls
NETWORK ID NAME DRIVER
785f8c1b5ae4 test_net kuryrTo test it with tox:
::
$ tox
You can also run specific test cases using the ``-e`` flag, e.g., to only run
the *fullstack* test case.::
$ tox -e fullstack
Generating Documentation
------------------------We use `Sphinx `_ to maintain the
documentation. You can install Sphinx using pip.::
$ pip install -U Sphinx
In addition to Sphinx you will also need the following requirements
(not covered by `requirements.txt`)::$ pip install openstackdocstheme reno 'reno[sphinx]'
The source code of the documentation are under *doc*, you can generate the
html files using the following command. If the generation succeeds,a
*build/html* dir will be created under *doc*.::
$ cd doc
$ make htmlNow you can serve the documentation at http://localhost:8080 as a simple
website.::
$ cd build/html
$ python -m SimpleHTTPServer 8080