Files
K3S/group_vars/all/vault.yml.example
Sergey Antropoff 3765bc87b6 feat: добавлены аддоны SMTP Relay, HashiCorp Vault, External Secrets Operator
- SMTP Relay (bokysan/mail): Postfix relay через Yandex SMTP, порт 465 с
  TLS wrappermode, trusted networks only (pod/service CIDR), без аутентификации
  внутри кластера — поды отправляют на smtp-relay:25
- HashiCorp Vault (hashicorp/vault): standalone и HA (Raft) режимы,
  auto-unseal: k8s Secret (homelab), AWS KMS, GCP CKMS, Azure Key Vault,
  Transit; Vault Agent Injector по умолчанию; Job инициализации + Unsealer
  Deployment для k8s режима; README с полным гайдом по injection в YAML/Helm
- External Secrets Operator (ESO): синхронизирует Vault секреты в k8s Secrets,
  ClusterSecretStore с AppRole auth, README с примерами ExternalSecret в
  YAML манифестах, Helm чартах и ArgoCD

Обновлены: addons.yml (3 новых флага + секции), vault.yml.example
(smtp_relay_password, aws_kms_*, eso_approle_secret_id),
playbooks/addons.yml, Makefile
2026-04-25 18:31:06 +03:00

91 lines
7.0 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

---
# Секретные переменные — шифруй через ansible-vault!
#
# Создание зашифрованного файла:
# ansible-vault create group_vars/all/vault.yml
#
# Редактирование:
# ansible-vault edit group_vars/all/vault.yml
#
# Запуск плейбука с vault:
# ansible-playbook site.yml --ask-vault-pass
# ansible-playbook site.yml --vault-password-file ~/.vault_pass
# ─── K3S ──────────────────────────────────────────────────────────────────────
vault_k3s_token: "ЗАМЕНИ_НА_НАДЁЖНЫЙ_СЕКРЕТНЫЙ_ТОКЕН_МИН_32_СИМВОЛА"
# ─── PostgreSQL ────────────────────────────────────────────────────────────────
vault_postgresql_postgres_password: "changeme-postgres" # пароль суперпользователя postgres
vault_postgresql_password: "changeme-app" # пароль пользователя postgresql_auth_username
# ─── MySQL ─────────────────────────────────────────────────────────────────────
vault_mysql_root_password: "changeme-root" # пароль root
vault_mysql_password: "changeme-app" # пароль пользователя mysql_auth_username
# ─── Prometheus / Grafana ──────────────────────────────────────────────────────
vault_grafana_user: "admin"
vault_grafana_password: "changeme-grafana"
# ─── Istio / Kiali ─────────────────────────────────────────────────────────────
# Заполняется после первой установки Istio:
# kubectl -n istio-system create token kiali --duration=8760h
vault_kiali_token: ""
# ─── MinIO ─────────────────────────────────────────────────────────────────────
vault_minio_root_user: "admin"
vault_minio_root_password: "changeme-minio"
# ─── Velero (использует addon_minio как S3 backend) ───────────────────────────
# Обычно те же значения что vault_minio_root_user / vault_minio_root_password
vault_velero_s3_access_key: "admin" # = vault_minio_root_user
vault_velero_s3_secret_key: "changeme-minio" # = vault_minio_root_password
# ─── Databasus ─────────────────────────────────────────────────────────────────
vault_databasus_db_password: "changeme-databasus" # пароль для user/db databasus в PostgreSQL
# ─── CrowdSec ──────────────────────────────────────────────────────────────────
# Ключ энролмента — получить на https://app.crowdsec.net → My Instances → +
# Оставь пустым для оффлайн-режима (без Central API)
vault_crowdsec_enroll_key: ""
# ─── Harbor ────────────────────────────────────────────────────────────────────
vault_harbor_admin_password: "Harbor12345" # мин. 8 символов, латиница+цифры
vault_harbor_db_password: "changeme-harbor" # пароль user 'harbor' в PostgreSQL
# ─── Gitea ─────────────────────────────────────────────────────────────────────
vault_gitea_admin_password: "changeme-gitea"
vault_gitea_db_password: "changeme-gitea-db" # пароль user 'gitea' в PostgreSQL
# ─── ownCloud OCIS ─────────────────────────────────────────────────────────────
vault_owncloud_admin_password: "changeme-owncloud"
# ─── Nextcloud ─────────────────────────────────────────────────────────────────
vault_nextcloud_admin_password: "changeme-nextcloud"
vault_nextcloud_db_password: "changeme-nextcloud-db" # пароль user 'nextcloud' в PostgreSQL
# ─── Vaultwarden ───────────────────────────────────────────────────────────────
vault_vaultwarden_admin_token: "9R*eQ;G1M#)+Uw(afhoJ" # токен для /admin панели
vault_vaultwarden_smtp_password: "fntwztnkacanpbwa" # пароль SMTP (Yandex App Password)
# ─── CSI GlusterFS / Heketi ────────────────────────────────────────────────────
vault_glusterfs_heketi_secret: "changeme-heketi" # пароль Heketi admin
# ─── SMTP Relay ────────────────────────────────────────────────────────────────
vault_smtp_relay_password: "fntwztnkacanpbwa" # Yandex App Password для sergey@antropoff.ru
# ─── HashiCorp Vault (auto-unseal: aws) ────────────────────────────────────────
# Используется только при vault_auto_unseal_type: aws
vault_aws_kms_access_key: "" # AWS IAM Access Key ID
vault_aws_kms_secret_key: "" # AWS IAM Secret Access Key
# Vault Transit Seal (vault_auto_unseal_type: transit)
vault_transit_seal_token: "" # token для доступа к transit engine другого Vault
# Azure Key Vault unseal (vault_auto_unseal_type: azure)
vault_azure_kv_client_secret: ""
# ─── External Secrets Operator → HashiCorp Vault ───────────────────────────────
# Получить после шага 6 в addons/external-secrets/README.md:
# vault write -f -field=secret_id auth/approle/role/eso-role/secret-id
vault_eso_approle_secret_id: "" # AppRole Secret ID для ESO → Vault