Интеграция шаблонов Kubernetes Helm для развертывания проекта - PullRequest
0 голосов
/ 20 апреля 2019

В настоящее время я работаю с проектом на основе микросервисной архитектуры. Для создания этого проекта у меня есть 20 проектов микросервиса Spring Boot. Я для каждой корневой папки разместил свой Dockerfile для создания образа. И я использую кластер Kubernetes для развертывания через диаграмму Хелма.

Моя путаница в том, что, когда я создавал диаграмму Хелма, она предоставляла service.yaml и deploy.yaml внутри каталога шаблонов.

Если я развертываю эти 20 микросервисов, нужно ли мне создавать 20 отдельных диаграмм управления? Или я могу создать сервис для каждых 20 в пределах 1 графика?

Я новичок в диаграмме Кубернетеса и Хелма. Поэтому меня смущает стандартный способ использования файлов yaml с диаграммой. Нужно ли создавать 20 отдельных диаграмм или я могу включить их в 1 диаграмму?

Как мне следовать стандартному способу создания диаграмм для моих проектов микро-услуг?

1 Ответ

5 голосов
/ 20 апреля 2019

То, что я в итоге сделал (работая с подобным стеком), - это создание одной микросервисной диаграммы, которая хранится во внутреннем репозитории диаграмм.Внутри Helm Chart я дал достаточно вариантов конфигурации, чтобы команды могли гибко управлять своими собственными развертываниями, но я удостоверился, что установил разумные значения по умолчанию (например, убедитесь, что при развертывании используется RollingUpdateStrategy, а зонды готовности настроены с разумными значениями по умолчанию).

Эти параметры конфигурации могут быть переданы в файле values.yaml.Команды развертывают свой микросервис по конвейеру CICD, передавая файл values.yaml команде helm (с флагом -f).

Я бы определенно рекомендовал вам прочитать Руководство разработчика шаблонов шлема , прежде чем принимать решение.Это действительно зависит от того, насколько похожи ваши микросервисы, но я рекомендую использовать 1 Helm Chart, если у вас однородная среда (что также было для меня).

...