docs(config): комментарии к group_vars, host_vars, inventory и defaults аддонов

- group_vars/all/main.yml: пояснения к глобальным настройкам K3S, сети, CNI,
  kube-vip, chrony, ротации сертификатов, сервисным пользователям и пакетам.
- group_vars/all/addons.yml: комментарии над флагами addon_* и активными
  блоками (NFS, CSI NFS, ingress-nginx, cert-manager, Databasus, MinIO,
  etcd backup и др.); исправлена битая строка-разделитель в секции Gitea Actions.
- group_vars/all/vault.yml.example: описание назначения каждого секрета.
- host_vars (master01, worker01, rpi01): пояснения к labels, taints и
  k3s_extra_server_args.
- inventory/hosts.ini: комментарии к группам и строкам нод, пояснение nfs_server;
  исправлена повреждённая линия-разделитель.
- addons/*/role/defaults/main.yml: русские комментарии над переменными
  (в т.ч. Harbor, Authelia, Istio, Prometheus, Vault, Jenkins, DNS-аддоны и др.).
- addons/csi-nfs/role/defaults/main.yml: исправлено имя csi_nfs_reclaim_policy
  (опечатка с кириллической «М» в имени ключа).
Рабочий vault.yml не менялся (секреты / ansible-vault).
This commit is contained in:
Sergey Antropoff
2026-04-28 02:32:19 +03:00
parent 4eaf91e2d2
commit dde2fc8a8a
47 changed files with 1057 additions and 232 deletions

View File

@@ -1,26 +1,40 @@
---
# Пространство имён для стека медиа-приложений
mediaserver_namespace: "mediaserver"
# Shared PVC for all services
# StorageClass общего PVC; пусто — default
mediaserver_storage_class: "" # empty = default StorageClass (nfs-master01)
# Размер общего тома данных
mediaserver_data_size: "200Gi"
# Имя PVC, монтируемого в linuxserver-контейнеры
mediaserver_pvc_name: "mediaserver-data"
# UID/GID for all linuxserver containers
# PUID для файлов на томе
mediaserver_puid: "1000"
# PGID для файлов на томе
mediaserver_pgid: "1000"
# Часовой пояс контейнеров
mediaserver_timezone: "Europe/Moscow"
# bjw-s/app-template chart
# URL Helm-репозитория app-template
mediaserver_app_template_repo: "https://bjw-s.github.io/helm-charts"
# Версия чарта; пусто — последняя
mediaserver_app_template_version: "" # empty = auto-detect latest
# ─── Plex ─────────────────────────────────────────────────────────────────────
# Установить Plex Media Server
mediaserver_plex_enabled: true
# Claim token from https://plex.tv/claim (valid 4 min). Leave empty after first run.
# Токен привязки Plex (из plex.tv/claim)
mediaserver_plex_claim_token: "{{ vault_plex_claim_token | default('') }}"
# Ingress для Plex
mediaserver_plex_ingress_enabled: false
# Хост Ingress Plex
mediaserver_plex_ingress_host: "plex.local"
# Ресурсы пода Plex
mediaserver_plex_resources:
requests:
cpu: "200m"
@@ -30,11 +44,17 @@ mediaserver_plex_resources:
memory: "4Gi"
# ─── Transmission ─────────────────────────────────────────────────────────────
# Установить Transmission
mediaserver_transmission_enabled: true
# Ingress для Transmission
mediaserver_transmission_ingress_enabled: false
# Хост Ingress
mediaserver_transmission_ingress_host: "transmission.local"
# Пароль веб-UI Transmission
mediaserver_transmission_password: "{{ vault_transmission_password | default('transmission') }}"
# Порт для входящих peer-соединений
mediaserver_transmission_peer_port: 51413
# Ресурсы Transmission
mediaserver_transmission_resources:
requests:
cpu: "100m"
@@ -44,6 +64,7 @@ mediaserver_transmission_resources:
memory: "512Mi"
# ─── Sonarr ───────────────────────────────────────────────────────────────────
# Установить Sonarr
mediaserver_sonarr_enabled: true
mediaserver_sonarr_ingress_enabled: false
mediaserver_sonarr_ingress_host: "sonarr.local"
@@ -105,23 +126,31 @@ mediaserver_prowlarr_resources:
# ─── Hysteria2 sidecar (Prowlarr pod only) ────────────────────────────────────
# SOCKS5 proxy on 127.0.0.1:1080 — Prowlarr uses it to reach blocked trackers
# Sidecar Hysteria2 в поде Prowlarr для трекеров за блокировкой
mediaserver_hysteria2_enabled: true
# ── Способ 1: вставить URL целиком (из Shadowrocket / NekoBox / Hiddify) ──────
# Формат: hysteria2://PASSWORD@HOST:PORT?insecure=0&obfs=salamander&obfs-password=XXX
# Если задан — server/auth/insecure/obfs ниже вычисляются автоматически.
# Полный URI клиента Hysteria2
mediaserver_hysteria2_url: "{{ vault_hysteria2_url | default('') }}"
# ── Способ 2: указать параметры по отдельности ────────────────────────────────
# Server address — e.g. "example.com:443" or "1.2.3.4:443"
# Адрес сервера host:port
mediaserver_hysteria2_server: "{{ vault_hysteria2_server | default('') }}"
# Authentication password
# Пароль аутентификации
mediaserver_hysteria2_auth: "{{ vault_hysteria2_auth | default('') }}"
# Optional obfuscation: type "salamander" + password, or leave both empty
# Тип обфускации
mediaserver_hysteria2_obfs_type: ""
# Пароль обфускации
mediaserver_hysteria2_obfs_password: ""
# Skip TLS verification (self-signed certs on the server side)
# Отключить проверку TLS
mediaserver_hysteria2_insecure: false
# Ресурсы sidecar Hysteria2
mediaserver_hysteria2_resources:
requests:
cpu: "50m"
@@ -144,20 +173,30 @@ mediaserver_overseerr_resources:
# ─── Samba ────────────────────────────────────────────────────────────────────
# LoadBalancer service — gets LAN IP from kube-vip
# Сервис Samba (LoadBalancer/kube-vip)
mediaserver_samba_enabled: true
# Имя пользователя Samba
mediaserver_samba_user: "media"
# Пароль Samba
mediaserver_samba_password: "{{ vault_samba_password | default('media') }}"
# Рабочая группа Windows
mediaserver_samba_workgroup: "WORKGROUP"
# Имя шары
mediaserver_samba_share_name: "media"
# Optional: set a specific LAN IP for Samba (kube-vip annotation)
# Leave empty to get a dynamic IP from kube-vip pool
# Статический LAN IP для LoadBalancer Samba (опционально)
mediaserver_samba_static_ip: ""
# ─── Watchtower (optional) ────────────────────────────────────────────────────
# Auto-updates container images in the mediaserver namespace
# Автообновление образов в namespace
mediaserver_watchtower_enabled: false
# Расписание cron Watchtower
mediaserver_watchtower_schedule: "0 0 4 * * *" # cron: 4am every day
# ─── Ingress ──────────────────────────────────────────────────────────────────
# IngressClass для медиа Ingress
mediaserver_ingress_class: "nginx"
# Общие аннотации Ingress
mediaserver_ingress_annotations: {}