Kolla provides production-ready containers and deployment tools for operating OpenStack clouds
Find a file
Jeremy Liu c756896e90 Add HACKING.rst and hacking test case.
Currently, we have hacking check in kolla, but no place where we
can define hacking check rules. This patch adds HACKING.rst file
for that. And also add test cases for hacking.

Change-Id: I87f8768138d91bf6a5a1db91d37392f794f3f0ba
2016-11-24 15:55:43 +08:00
contrib Merge "Fix broken test in vagrant boostrap script" 2016-11-06 06:00:37 +00:00
doc Merge "Clean up docs around local registry" 2016-11-22 13:29:48 +00:00
docker Merge "Fix Designate source image container assets" 2016-11-23 12:22:41 +00:00
etc Merge "Ansible-ize OpenStack Designate" 2016-11-15 16:15:20 +00:00
kolla Add HACKING.rst and hacking test case. 2016-11-24 15:55:43 +08:00
releasenotes Merge "Unmount Ceph OSD disks as part of destroy" 2016-11-16 12:20:09 +00:00
specs Add specs are advisory readme.rst to kolla repo 2016-11-22 22:28:02 -07:00
tests Remove Ansible from Kolla 2016-11-15 21:34:17 -07:00
tools Merge "Clean up docs around local registry" 2016-11-22 13:29:48 +00:00
.gitignore Fix the prechecks for the ansible version 2016-06-09 07:04:13 +08:00
.gitreview Update .gitreview for project rename 2015-09-11 20:57:54 +00:00
.testr.conf Merge "Revert "Capture the log in default"" 2016-01-19 15:36:52 +00:00
bindep.txt Make Ubuntu gate work 2016-11-03 16:07:47 +00:00
HACKING.rst Add HACKING.rst and hacking test case. 2016-11-24 15:55:43 +08:00
LICENSE Add ASL license 2014-09-20 17:29:35 -07:00
README.rst Add Karbor doc link in README.rst 2016-11-11 20:35:31 +08:00
requirements.txt Updated from global requirements 2016-11-10 10:15:50 +00:00
setup.cfg Merge "Clean up docs around local registry" 2016-11-22 13:29:48 +00:00
setup.py Updated from global requirements 2016-05-03 15:58:36 +00:00
test-requirements.txt Add HACKING.rst and hacking test case. 2016-11-24 15:55:43 +08:00
tox.ini Merge "Remove Ansible references from tox.ini" 2016-11-20 15:02:57 +00:00

==============
Kolla Overview
==============

The Kolla project is a member of the OpenStack `Big Tent
Governance <http://governance.openstack.org/reference/projects/index.html>`__.

Kolla's mission statement is:

::

    To provide production-ready containers and deployment tools for operating
    OpenStack clouds.

Kolla provides `Docker <http://docker.com/>`__ containers and
`Ansible <http://ansible.com/>`__ playbooks to meet Kolla's mission.

Kolla is highly opinionated out of the box, but allows for complete
customization. This permits operators with little experience to deploy
OpenStack quickly and as experience grows modify the OpenStack
configuration to suit the operator's exact requirements.

Getting Started
===============

Learn about Kolla by reading the documentation online
`docs.openstack.org <http://docs.openstack.org/developer/kolla/>`__.

Get started by reading the `Developer
Quickstart <http://docs.openstack.org/developer/kolla/quickstart.html>`__.

Docker images
=============

The `Docker images <https://docs.docker.com/engine/tutorials/dockerimages/>`__
are built by the Kolla project maintainers. A detailed process for
contributing to the images can be found in the `image building
guide <http://docs.openstack.org/developer/kolla/image-building.html>`__.

The Kolla developers build images in the `kolla` namespace for every tagged
release and implement an Ansible roles for many but not all of them.

You can view the available images on `Docker Hub
<https://hub.docker.com/u/kolla/>`__ or with the Docker CLI::

    $ sudo docker search kolla

OpenStack services
------------------

Kolla provides images to deploy the following OpenStack projects:

- `Aodh <http://docs.openstack.org/developer/aodh/>`__
- `Barbican <http://docs.openstack.org/developer/barbican/>`__
- `Bifrost <http://docs.openstack.org/developer/bifrost/>`__
- `Ceilometer <http://docs.openstack.org/developer/ceilometer/>`__
- `Cinder <http://docs.openstack.org/developer/cinder/>`__
- `CloudKitty <http://docs.openstack.org/developer/cloudkitty/>`__
- `Congress <http://docs.openstack.org/developer/congress/>`__
- `Designate <http://docs.openstack.org/developer/designate/>`__
- `Freezer <https://wiki.openstack.org/wiki/Freezer-docs>`__
- `Glance <http://docs.openstack.org/developer/glance/>`__
- `Gnocchi <http://docs.openstack.org/developer/gnocchi/>`__
- `Heat <http://docs.openstack.org/developer/heat/>`__
- `Horizon <http://docs.openstack.org/developer/horizon/>`__
- `Ironic <http://docs.openstack.org/developer/ironic/>`__
- `Karbor <http://docs.openstack.org/developer/karbor/>`__
- `Keystone <http://docs.openstack.org/developer/keystone/>`__
- `Kuryr <http://docs.openstack.org/developer/kuryr/>`__
- `Magnum <http://docs.openstack.org/developer/magnum/>`__
- `Manila <http://docs.openstack.org/developer/manila/>`__
- `Mistral <http://docs.openstack.org/developer/mistral/>`__
- `Murano <http://docs.openstack.org/developer/murano/>`__
- `Neutron <http://docs.openstack.org/developer/neutron/>`__
- `Nova <http://docs.openstack.org/developer/nova/>`__
- `Panko <http://docs.openstack.org/developer/panko/>`__
- `Rally <http://docs.openstack.org/developer/rally/>`__
- `Sahara <http://docs.openstack.org/developer/sahara/>`__
- `Searchlight <http://docs.openstack.org/developer/searchlight/>`__
- `Senlin <http://docs.openstack.org/developer/senlin/>`__
- `Solum <http://docs.openstack.org/developer/solum/>`__
- `Swift <http://docs.openstack.org/developer/swift/>`__
- `Tempest <http://docs.openstack.org/developer/tempest/>`__
- `Trove <http://docs.openstack.org/developer/trove/>`__
- `Vmtp <http://vmtp.readthedocs.io/en/latest/>`__
- `Watcher <http://docs.openstack.org/developer/watcher/>`__
- `Zaqar <http://docs.openstack.org/developer/zaqar/>`__

Infrastructure components
-------------------------

Kolla provides images to deploy the following infrastructure components:

- `Ceph <http://ceph.com/>`__ implementation for Cinder, Glance and Nova
- `collectd <https://collectd.org>`__,
  `InfluxDB <https://influxdata.com/time-series-platform/influxdb/>`__, and
  `Grafana <http://grafana.org>`__ for performance monitoring.
- `Elasticsearch <https://www.elastic.co/de/products/elasticsearch>`__ and
   `Kibana <https://www.elastic.co/de/products/kibana>`__ to search, analyze,
   and visualize log messages.
- `HAProxy <http://www.haproxy.org/>`__ and
  `Keepalived <http://www.keepalived.org/>`__ for high availability of services
  and their endpoints.
- `Heka <http://hekad.readthedocs.org/>`__ A distributed and
  scalable logging system for OpenStack services.
- `MariaDB and Galera Cluster <https://mariadb.com/kb/en/mariadb/galera-cluster/>`__
  for highly available MySQL databases
- `MongoDB <https://www.mongodb.org/>`__ as a database backend for Ceilometer
  and Gnocchi
- `Open vSwitch <http://openvswitch.org/>`__ and Linuxbridge backends for Neutron
- `RabbitMQ <https://www.rabbitmq.com/>`__ as a messaging backend for
  communication between services.

Directories
===========

-  ``ansible`` - Contains Ansible playbooks to deploy Kolla in Docker
   containers.
-  ``contrib`` - Contains demos scenarios for Heat and Murano and a development
   environment for Vagrant
-  ``doc`` - Contains documentation.
-  ``docker`` - Contains jinja2 templates for the docker build system.
-  ``etc`` - Contains a reference etc directory structure which requires
   configuration of a small number of configuration variables to achieve
   a working All-in-One (AIO) deployment.
-  ``tests`` - Contains functional testing tools.
-  ``tools`` - Contains tools for interacting with Kolla.
-  ``specs`` - Contains the Kolla communities key arguments about
   architectural shifts in the code base.

Getting Involved
================

Need a feature? Find a bug? Let us know! Contributions are much
appreciated and should follow the standard `Gerrit
workflow <http://docs.openstack.org/infra/manual/developers.html>`__.

-  We communicate using the #openstack-kolla irc channel.
-  File bugs, blueprints, track releases, etc on
   `Launchpad <https://launchpad.net/kolla>`__.
-  Attend weekly
   `meetings <https://wiki.openstack.org/wiki/Meetings/Kolla>`__.
-  Contribute `code <https://git.openstack.org/openstack/kolla>`__.

Contributors
============

Check out who's `contributing
code <http://stackalytics.com/?module=kolla-group&metric=commits>`__ and
`contributing
reviews <http://stackalytics.com/?module=kolla-group&metric=marks>`__.