community.kubernetes.helm – Управляет пакетами Kubernetes с помощью менеджера пакетов Helm
Примечание
Этот плагин является частью коллекции community.kubernetes (версия 1.1.1).
Для его установки используйте: ansible-galaxy collection install community.kubernetes.
Для использования в книге задач укажите: community.kubernetes.helm.
Новое в версии 0.11.0: коллекции community.kubernetes
Описание
- Устанавливает, обновляет, удаляет пакеты с помощью менеджера пакетов Helm.
Примечание
У этого модуля есть соответствующий плагин действий.
Требования
Ниже перечислены требования, необходимые на хосте, на котором выполняется этот модуль.
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| atomic boolean |
| Если установлено, процесс установки удаляет установку при ошибке. |
| binary_path путь | Путь к бинарному файлу helm. | |
| chart_ref путь | chart_reference в репозитории чартов. путь к упакованному чарту. путь к распакованному каталогу чарта. абсолютный URL. Требуется, когда release_state задано на present. | |
| chart_repo_url строка | URL репозитория чартов, где следует искать запрашиваемый чарт. | |
| chart_version строка | Версия чарта для установки. Если не указано, устанавливается последняя версия. | |
| context строка | Параметр Helm для указания контекста kubeconfig, который следует использовать. Если значение не указано в задаче, вместо него используется значение переменной окружения K8S_AUTH_CONTEXT.псевдонимы: kube_context | |
| create_namespace boolean добавлен в 0.11.1 community.kubernetes |
| Создать пространство имён релиза, если оно отсутствует. |
| disable_hook boolean |
| Параметр Helm для отключения хуков при установке/обновлении/удалении. |
| force boolean |
| Параметр Helm для принудительной переустановки, игнорирование при новой установке. |
| kubeconfig путь | Параметр Helm для указания пути к kubeconfig для использования. Если значение не указано в задаче, вместо него используется значение переменной окружения K8S_AUTH_KUBECONFIG.псевдонимы: kubeconfig_path | |
| purge boolean |
| Удалить релиз из хранилища и освободить его имя для последующего использования. |
| release_name строка / требуется | Имя релиза для управления. псевдонимы: name | |
| release_namespace строка / требуется | Пространство имён Kubernetes, где должен быть установлен чарт. псевдонимы: namespace | |
| release_state строка |
| Желаемое состояние релиза. псевдонимы: state |
| release_values словарь | Значение по умолчанию: {} | Значение для передачи чарту. псевдонимы: values |
| replace boolean добавлен в 1.11.0 community.kubernetes |
| Использовать данное имя только в том случае, если это имя удалённого релиза, который остаётся в истории. Это небезопасно в производственной среде. |
| update_repo_cache boolean |
| Выполнить helm repo update перед операцией. Может выполняться как частью установки пакета, так и в отдельном шаге. |
| values_files список / элементы=строка добавлен в 1.1.0 community.kubernetes | Значение по умолчанию: [] | Файлы значений для передачи чарту. Пути будут читаться из файловой системы целевого хоста, а не хоста, на котором выполняется ansible. Параметр values_files оценивается до параметра values, если оба используются. Пути оцениваются в порядке их указания. |
| wait boolean |
| Ожидать, пока все Pod, PVC, Service и минимальное количество Pod в Deployment будут в состоянии готовности перед отменой релиза как успешного. |
| wait_timeout строка | Таймаут при включённом параметре wait (helm2 — количество секунд, helm3 — длительность). |
Примеры
- name: Deploy latest version of Prometheus chart inside monitoring namespace (and create it)
community.kubernetes.helm:
name: test
chart_ref: stable/prometheus
release_namespace: monitoring
create_namespace: true
# From repository
- name: Add stable chart repo
community.kubernetes.helm_repository:
name: stable
repo_url: "https://kubernetes-charts.storage.googleapis.com"
- name: Deploy latest version of Grafana chart inside monitoring namespace with values
community.kubernetes.helm:
name: test
chart_ref: stable/grafana
release_namespace: monitoring
values:
replicas: 2
- name: Deploy Grafana chart on 5.0.12 with values loaded from template
community.kubernetes.helm:
name: test
chart_ref: stable/grafana
chart_version: 5.0.12
values: "{{ lookup('template', 'somefile.yaml') | from_yaml }}"
- name: Deploy Grafana chart using values files on target
community.kubernetes.helm:
name: test
chart_ref: stable/grafana
release_namespace: monitoring
values_files:
- /path/to/values.yaml
- name: Remove test release and waiting suppression ending
community.kubernetes.helm:
name: test
state: absent
wait: true
# From git
- name: Git clone stable repo on HEAD
ansible.builtin.git:
repo: "http://github.com/helm/charts.git"
dest: /tmp/helm_repo
- name: Deploy Grafana chart from local path
community.kubernetes.helm:
name: test
chart_ref: /tmp/helm_repo/stable/grafana
release_namespace: monitoring
# From url
- name: Deploy Grafana chart on 5.0.12 from url
community.kubernetes.helm:
name: test
chart_ref: "https://kubernetes-charts.storage.googleapis.com/grafana-5.0.12.tgz"
release_namespace: monitoring
Возвращаемые значения
Общие возвращаемые значения описаны здесь, следующие поля уникальны для этого модуля:
| Ключ | Возвращаемое | Описание | |
|---|---|---|---|
| command строка | всегда | Полная команда `helm`, созданная этим модулем, в случае, если вы хотите повторно выполнить команду вне модуля или отладить проблему. Пример: helm upgrade ... | |
| status сложное | при успешном создании/обновлении/уже развернуто | Словарь выходных данных состояния | |
| appversion строка | всегда | Версия развернутого приложения | |
| chart строка | всегда | Название чарта и версия чарта | |
| name строка | всегда | Имя релиза | |
| namespace строка | всегда | Пространство имён, где развернут релиз | |
| revision строка | всегда | Количество обновлений релиза | |
| status строка | всегда | Состояние релиза (может быть развернуто, неудачно и т. д.) | |
| updated строка | всегда | Дата последнего обновления | |
| values строка | всегда | Словарь значений, используемых для развертывания | |
| stderr строка | всегда | Полный стандартный вывод ошибки `helm`, если вы хотите его отобразить или изучить журнал событий | |
| stdout строка | всегда | Полный стандартный вывод `helm`, если вы хотите его отобразить или изучить журнал событий | |
Авторы
- Lucas Boisserie (@LucasBoisserie)
- Matthieu Diehr (@d-matt)
© 2012–2018 Michael DeHaan
© 2018–2021 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.11/collections/community/kubernetes/helm_module.html