# Benutzerhandbuch — Citrix-Manager

## Einführung

Der Citrix-Manager ist ein zentrales Dashboard zur Überwachung und Verwaltung Ihrer Citrix VDA-Infrastruktur. Er zeigt alle VDAs, Sessions und Performance-Daten in Echtzeit an und ermöglicht Aktionen wie Drain, Session-Migration und Rolling Updates — direkt aus dem Browser.

## Erste Schritte

### Anmeldung

1. Öffnen Sie das Dashboard im Browser: `http://localhost:8980` (lokal) oder `https://citrix-manager.c3po42.de`
2. Melden Sie sich mit Ihren Zugangsdaten an:
   - **Admin:** admin / admin
   - **Operator:** operator / op
3. Nach erfolgreicher Anmeldung sehen Sie das Dashboard mit der Gesamtübersicht

### Rollen

| Rolle | Was darf ich? |
|---|---|
| **VIEWER** | Dashboard ansehen, VDAs und Sessions durchsuchen, Statistiken einsehen |
| **OPERATOR** | Alles von Viewer + Drain/Activate, Reboot, Session-Aktionen, Rolling Updates |
| **ADMIN** | Alles von Operator + Benutzerverwaltung, Zeitfenster konfigurieren |

## Dashboard

Das Dashboard zeigt auf einen Blick:

- **VDA-Übersicht:** Gesamtzahl, Online, Offline, im Wartungsmodus
- **Sessions:** Aktive, getrennte und Gesamtzahl
- **Performance:** Durchschnittliche CPU- und RAM-Auslastung
- **Delivery Groups:** Sessions pro Gruppe
- **Image-Versionen:** Verteilung der installierten Images
- **Laufende Updates:** Aktive Rolling Updates mit Fortschritt

Die Daten aktualisieren sich automatisch per Live-Updates (SSE).

## VDA-Verwaltung

### VDA-Übersicht

Die VDA-Liste zeigt alle virtuellen Desktops mit:
- Maschinenname und DNS
- Standort und Delivery Group
- Power State (On/Off)
- Registrierungsstatus
- Wartungsmodus (Ja/Nein)
- CPU, RAM, Disk-Auslastung
- Anzahl aktiver Sessions
- Image-Version

**Filter:**
- Nach Delivery Group filtern
- Nach Standort filtern
- Nur VDAs im Wartungsmodus anzeigen

### Drain (Wartungsmodus aktivieren)

**Zweck:** Verhindert, dass neue Sessions auf diesem VDA gestartet werden. Bestehende Sessions laufen weiter.

1. VDA in der Liste finden
2. Aktion „Drain" klicken
3. Bestätigen

**Wann verwenden:**
- Vor einem geplanten Reboot
- Vor Wartungsarbeiten
- Als Vorbereitung für Session-Migration

### Activate (Wartungsmodus deaktivieren)

**Zweck:** VDA nimmt wieder neue Sessions an.

1. VDA im Wartungsmodus finden
2. Aktion „Activate" klicken
3. Bestätigen

### Session-Migration

**Zweck:** Alle Sessions eines VDA werden auf andere VDAs umgezogen. Die Benutzer reconnecten automatisch auf einen freien VDA — die Unterbrechung beträgt nur 5–15 Sekunden.

**So funktioniert es:**
1. Die Sessions des Quell-VDA werden getrennt (Disconnect)
2. Der Citrix Broker weist jedem Benutzer automatisch einen neuen VDA zu
3. Der Benutzer sieht kurz einen Reconnect und arbeitet auf dem neuen VDA weiter

**Schritt für Schritt:**
1. VDA in der Liste auswählen
2. Aktion „Sessions migrieren" klicken
3. Bestätigen
4. Alle Sessions werden getrennt, Benutzer werden automatisch umgeleitet

**Typischer Workflow:**
1. Drain aktivieren (keine neuen Sessions)
2. Sessions migrieren (bestehende Sessions trennen)
3. Warten bis alle Benutzer reconnected sind
4. Reboot oder Wartung durchführen
5. Activate (VDA wieder freigeben)

**Hinweis:** Die Session-Migration wird auch automatisch im Farm-Update verwendet (siehe unten).

### VDA neustarten (Reboot)

**Zweck:** VDA wird per Citrix Hosting Power Action neugestartet.

1. VDA auswählen (sollte im Wartungsmodus sein)
2. Aktion „Reboot" klicken
3. Bestätigen

**Hinweis:** Der Reboot wird abgelehnt, wenn der VDA noch aktive Sessions hat und nicht im Wartungsmodus ist. Erst Drain aktivieren!

## Session-Verwaltung

### Session-Übersicht

Zeigt alle aktiven Citrix-Sessions mit:
- Benutzername und Anzeigename
- VDA-Name und Standort
- Client-Name und IP
- Protokoll (HDX/RDP)
- Status (Active/Disconnected)
- Laufende Anwendungen
- Startzeit und Idle-Zeit

**Suche:** Nach Benutzername filtern

### Session trennen (Disconnect)

Trennt die Session. Der Benutzer kann sich erneut verbinden und seine Arbeit fortsetzen.

### Session abmelden (Logoff)

Meldet den Benutzer vollständig ab. Nicht gespeicherte Arbeit geht verloren! Nur bei „hängenden" Sessions verwenden.

## Farm-Update (Rolling Update)

Das Farm-Update ist die zentrale Funktion für vollautomatische Rolling Updates Ihrer VDA-Farm. Ein Background-Task arbeitet die VDAs batch-weise ab — Sie können den Fortschritt live im Dashboard verfolgen.

### Farm-Update erstellen und starten

**Schritt 1: Update anlegen**
1. Im Menü „Farm-Update" → „Neues Update" klicken
2. Konfigurieren:
   - **Name:** Beschreibender Name (z.B. „Update auf Image v2.1")
   - **Image-Version:** Ziel-Image (optional, zur Dokumentation)
   - **VDAs auswählen:** Einzelne VDAs oder ganze Delivery Groups
   - **Batch-Größe:** Wie viele VDAs gleichzeitig (Standard: 5)
   - **Drain-Timeout:** Minuten warten auf Session-Leerung (Standard: 30)
   - **Force Logoff:** Nach Timeout alle Sessions zwangsabmelden
   - **Zeitfenster:** Nur innerhalb dieser Zeiten rebooten (z.B. Sa 02:00–06:00)
3. „Erstellen" klicken

**Schritt 2: Update starten**
1. Das erstellte Update in der Liste öffnen
2. „Starten" klicken — der Background-Worker beginnt sofort
3. Der Fortschritt wird im Dashboard live angezeigt (Auto-Refresh alle 5 Sekunden)

### Automatischer Ablauf pro VDA

Jeder VDA durchläuft automatisch diese Schritte:

```
WARTEND → DRAIN → SESSIONS_LEER → REBOOT → FERTIG
```

| Phase | Was passiert |
|---|---|
| **WARTEND** | VDA wartet bis sein Batch an der Reihe ist |
| **DRAIN** | Wartungsmodus wird aktiviert, Sessions werden migriert |
| **SESSIONS_LEER** | Alle Sessions beendet — VDA ist bereit für Reboot |
| **REBOOT** | VDA wird mit dem Golden Image neugestartet |
| **FERTIG** | VDA ist wieder registriert und nimmt neue Sessions an |

### Update pausieren und fortsetzen

- **Pausieren:** Klicken Sie „Pausieren" — der aktuelle Batch läuft noch fertig, aber kein neuer wird gestartet
- **Fortsetzen:** Klicken Sie „Fortsetzen" — der Worker macht mit dem nächsten Batch weiter

### Best Practices für Farm-Updates

- **Batch-Größe:** Bei 40 VDAs empfohlen: 5er Batches (8 Durchläufe)
- **Drain-Timeout:** 30 Minuten sind für die meisten Szenarien ausreichend
- **Zeitfenster:** Samstag/Sonntag 02:00–06:00 Uhr für größere Updates
- **Force Logoff:** Nur verwenden, wenn die Session-Leerung zu lange dauert
- **Monitoring:** Dashboard zeigt Fortschritt in Echtzeit mit VDA-Status

## Netzwerk-Discovery (Server entdecken)

Mit der Netzwerk-Discovery können Sie neue Server im Netzwerk finden und direkt als VDAs importieren.

### Netzwerk-Scan durchführen

1. Im Menü „Netzwerk-Discovery" öffnen
2. IP-Range eingeben (z.B. `192.168.10.1-192.168.10.255`) oder Hostname-Muster
3. „Scan starten" klicken
4. Der Scanner prüft parallel bis zu 50 Hosts gleichzeitig (max. 255 Hosts pro Scan)

### Was wird gescannt?

Der Scanner prüft drei TCP-Ports:
- **Port 135 (RPC)** — Windows-Dienst
- **Port 3389 (RDP)** — Remote Desktop
- **Port 1494 (ICA)** — Citrix ICA-Protokoll

Server mit offenen RDP- und ICA-Ports werden als „vermutlich VDA" markiert.

### Server als VDAs importieren

1. Nach dem Scan werden die gefundenen Server aufgelistet
2. Server auswählen, die als VDAs importiert werden sollen
3. „Importieren" klicken
4. Die Server erscheinen in der VDA-Liste und werden beim nächsten Agent-Report mit Daten befüllt

## Reboot-Zeitfenster

Zeitfenster definieren, wann VDAs neugestartet werden dürfen. Rolling Updates berücksichtigen diese Fenster automatisch.

### Zeitfenster konfigurieren (nur ADMIN)

1. Einstellungen → Reboot-Zeitfenster
2. „Neues Zeitfenster" klicken
3. Wochentag, Start- und Endzeit festlegen
4. Speichern

**Beispiel-Konfiguration:**
- Samstag 02:00–06:00 Uhr
- Sonntag 02:00–06:00 Uhr

## Aktivitätsprotokoll

Das Aktivitätsprotokoll zeigt alle durchgeführten Aktionen:
- Drain/Activate eines VDA
- Reboots
- Session-Trennungen und Abmeldungen
- Session-Migrationen
- Rolling Update Ereignisse
- System-Alerts (z.B. VDA nicht erreichbar)

Jeder Eintrag enthält: Zeitpunkt, Typ, Beschreibung, betroffener VDA und ausführender Benutzer.

## Statistiken

Die Statistik-Ansicht zeigt:
- **Sessions pro Delivery Group** — Verteilung der Auslastung
- **Top-User** — Benutzer mit den meisten Sessions
- **Image-Verteilung** — Welche VDAs welches Image haben
- **Standort-Übersicht** — VDAs und Online-Status pro Standort

## Agent einrichten

### Voraussetzungen

- Windows Server mit Citrix Delivery Controller
- PowerShell 5.1 oder höher
- Citrix PowerShell SDK (wird mit DDC installiert)
- Netzwerkzugriff zum Dashboard (HTTPS)

### Installation

1. `agent.ps1` auf den Delivery Controller kopieren
2. Konfiguration im Script anpassen:
   ```powershell
   $DashboardUrl = "https://citrix-manager.c3po42.de"
   $AgentKey     = "citrix-agent-2026"
   ```
3. Als Administrator ausführen:
   ```powershell
   .\agent.ps1 -Install
   ```

Der Agent registriert sich als Scheduled Task und sendet sofort den ersten Report.

### Deinstallation

```powershell
.\agent.ps1 -Uninstall
```

### Manueller Report

```powershell
.\agent.ps1
```

## Häufige Fragen

**Wie schnell sehe ich Änderungen im Dashboard?**
Der Agent meldet alle 5 Minuten. Live-Updates (SSE) werden sofort nach Eingang eines Reports angezeigt.

**Was passiert bei einem Drain mit bestehenden Sessions?**
Bestehende Sessions laufen normal weiter. Es werden nur keine neuen Sessions auf diesem VDA gestartet.

**Was passiert bei einer Session-Migration?**
Die Sessions werden getrennt (nicht abgemeldet). Benutzer sehen kurz einen Reconnect und arbeiten auf einem anderen VDA weiter.

**Kann ich ein Rolling Update abbrechen?**
Ja, über „Pausieren". Der aktuelle Batch wird noch fertig, aber kein neuer gestartet.

**Was wenn der Agent keine Verbindung zum Dashboard hat?**
Der Agent loggt den Fehler lokal (logs/agent.log) und versucht beim nächsten Scheduled-Task-Lauf erneut.
