Коллеги, мы строим приватное облако для своей организации на базе ESX/vSphere. Подрячик сосватал свой (закрытый) продукт для оркестрирования, и уже в третьей фазе проекта вяснилось, что мы строим Икея-облако, то есть кроме запчастей (виртуальные машины, айпи сегменты, базы данных, вебсерверы, прокси, шлюзы) и пары отвёрток, оркестратор ничего предложить не может. Задача, однако, в том, чтобы пользователь мог нарисовать свой прикладной стек, и облако само выделило все ресурсы и в нужной последовательности их связало. Вот этого "связало" в нашем облаке нет, то есть нет возможности делать сложные потоки из простых с любым числом уровней интеграции. Есть ли оно в OpenStack, и как это лучше использовать?
Вариант б) снести все выше vSphere и переделать все запчасти под OpenStack
Вариант а) сохранить заработанные непосильным трудом элементарные потоки, а составные оркестрировать опенстаком.
Типичный пример прикладных стеков, которые пользователи хотят строить каждый день:
1 уровень - в DMZ - обратная прокси с фильтрами - обычно два апача в потоке, внешний фильтрует по модсек с домашними расширениями, а внутренний - диспетчер, перенаправляет запросы на SAML и/или вниз на прикладные уровни. В каждой геолокации таких обратных прокси две штуки, желательно на физическом оборудовании. Вообще, всё что в DMZ, желательно не виртуализировать. Итого N штук, все под глобальным балансером и сетевыми фильтрами.
2 уровень - тоже DMZ - авторизационные базы данных. В зависимости от запрашиваемого ресурса и от пользователя, могут использоваться различные факторы в любой комбинации. Обычно на Java/Tomcat, плюс как минимум три разных породы баз данных.
3 уровень - приложение - обычно на WebSphere. Приложение может запрашивать внешние ресурсы, поэтому...
4 уровень - прямая прокси, уже в другой DMZ, для запросов в Интернет по заранее разрешённым URL. Тот же двойной апач, но задом наперёд - внутренний фильтрует, а внешний распределяет.
Естественно, все эти N потоков должны работать как единый актив-актив кластер для статического контента, а для динамического контента использовать всякие домашние хитрости и возможности нижележащей дисковой системы с оптоволокном.
Но это всё цветочки! Облако должно быть обеспечивать самовоспроизводство, то есть строить себя автоматически, например, в новой геолокации.
Ни разу не фантастика, в техзадании ровно так и написано.