Spec-Zone.ru › Ansible 2.11

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.

Примечание

У этого модуля есть соответствующий плагин действий.

Требования

Ниже перечислены требования, необходимые на хосте, на котором выполняется этот модуль.

  • helm (https://github.com/helm/helm/releases)
  • yaml (https://pypi.org/project/PyYAML/)

Параметры

Параметр Варианты/Значения по умолчанию Комментарии
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
строка
    Варианты:
  • present ←
  • absent
Желаемое состояние релиза.

псевдонимы: 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

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API