feat: добавить аддоны postgresql, mysql, databasus, minio, velero, crowdsec
Базы данных: - addons/postgresql: Bitnami PostgreSQL (Helm), vault_postgresql_* - addons/mysql: Bitnami MySQL (Helm), vault_mysql_* Объектное хранилище и backup: - addons/minio: Bitnami MinIO в distributed режиме (4 ноды по умолчанию) - addons/velero: backup кластера через Velero + MinIO как S3 backend; bucket создаётся автоматически через mc Job; daily schedule 02:00 Безопасность: - addons/crowdsec: CrowdSec LAPI + DaemonSet агенты, мониторит ingress-nginx; опциональный nginx bouncer (crowdsec_nginx_bouncer_enabled: true) Резервное копирование БД: - addons/databasus: OCI chart, автоматически подключается к addon_postgresql и addon_mysql когда те включены (shared endpoint через postgresql_external_host и mysql_external_host) Общее: - group_vars/all/addons.yml: флаги addon_* + конфиги для всех 6 аддонов; shared DB endpoints postgresql_external_host / mysql_external_host - group_vars/all/vault.yml.example: примеры паролей для всех аддонов - Makefile: targets addon-postgresql/mysql/databasus/minio/velero/crowdsec
This commit is contained in:
29
Makefile
29
Makefile
@@ -52,6 +52,8 @@ DOCKER_RUN := docker run --rm -it \
|
||||
addon-ingress-nginx addon-cert-manager addon-nfs-server addon-csi-nfs addon-nfs \
|
||||
addon-istio addon-prometheus-stack addon-metrics-server \
|
||||
addon-argocd addon-longhorn addon-kubernetes-dashboard \
|
||||
addon-postgresql addon-mysql addon-databasus \
|
||||
addon-minio addon-velero addon-crowdsec \
|
||||
add-node remove-node \
|
||||
add-etcd-node remove-etcd-node \
|
||||
etcd-backup etcd-restore etcd-list-snapshots \
|
||||
@@ -304,6 +306,33 @@ addon-kubernetes-dashboard: _check_env _check_image ## Установить Kube
|
||||
@printf "$(CYAN)Устанавливаю Kubernetes Dashboard...$(NC)\n"
|
||||
$(DOCKER_RUN) addon kubernetes-dashboard $(ARGS)
|
||||
|
||||
# ── Базы данных ───────────────────────────────────────────────────────────────
|
||||
addon-postgresql: _check_env _check_image ## Установить PostgreSQL (Bitnami; ARGS="-e postgresql_storage_size=20Gi")
|
||||
@printf "$(CYAN)Устанавливаю PostgreSQL...$(NC)\n"
|
||||
$(DOCKER_RUN) addon postgresql $(ARGS)
|
||||
|
||||
addon-mysql: _check_env _check_image ## Установить MySQL (Bitnami; ARGS="-e mysql_storage_size=20Gi")
|
||||
@printf "$(CYAN)Устанавливаю MySQL...$(NC)\n"
|
||||
$(DOCKER_RUN) addon mysql $(ARGS)
|
||||
|
||||
addon-databasus: _check_env _check_image ## Установить Databasus — управление резервными копиями БД (ARGS="-e databasus_ingress_host=backup.example.com")
|
||||
@printf "$(CYAN)Устанавливаю Databasus...$(NC)\n"
|
||||
$(DOCKER_RUN) addon databasus $(ARGS)
|
||||
|
||||
# ── Объектное хранилище и backup ──────────────────────────────────────────────
|
||||
addon-minio: _check_env _check_image ## Установить MinIO — S3 объектное хранилище (ARGS="-e minio_storage_size=20Gi")
|
||||
@printf "$(CYAN)Устанавливаю MinIO...$(NC)\n"
|
||||
$(DOCKER_RUN) addon minio $(ARGS)
|
||||
|
||||
addon-velero: _check_env _check_image ## Установить Velero — backup кластера + PVC через S3/MinIO
|
||||
@printf "$(CYAN)Устанавливаю Velero...$(NC)\n"
|
||||
$(DOCKER_RUN) addon velero $(ARGS)
|
||||
|
||||
# ── Безопасность ──────────────────────────────────────────────────────────────
|
||||
addon-crowdsec: _check_env _check_image ## Установить CrowdSec — обнаружение вторжений (ARGS="-e crowdsec_nginx_bouncer_enabled=true")
|
||||
@printf "$(CYAN)Устанавливаю CrowdSec...$(NC)\n"
|
||||
$(DOCKER_RUN) addon crowdsec $(ARGS)
|
||||
|
||||
# Generic цель — любой аддон из addons/<name>/playbook.yml
|
||||
addon-%: _check_env _check_image
|
||||
@if [ ! -f "addons/$*/playbook.yml" ]; then \
|
||||
|
||||
Reference in New Issue
Block a user