Accountant: Inventar, where, Checkmk, Abrechnung
This commit is contained in:
1 parent
9f16148cde
commit
dd93277750
59 files changed
+7522
-113
No files matched your search
@@ -0,0 +1,23 @@
|
||||
# sultan accountant – Einstellungen für compose.yaml (cp .env.example .env).
|
||||
# Jede Variable SULTAN_<FLAG> entspricht dem Flag --<flag> (sultan accountant --help);
|
||||
# leer oder auskommentiert = Default (rechts angegeben).
|
||||
|
||||
# Image: lokal gebaut (docker build -t sultan:latest .) oder aus der Registry
|
||||
SULTAN_IMAGE=zot.chmln.de/sultan:latest
|
||||
|
||||
# Adresse(n), unter denen die Sultan-Server (Payees) den Accountant erreichen –
|
||||
# die erste steckt in jeder Einladung. Kommagetrennt. Default: keine (Payees
|
||||
# brauchen dann SULTAN_ACCOUNTANT).
|
||||
SULTAN_PUBLIC_URL=https://accountant.example.de:8444
|
||||
|
||||
# Port für Payees, nur TLS – in der Firewall nur für die Ingress-Server öffnen.
|
||||
# SULTAN_ADDR=:8444
|
||||
# SULTAN_ENROLL_LIMIT=10 # Enrollment-Versuche/Minute je IP (-1 = aus)
|
||||
|
||||
# Checkmk: curl -s http://127.0.0.1:8082/metrics/checkmk (Klartext, nur Loopback; none = aus)
|
||||
# SULTAN_METRICS_ADDR=127.0.0.1:8082
|
||||
# SULTAN_STALE_WARN=2h # Payee ohne Bericht → WARN
|
||||
# SULTAN_STALE_CRIT=6h # … → CRIT
|
||||
|
||||
# Zeitzone für Zeitstempel im Log und in payee list (ohne TZ: UTC)
|
||||
TZ=Europe/Berlin
|
||||
@@ -0,0 +1,21 @@
|
||||
# sultan accountant – Zentrale für Inventar und Abrechnung (Spec 5.3).
|
||||
#
|
||||
# cp .env.example .env && $EDITOR .env
|
||||
# install -d -m 0700 -o 65532 -g 65532 accdata # Datenverzeichnis für den nonroot-User
|
||||
# docker compose up -d
|
||||
# docker compose exec sultan-accountant sultan accountant invite --payee=webproxy11
|
||||
# docker compose exec sultan-accountant sultan accountant payee list
|
||||
#
|
||||
# network_mode: host wie beim Server: payee list zeigt die echte IP der Payees,
|
||||
# der Port ist ohne Mapping über .env wählbar.
|
||||
services:
|
||||
sultan-accountant:
|
||||
image: ${SULTAN_IMAGE:-sultan:latest}
|
||||
container_name: sultan-accountant
|
||||
restart: unless-stopped
|
||||
network_mode: host
|
||||
command: ["sultan", "accountant"]
|
||||
# Alle Einstellungen kommen aus .env (Vorlage mit Defaults: .env.example).
|
||||
env_file: .env
|
||||
volumes:
|
||||
- ./accdata:/accdata # accountant.db, server.key/.crt – sichern!
|
||||
@@ -1,10 +1,23 @@
|
||||
# sultan agent – Einstellungen für compose.yaml (cp .env.example .env).
|
||||
# Jede Variable SULTAN_<FLAG> entspricht dem Flag --<flag> (sultan agent --help);
|
||||
# leer oder auskommentiert = Default (rechts angegeben).
|
||||
|
||||
# Image: lokal gebaut (docker build -t sultan:latest .) oder aus der Registry
|
||||
# SULTAN_IMAGE=sultan:latest
|
||||
# SULTAN_IMAGE=zot.chmln.de/sultan:v0.1.0
|
||||
SULTAN_IMAGE=zot.chmln.de/sultan:latest
|
||||
|
||||
# Einladung vom Server: docker compose exec sultan-server sultan token invite --tenant=…
|
||||
# Nach dem ersten Start nicht mehr nötig; stehen lassen ist harmlos.
|
||||
SULTAN_TOKEN=
|
||||
|
||||
# Gruppe des Docker-Sockets: getent group docker | cut -d: -f3
|
||||
# Gruppe des Docker-Sockets (Pflicht): getent group docker | cut -d: -f3
|
||||
DOCKER_GID=
|
||||
|
||||
# Optional
|
||||
# SULTAN_SERVER=https://ingress.example.de:8443 # Default: Adresse aus der Einladung
|
||||
# SULTAN_NODE_ID=webdocker11 # Default: aus dem Hostnamen
|
||||
# SULTAN_BACKEND_HOST=10.0.0.11 # Default: automatisch (Route zum Server)
|
||||
# SULTAN_BACKEND_INTERFACE=wt0 # alternativ: IP dieses Interfaces (NetBird)
|
||||
# SULTAN_FQDN=webdocker11.lan.example.de # Default: per DNS ermittelt (nur Inventar)
|
||||
|
||||
# Zeitzone für Zeitstempel im Log (ohne TZ: UTC)
|
||||
TZ=Europe/Berlin
|
||||
@@ -16,11 +16,8 @@ services:
|
||||
restart: unless-stopped
|
||||
network_mode: host
|
||||
command: ["sultan", "agent", "--data-dir=/suldata", "--config-dir=none"]
|
||||
environment:
|
||||
# Ausgabe von `sultan token invite`; nach dem ersten Start nicht mehr nötig,
|
||||
# stehen lassen ist harmlos.
|
||||
SULTAN_TOKEN: ${SULTAN_TOKEN:-}
|
||||
TZ: ${TZ:-Europe/Berlin} # Zeitstempel im Log
|
||||
# Alle Einstellungen kommen aus .env (Vorlage mit Defaults: .env.example).
|
||||
env_file: .env
|
||||
# Lesezugriff auf den Docker-Socket für den nonroot-User (UID 65532).
|
||||
group_add:
|
||||
- "${DOCKER_GID:?DOCKER_GID setzen: getent group docker | cut -d: -f3}"
|
||||
|
||||
@@ -1,25 +1,42 @@
|
||||
# sultan server – Einstellungen für compose.yaml (cp .env.example .env).
|
||||
# Jede Variable SULTAN_<FLAG> entspricht dem Flag --<flag> (sultan server --help);
|
||||
# leer oder auskommentiert = Default (rechts angegeben).
|
||||
|
||||
# Image: lokal gebaut (docker build -t sultan:latest .) oder aus der Registry
|
||||
SULTAN_IMAGE=sultan:latest
|
||||
# SULTAN_IMAGE=git.everdc.eu/chmln-app-dev/sultan:v0.1.0
|
||||
SULTAN_IMAGE=zot.chmln.de/sultan:latest
|
||||
|
||||
# Adresse(n), unter denen Agents den Server erreichen – die erste steckt in jeder
|
||||
# Einladung, alle bekommen Agents als Ausweichweg. Kommagetrennt, leer erlaubt.
|
||||
# Einladung, alle bekommen Agents als Ausweichweg. Kommagetrennt. Default: keine
|
||||
# (Agents brauchen dann --server).
|
||||
SULTAN_PUBLIC_URL=https://webproxy11.lan.r25dc.de:8443
|
||||
|
||||
# Ports (host-Netz). Vorher prüfen, ob frei – Traefiks API/Dashboard nutzt oft 8080:
|
||||
# Ports (Host-Netz). Vorher prüfen, ob frei – Traefiks API/Dashboard nutzt oft 8080:
|
||||
# ss -ltnp | grep -E ':(8443|8080|8081)\b'
|
||||
# SULTAN_AGENT_ADDR=:8443
|
||||
# SULTAN_PROVIDER_ADDR=127.0.0.1:8080
|
||||
# SULTAN_LANDER_ADDR=127.0.0.1:8081
|
||||
# SULTAN_AGENT_ADDR=:8443 # Agents, nur TLS – in der Firewall für Agent-Hosts öffnen
|
||||
# SULTAN_PROVIDER_ADDR=127.0.0.1:8080 # Traefik-Provider & Checkmk – Klartext, nur Loopback!
|
||||
# SULTAN_LANDER_ADDR=127.0.0.1:8081 # Hinweis-/Wartungsseiten, nur Loopback
|
||||
|
||||
# Texte/Links der Hinweis- und Einladungsseiten (optional)
|
||||
# Texte/Links der Hinweis- und Einladungsseiten (Default: leer)
|
||||
# SULTAN_HOSTER_NAME=everDC
|
||||
# SULTAN_HOSTER_URL=https://www.everdc.eu
|
||||
# SULTAN_PRO_URL=https://www.everdc.eu/pro
|
||||
|
||||
# Benachrichtigungen (optional, kommagetrennt mehrere möglich)
|
||||
# Benachrichtigungen (Default: keine; kommagetrennt mehrere möglich)
|
||||
# SULTAN_NOTIFY_SLACK=https://hooks.slack.com/services/…
|
||||
# SULTAN_NOTIFY_NTFY=https://ntfy.example.de/sultan
|
||||
# SULTAN_NOTIFY_NTFY_TOKEN=tk_…
|
||||
# SULTAN_OFFLINE_ALERT_AFTER=15m
|
||||
|
||||
# Zeitzone für Wartungsseite und Checkmk (Default Europe/Berlin)
|
||||
# TZ=Europe/Berlin
|
||||
# Betrieb
|
||||
# SULTAN_REFRESH=1m # Neubewertung, Leases, Befehle
|
||||
# SULTAN_ENROLL_LIMIT=10 # Enrollment-Versuche/Minute je IP (-1 = aus)
|
||||
# SULTAN_LEASE_DURATION=0 # 0 = je Tier (Community 14 Tage, kommerziell 7)
|
||||
|
||||
# Inventar an den Accountant melden (Default: aus). Einladung von
|
||||
# sultan accountant invite --payee=<dieser-server>
|
||||
# nur beim ersten Start nötig (danach accountant.json + payee.key in suldata).
|
||||
# SULTAN_ACCOUNTANT_TOKEN=sltn_enroll_…
|
||||
# SULTAN_ACCOUNTANT=https://accountant.example.de:8444 # nur, wenn die Einladung keine/eine andere Adresse hat
|
||||
|
||||
# Zeitzone für Wartungsseite, Checkmk und Log (ohne TZ: UTC)
|
||||
TZ=Europe/Berlin
|
||||
@@ -19,23 +19,8 @@ services:
|
||||
restart: unless-stopped
|
||||
network_mode: host
|
||||
command: ["sultan", "server", "--data-dir=/suldata"]
|
||||
environment:
|
||||
# Agents (TLS 1.3) – in der Firewall für die Agent-Hosts öffnen.
|
||||
SULTAN_AGENT_ADDR: ${SULTAN_AGENT_ADDR:-:8443}
|
||||
# Traefik-Provider & Checkmk – Klartext, nur Loopback!
|
||||
SULTAN_PROVIDER_ADDR: ${SULTAN_PROVIDER_ADDR:-127.0.0.1:8080}
|
||||
# Lander (Hinweis-/Wartungsseiten) – nur Loopback, Traefik ruft ihn auf.
|
||||
SULTAN_LANDER_ADDR: ${SULTAN_LANDER_ADDR:-127.0.0.1:8081}
|
||||
# Leer = keine Adresse in Einladungen (Agent braucht dann --server).
|
||||
# Mehrere Adressen kommagetrennt (öffentlich, NetBird …).
|
||||
SULTAN_PUBLIC_URL: ${SULTAN_PUBLIC_URL:-}
|
||||
SULTAN_HOSTER_NAME: ${SULTAN_HOSTER_NAME:-}
|
||||
SULTAN_HOSTER_URL: ${SULTAN_HOSTER_URL:-}
|
||||
SULTAN_NOTIFY_SLACK: ${SULTAN_NOTIFY_SLACK:-}
|
||||
SULTAN_NOTIFY_NTFY: ${SULTAN_NOTIFY_NTFY:-}
|
||||
SULTAN_NOTIFY_NTFY_TOKEN: ${SULTAN_NOTIFY_NTFY_TOKEN:-}
|
||||
# Zeitzone für Wartungsseite und Checkmk (sonst UTC). Prüfen:
|
||||
# docker compose exec sultan-server sultan version
|
||||
TZ: ${TZ:-Europe/Berlin}
|
||||
# Alle Einstellungen kommen aus .env (Vorlage mit Defaults: .env.example).
|
||||
# Jedes Flag ist als SULTAN_<FLAG> setzbar; leere Werte = Default.
|
||||
env_file: .env
|
||||
volumes:
|
||||
- ./suldata:/suldata # sultan.db, server.key/.crt, master.key – sichern!
|
||||
Reference in new issue
Block a user