![Brian Rosmaita](/assets/img/avatar_default.png)
Update the docs and add a release note. Partially-implements: bp deprecate-registry Change-Id: I759d38728a50ba516131e13745df651802fcce63
3.8 KiB
Basic architecture
OpenStack Glance has a client-server architecture that provides a REST API to the user through which requests to the server can be performed.
A Glance Domain Controller manages the internal server operations that is divided into layers. Specific tasks are implemented by each layer.
All the file (Image data) operations are performed using glance_store library, which is responsible for interaction with external storage back ends and (or) local filesystem(s). The glance_store library provides a uniform interface to access the backend stores.
Glance uses a central database (Glance DB) that is shared amongst all the components in the system and is sql-based by default. Other types of database backends are somewhat supported and used by operators but are not extensively tested upstream.
![](/openstack/glance/media/commit/ebab2699484fdc0f344b89dce9bd16103d5afb18/doc/source/images/architecture.png)
Image 1. OpenStack Glance Architecture
Following components are present in the Glance architecture:
- A client - any application that makes use of a Glance server.
- REST API - Glance functionalities are exposed via REST.
- Database Abstraction Layer (DAL) - an application programming interface
-
(API) that unifies the communication between Glance and databases.
- Glance Domain Controller - middleware that implements the main
-
Glance functionalities such as authorization, notifications, policies, database connections.
- Glance Store - used to organize interactions between Glance and various
-
data stores.
- Registry Layer - optional layer that is used to organise secure
-
communication between the domain and the DAL by using a separate service.