OpenStackTaxonomy

Problem
There are several architectural terms which are used throughout OpenStack. They arise throughout the user experience (UX), in the UI, API, and documentation; in source code; and in specifications and blueprints. However these terms are not used consistently in all contexts, and this is a continuing source of confusion. These inconsistencies are particularly significant when they result in different people ascribing different - and incompatible - meanings to the same term or phrase.

The first goal of this project (or perhaps initiative, since project is one of these terms of art in OpenStack) is to capture the various ways in which these architectural terms are used today in OpenStack, including any implied relationships to other terms. In some cases it will be useful to identify common uses outside OpenStack which may lead to ambiguity or misunderstanding. (The term Availability Zone is a good example.) A second, more ambitious, goal is to come up with unambiguous definitions for these terms which can be adopted by all OpenStack projects.

It should be noted that there is an existing Glossary of OpenStack terms. That resource is intended to assist readers of the OpenStack documentation; it is not structured as an authoritative set of definitions. If this initiative is successful, it should allow us to make significant improvements to the Glossary.

Region
xxx

Multi-region
xxx

Domain
xxx

Project
xxx

Availability zone
xxx

Host aggregate
xxx

Cloud
(multiple regions operated by the same principal)

User
xxx

Tenant
xxx

Tenancy
xxx

Endpoint
xxx

Endpoint group
xxx

Token
xxx