Графики руля против оператора ansible-playbook против оператора k8s при установке системы - PullRequest
1 голос
/ 31 октября 2019

У меня большая и сложная система для установки в кластер k8s.

60 микросервисов и 10 контрольных диаграмм, установленных в 5 пространствах имен.

В настоящее время мы запускаем 5 команд установки / обновления helm с паузой в 30 секунд между командами. Этот вид установки обеспечивает серьезную нагрузку на узлы из-за использования образов Docker и запуска приложений. У нас долгое и неясное время установки с частыми перерывами в работе компонентов, так как консул, эластичный поиск и приложения зависят от этих частей.

Я хотел бы услышать мнения о том, как изменить эту ужасную ситуацию.

  1. Напишите сценарий, который управляет установкой с помощью рулевых диаграмм.
  2. Записывает таблицы запуска ansible-playbook и контролирует состояние установки компонентов.
  3. Записывает установочные компоненты ansible-playbook (используя шаблоны Jinja2 против шаблонов Golang)
  4. Напишите оператор k8s, который устанавливает компоненты и контролирует состояние системы.

1 Ответ

0 голосов
/ 05 ноября 2019

Есть много способов сделать это. Но вы можете использовать API kubernetes напрямую. Вы можете создать любой технический сервер, такой как Spring Boot, NodeJS и т. Д., Который управляет созданием объектов Kubernetes, которые вы хотите. Таким образом, по сути, вы будете создавать настраиваемый API Helm, но главное отличие в том, что вы будете настраивать его в соответствии со своими потребностями.

...