Kolla provides production-ready containers and deployment tools for operating OpenStack clouds
Go to file
Marcin Juszkiewicz a7ff9f6c0d elasticsearch: install Java first on CentOS too
elasticsearch-oss package fails to install if we install it with Java:

INFO:kolla.common.utils.elasticsearch:could not find java; set JAVA_HOME
INFO:kolla.common.utils.elasticsearch:error: %prein(elasticsearch-oss-0:6.8.23-1.noarch) scriptlet failed, exit status 1
INFO:kolla.common.utils.elasticsearch:Error in PREIN scriptlet in rpm package elasticsearch-oss

Backport down to ussuri needed.

This change also includes a backport of
I7d4788f5b63fba24e3b2f9b15c16866ff811d83e:

Always use the distro-provided libvirt-python

This patch switches masakari-monitors image to follow nova-compute
and ceilometer-compute images.
This will be used and required after [1] merges.
Usage of libvirt-python from PyPI has already proven to be
problematic on CentOS Stream in our stable branches. [2]
With this patch we avoid those issues as well.

[1] https://review.opendev.org/c/openstack/masakari-monitors/+/804913
[2] https://review.opendev.org/c/openstack/kolla/+/797102

Depends-On: https://review.opendev.org/c/openstack/masakari-monitors/+/804913

NOTE(hrw): added removal of libvirt-python from upper-constraints as we have
never version of libvirt that Victoria used.

This change also includes a backport of
I5efab66e487e06abd1a56af97d7e7caa1ebc880d:

Use jinja2.pass_context instead of contextfilter

The contextfilter decorator was deprecated in jinja2 3.0.0, and has been
dropped in 3.1.0. This results in the following warning, and failed
attempts to use filters:

    [WARNING]: Skipping plugin (filters.py) as it seems to be invalid:
    module 'jinja2' has no attribute 'contextfilter'

This change switches to use the pass_context decorator. The minimum
version of Jinja2 is raised to 3 to ensure pass_context is present.

This change has been updated to also support Jinja2 2.x releases,
since the Wallaby upper constraints specify 2.11.3. In practice, most
users will not use UC to install kolla.

CoAuthored-by: Mark Goddard <mark@stackhpc.com>

Finally, amended for Debian Buster to also skip the lower
constraint from masakari-monitors.

Finally, finally, includes also hotfix for contextfunction.
Ie4bccb9ed3f4d8782730c5929abbfa73da215a8c

Change-Id: I72d7920acd8d15941c8c57a4186186212b273a38
(cherry picked from commit 976465c448)
2022-04-19 09:16:49 +00:00
.zuul.d Drop CentOS Linux 8 image builds 2022-02-04 10:42:34 +00:00
contrib/template-override Remove opendaylight image 2020-07-07 12:50:38 +02:00
doc Drop CentOS Linux 8 image builds 2022-02-04 10:42:34 +00:00
docker elasticsearch: install Java first on CentOS too 2022-04-19 09:16:49 +00:00
etc Clean up kolla-ansible related files from Kolla 2016-12-29 04:58:44 +00:00
kolla elasticsearch: install Java first on CentOS too 2022-04-19 09:16:49 +00:00
releasenotes elasticsearch: install Java first on CentOS too 2022-04-19 09:16:49 +00:00
roles/kolla-build-config [CI] Support building source images with in-review changes 2020-09-16 07:39:41 +00:00
specs doc: Start using openstackdoctheme's extlink extension 2019-06-14 21:23:10 +08:00
tests base: Drop usage of Ceph Nautilus from RDO 2022-02-14 18:01:14 +00:00
tools Merge "Finish off removing Congress" 2020-10-19 14:16:59 +00:00
.gitignore CI: Ignore more 2020-05-23 09:20:35 +00:00
.gitreview Update .gitreview for stable/victoria 2020-11-05 07:34:07 +00:00
.stestr.conf Switch to stestr 2019-02-24 20:23:49 +01:00
.yamllint CI: pep8: Fix yamllint error on .yamllint 2019-10-15 17:29:13 +02:00
CONTRIBUTING.rst [Community goal] Update the contributor guide 2020-05-20 11:53:24 +02:00
HACKING.rst Update the documentation link for doc migration 2017-07-21 09:50:25 +00:00
LICENSE Add ASL license 2014-09-20 17:29:35 -07:00
README.rst Update projects in README.rst 2021-01-14 12:17:41 +01:00
bindep.txt Switch to python3 in bindep.txt 2019-11-28 18:26:24 +00:00
deliverables.yaml Remove kolla-cli stuff from kolla 2020-09-29 21:47:28 +08:00
requirements.txt Cleanup py27 support 2020-04-17 18:07:29 +02:00
setup.cfg Add py38 package metadata 2020-05-22 16:14:15 +08:00
setup.py Cleanup py27 support 2020-04-17 18:07:29 +02:00
test-requirements.txt Fix hacking min version to 3.0.1 2020-05-12 19:26:29 -05:00
tox.ini Drop lower-constraints 2021-02-15 10:28:13 +00:00

README.rst

Kolla Overview

image

The Kolla project is a member of the OpenStack Big Tent Governance.

Kolla's mission statement is:

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

Kolla provides Docker containers, Ansible playbooks to deploy OpenStack on baremetal or virtual machine to meet Kolla's mission.

Kolla has out of the box defaults for a working basic deployment, and also implements complete customization. This model permits operators with minimal experience to deploy OpenStack quickly and as the operator's experience grows modify the OpenStack configuration to suit the operator's exact requirements.

Getting Started

Learn about Kolla by reading the documentation online Kolla.

Get started by reading the Kolla Ansible Developer Quickstart.

The Kolla Repository

The Kolla repository is one of three deliverables of the OpenStack Kolla project. The three deliverables that make up the Kolla project are:

Deliverable Repository
kolla https://opendev.org/openstack/kolla
kolla-ansible https://opendev.org/openstack/kolla-ansible
kayobe https://opendev.org/openstack/kayobe

The Docker images are built by the Kolla project maintainers. A detailed process for contributing to the images can be found in the image building guide.

The Kolla developers build images in the kolla namespace for every tagged release.

You can view the available images on Docker Hub or with the Docker CLI:

$ sudo docker search kolla

OpenStack services

Kolla provides images to deploy the following OpenStack projects:

Infrastructure components

Kolla provides images to deploy the following infrastructure components:

  • Certmonger a service to simplify interaction with CAs on networks which use PKI.
  • Chrony a versatile implementation of the Network Time Protocol (NTP).
  • Collectd, InfluxDB, and Grafana for performance monitoring.
  • Corosync and Pacemaker for HAcluster.
  • Elasticsearch and Kibana to search, analyze, and visualize log messages.
  • Cron for log rotation.
  • Etcd a distributed key value store that provides a reliable way to store data across a cluster of machines.
  • Fluentd as an open source data collector for unified logging layer.
  • Gnocchi a time-series storage database.
  • HAProxy and Keepalived for high availability of services and their endpoints.
  • Kafka a distributed streaming platform.
  • MariaDB and Galera Cluster for highly available MySQL databases.
  • Memcached a distributed memory object caching system.
  • Open vSwitch and Linuxbridge back ends for Neutron.
  • Linux ptp an implementation of the Precision Time Protocol (PTP) according to IEEE standard 1588 for Linux.
  • MariaDB Backup A tool which provides a method of performing a hot backup of your MySQL data while the system is running.
  • Prometheus an open-source systems monitoring and alerting toolkit originally built at SoundCloud.
  • Qdrouterd as a direct messaging back end for communication between services.
  • RabbitMQ as a broker messaging back end for communication between services.
  • Redis Sentinel provides high availability for redis along with collateral tasks such as monitoring, notification and acts as configuration provider for clients.
  • Telegraf as a plugin-driven server agent for collecting & reporting metrics.
  • ZooKeeper as a centralized service for maintaining configuration information, naming, providing distributed synchronization, and providing group services.

Directories

  • contrib - Contains sample template override files.
  • 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 build docker images.
  • kolla - Contains Python modules for kolla image build system.
  • releasenotes - Contains the releasenote for all added features in kolla.
  • roles - Contains Ansible roles used in CI.
  • specs - Contains the Kolla communities key arguments about architectural shifts in the code base.
  • tests - Contains functional testing tools.
  • tools - Contains tools for interacting with the kolla repository.

Getting Involved

Need a feature? Find a bug? Let us know! Contributions are much appreciated and should follow the standard Gerrit workflow.

  • We communicate using the #openstack-kolla irc channel.
  • File bugs, blueprints, track releases, etc on Launchpad.
  • Attend weekly meetings.
  • Contribute code.

Contributors

Check out who is contributing code and contributing reviews.

Notices

Docker and the Docker logo are trademarks or registered trademarks of Docker, Inc. in the United States and/or other countries. Docker, Inc. and other parties may also have trademark rights in other terms used herein.