#kubernetes #kubernetes-helm
Вопрос:
У меня есть несколько диаграмм управления (каждая из них является микросервисом), но некоторые из них зависят от общей диаграммы (некоторые секреты, pvcs и т. Д.). Можно объявить зависимость между диаграммами и общей диаграммой, но если пакет уже установлен как зависимость — установка диаграммы руля завершится неудачей.
Я ищу способ установить диаграмму управления с зависимостями, но если одна из зависимых диаграмм уже установлена, сделайте или распечатайте массаж, но не завершите процесс установки.
Есть ли какой-нибудь разумный способ справиться с этим ? Например, проверьте, установлена ли уже необходимая диаграмма, и обойдите ее, не нарушив весь процесс. Тнх
Ответ №1:
В идеале вы можете дать зависимости, используя
https://helm.sh/docs/helm/helm_dependency/
# Chart.yaml
dependencies:
- name: nginx
version: "1.2.3"
repository: "https://example.com/charts"
- name: memcached
version: "3.2.1"
repository: "https://another.example.com/charts"
Диаграммы руля хранят свои зависимости в » диаграммах/». Для
разработчиков диаграмм часто проще управлять зависимостями в «Chart.yaml»
, который объявляет все зависимости.Команды зависимостей работают с этим файлом, облегчая синхронизацию между желаемыми зависимостями и фактическими зависимостями, хранящимися в каталоге » диаграммы/».
Вы также можете использовать формат вложенной диаграммы и родительской диаграммы для управления зависимостями
Структура папок что-то будет выглядеть так
├── Chart.yaml
├── charts
│ └── django
│ ├── Chart.yaml
│ ├── templates
│ │ ├── deployment.yaml
│ │ ├── ingress.yaml
│ │ └── service.yaml
│ └── values.yaml
├── templates
└── values.yaml
Например : https://medium.com/craftech/one-chart-to-rule-them-all-3f685e0f25a9
Вы также можете прочитать больше в официальной документации : https://helm.sh/docs/chart_template_guide/subcharts_and_globals/
До этого момента мы работали только с одним графиком. Но диаграммы могут иметь зависимости, называемые вложенными диаграммами, которые также имеют свои собственные значения и шаблоны. В этом разделе мы создадим подсхему и рассмотрим различные способы доступа к значениям из шаблонов.
Комментарии:
1. Привет Thx за ваш ответ — но я говорил о другом варианте использования … Я уже объявляю зависимости — это работает. Но что произойдет, если 2 диаграммы управления будут использовать одну и ту же зависимость? Первое будет развернуто без каких — либо проблем, второе завершится неудачно-с ошибкой, что зависимость уже установлена, я ищу способ, который поможет игнорировать, если зависимость уже установлена, и устанавливать ее только при необходимости. зависимость уже установлена …