diff --git a/src/icinga2/constants-service.conf b/src/icinga2/constants-service.conf index d1a47a4..6c87f99 100644 --- a/src/icinga2/constants-service.conf +++ b/src/icinga2/constants-service.conf @@ -1,46 +1,62 @@ #!/bin/bash - -# Authors: -# (C) 2021 Idea an concept by Christian Zengel -# (C) 2021 Script design and prototype by Markus Helmke -# (C) 2021 Script rework and documentation by Thorsten Spille - -# This file contains the project constants on service level - -# Debian Version, which will be installed -LXC_TEMPLATE_VERSION="debian-12-standard" - -# Create sharefs mountpoint -LXC_MP=0 -# Defines the mountpoint of the filesystem shared by Zamba inside your LXC container (default: tank) -LXC_SHAREFS_MOUNTPOINT="tank" -# Defines the recordsize of mp0 -LXC_MP_RECORDSIZE="16K" - -# Create unprivileged container -LXC_UNPRIVILEGED="1" - -# enable nesting feature -LXC_NESTING="1" - -# enable keyctl feature -LXC_KEYCTL="0" - -# Sets the minimum amount of RAM the service needs for operation -LXC_MEM_MIN=1024 +# +# Zamba LXC Toolbox - Service Constants +# Service: icinga-stack +# +# Description: Enthält alle anwendungsspezifischen Konstanten und +# Variablen, die für OS-Upgrades relevant sind. +# # --- Service Metadata --- ZAMBA_SERVICE_NAME="Icinga2 Monitoring Stack" ZAMBA_SERVICE_DESC="Installiert Icinga2, Icingaweb2, Director, Nginx, PostgreSQL, InfluxDB2 und Grafana." +# Tags zur besseren Filterung und Verwaltung des Containers +SERVICE_TAGS="monitoring,icinga,grafana,influxdb,nginx,postgresql" -# --- Service Configuration --- -# Path to store the generated credentials for the admin + +# --- LXC Container Configuration --- +# Diese Parameter steuern die Erstellung des LXC Containers durch das Zamba Framework. + +# Debian Version, die als Basis für den Container dient +LXC_TEMPLATE_VERSION="debian-12-standard" + +# Erstellt einen unprivilegierten Container für erhöhte Sicherheit +LXC_UNPRIVILEGED="1" + +# Erlaubt das Ausführen von z.B. Docker innerhalb dieses Containers +LXC_NESTING="1" + +# Wird für bestimmte Sicherheits-Features benötigt, hier nicht erforderlich +LXC_KEYCTL="0" + +# Erstellt einen Mountpoint (mp0) für geteilte Dateisysteme +LXC_MP=1 +# Name des ZFS-Dateisystems, das als Mountpoint dient +LXC_SHAREFS_MOUNTPOINT="tank" +# Optimierte Recordsize für Datenbanken und kleine Dateien +LXC_MP_RECORDSIZE="16K" + +# Minimal benötigter Arbeitsspeicher in MB. +# 2048 MB wird für den Betrieb des gesamten Stacks (Icinga, DBs, Grafana) empfohlen. +LXC_MEM_MIN=2048 + + +# --- Service-spezifische Konfiguration --- + +# Pfad zur Speicherung der generierten Zugangsdaten CRED_FILE="/root/.zamba_credentials/icinga_stack.txt" -# Define the PHP version for the current OS release. -# For Debian 12 (Bookworm), this is 8.2. -# For a future Debian 13 (Trixie), you would likely change this to "8.3". -PHP_VERSION="8.2" -# service dependent meta tags -SERVICE_TAGS="nginx,postgresql,influxdb2,grafana" +# --- OS-Versions-spezifische Variablen --- +# Diese Variablen müssen bei einem Upgrade des Basis-Betriebssystems +# (z.B. von Debian 12 auf 13) angepasst werden. + +# Der Codename des Betriebssystems (wird für die Repository-Pfade benötigt) +# Dieser Wert wird normalerweise vom Framework (z.B. aus /etc/os-release) bereitgestellt. +# Falls nicht, wird hier ein Fallback gesetzt. +OS_CODENAME="${OS_CODENAME:-bookworm}" + +# Die Standard-PHP-Version für die jeweilige Debian-Version. +# Debian 12 (Bookworm) -> "8.2" +# Debian 13 (Trixie) -> voraussichtlich "8.3" +PHP_VERSION="8.2"