Логическая архитектура

Чтобы создать, развернуть и настроить OpenStack, администраторы должны понимать логическую архитектуру.

Как показано в Концептуальная архитектура, OpenStack состоит из нескольких независимых компонентов, которые называются службами OpenStack. Для аутентификации во всех службах используется общая служба идентификации. Отдельные службы взаимодействуют друг с другом посредством общих API, за исключением тех случаев, когда требуется использование команд администратора с привилегированным доступом.

Службы OpenStack состоят из нескольких процессов. В каждой службе есть хотя бы один процесс API, который ожидает запросы API, предварительно обрабатывает их и передает другим элементам службы. За исключением службы идентификации фактическая работа выполняется отдельными процессами.

Для взаимодействия между процессами одной службы используется брокер сообщений AMQP. Состояние службы хранится в базе данных. При развертывании и настройке облака OpenStack можно выбрать одну из нескольких комбинаций брокера сообщений и базы данных (RabbitMQ, MySQL, MariaDB и SQLite).

Пользователи могут получать доступ к OpenStack через пользовательский веб-интерфейс, реализованный в виде Horizon Управления, через клиенты командной строки или с помощью создания запросов API из таких инструментов как плагины браузера или команда curl. Для приложений доступны несколько пакетов SDK. В конечном итоге все эти методы доступа создают вызовы REST API к различным службам OpenStack.

The following diagram shows the most common, but not the only possible, architecture for an OpenStack cloud:

Логическая архитектура