Инициирование карты Хубернетеса Хелма с кластером Кубернетес - PullRequest
0 голосов
/ 08 апреля 2019

Я реализую непрерывную интеграцию и непрерывное развертывание, используя Ansible, Docker, Jenkins и Kubernetes.Я уже создал один кластер Kubernetes с 1 главным и 2 рабочими узлами, используя развертывание Ansible и kubespray.И у меня есть 30 - 40 число приложений микро сервис.Мне нужно создать такое большое количество услуг и развертываний.

Моя путаница

Когда я использую диаграмму Kubernetes Helm диспетчера пакетов Kubernetes, тогда мне нужно инициировать свою диаграммуна главном узле или на моей базовой машине, где я развернул мой кластер kubernet?

  1. Если я инициирую внутри master, то могу ли я использовать kubectl для развертывания с использованием ssh на удаленных рабочих узлах?
  2. Если я инициирую за пределами узлов кластера Kubernetes, могу ли я использовать команду kubectl для развертывания в кластере Kubernetes?

Ответы [ 2 ]

1 голос
/ 09 апреля 2019

Если вы ищете способ запуска клиента helm внутри вашего кластера Kubernetes, проверьте концепцию Helm-Operator .

Я бы порекомендовал вам также поискать термин " GitOps"- набор практик, который объединяет Git с Kubernetes и устанавливает Git в качестве источника правды для вашей декларативной инфраструктуры и приложений.

Существует два замечательных проекта OSS, которые реализуютРекомендации GitOps:

  • flux (использует Helm-Operator)
  • Jenkins-x (использует helm как часть конвейера выпуска)проверьте этот сеанс на YT, чтобы увидеть его в действии)
1 голос
/ 08 апреля 2019

Ваша путаница, похоже, заключается в конфигурации и взаимодействиях компонентов Helm. Это объяснение предоставляет хорошую графику для представления отношений.

Если вы используете традиционную конфигурацию Helm / Tiller, Helm будет установлен на вашем компьютере локально, и, если у вас правильная конфигурация kubectl, вы можете «инициализировать» кластер, запустив helm init дляустановите Tiller в свой кластер.Tiller будет работать как развертывание в kube-system и обладает правами RBAC для создания / изменения / удаления / просмотра ресурсов диаграммы.Helm автоматически будет управлять всеми объектами API для вас, а kube-планировщик будет планировать пакеты для всех ваших узлов соответственно.Вы не должны напрямую взаимодействовать со своим мастером и узлами через консоль.

В любой конфигурации вы всегда выполняете развертывание Helm с локального компьютера с доступом kubectl к вашему кластеру.

Надеюсь, это поможет!

...