Dieses Projekt startet einen FastAPI-Server (main:app) und nutzt Uvicorn als ASGI-Server. Siehe main:app für die App-Instanz und pyproject.toml für die deklarierte Abhängigkeiten.
Mit dieser Weboberfläche kann:
- Eine Kind Version ausgewählt und heruntergeladen werden.
- Mit dieser ausgewählten Kind Version können dann beliebig viele kind Cluster erstellt werden.
- Für jeden Cluster kann eine IP Range für Metallb angegeben werden.
- Für jeden Cluster kann Istio installiert werden.
- Für jeden Cluster kann die kubeconfig heruntergeladen werden.
- Python 3.12 (siehe .python-version)
- Git
- Optional: Docker / kind / kubectl (für Cluster-Operationen)
Empfohlen: lokale venv im Projekt:
# einmalig
python3 -m venv .venv
# aktivieren (bash / zsh)
source .venv/bin/activatepip install -r requirements.txt- Entwicklung: Verwenden Sie
--reload, damit der Server bei Codeänderungen neu startet. - Produktion: Entfernen Sie
--reload. Für mehrere Prozesse/CPU-Kerne nutzen Sie--workersoder einen Prozessmanager (z. B. systemd oder Gunicorn mit Uvicorn-Worker).
# Entwicklung (Hot reload)
.venv/bin/uvicorn main:app --reload --host 0.0.0.0 --port 8000
uv run uvicorn main:app --reload
# Produktion (einfach)
.venv/bin/uvicorn main:app --host 0.0.0.0 --port 8000 --workers 4Der Parameter --workers startet mehrere Prozesse (sinnvoll für CPU-bound Arbeit). Uvicorn selbst ist asynchron; synchroner Modus wird durch Einsatz multipler Worker bzw. durch Kombination mit Gunicorn erreicht.






