# Proxmox Ceph Installation & Konfiguration

## **1. Vorbereitung &amp; Anforderungen**

Bevor du beginnst, solltest du sicherstellen, dass folgende Voraussetzungen erfüllt sind:

### 📌 **Hardware-Empfehlungen**

- Mindestens **3 physische Proxmox-Nodes** für Quorum und Redundanz.
- Leistungsfähige **CPU &amp; genügend RAM** (Ceph benötigt insbesondere RAM pro OSD).
- Netzwerk mit **dedizierten Ceph-Verbindungen** (z. B. 10 Gbps oder mehr).
- Direkter Zugriff auf Festplatten (kein RAID) – Ceph arbeitet besser mit HBAs.

💡 Grundidee von *Hyper-Converged Infrastructure (HCI)*: Compute **und** Storage laufen gemeinsam auf denselben Servern.

---

## **2. Ceph Installation**

Du kannst Ceph entweder über die Proxmox-Weboberfläche oder per CLI installieren.

### 🔹 **Installation über Web Wizard (empfohlen)**

1. Öffne die Proxmox Web-GUI.
2. Wähle einen Cluster-Node aus.
3. Navigiere zu **Ceph → Installieren**.
4. Folge dem Assistenten:
    
    ➤ Wähle die Ceph-Version
    
    ➤ Bestätige Installation
    
    ➤ Setze Netzwerkeinstellungen (Public &amp; optional Cluster Network)
5. Nach Abschluss wird Ceph installiert und betriebsbereit sein.

**Netzwerkeinstellungen:**

- **Public Network:** Ceph Datenverkehr (z. B. Client/Replication)
- **Cluster Network (optional):** Intern für OSD Replikation (empfohlen separat).

---

### 🔹 **Installation über CLI**

Wenn du lieber die Konsole nutzt:

```bash
pveceph install

```

Danach die Erstkonfiguration:

```bash
pveceph init--network <CEPH_PUBLIC_NETWORK>/<CIDR>

```

Dadurch wird `/etc/pve/ceph.conf` erzeugt und automatisch auf alle Cluster-Nodes verteilt.

---

## **3. Ceph Dienste erstellen**

Nach der Installation musst du die wichtigen Ceph-Dienste einrichten:

### **Ceph Monitors (MON)**

Mindestens **3 Monitore** für Quorum und Ausfallsicherheit:

```bash
pveceph mon create

```

oder über GUI: **Ceph → Monitor → Create**.

### **Ceph Manager (MGR)**

Ein Manager ist wichtig für Cluster-Überwachung:

```bash
pveceph mgr create

```

oder über GUI: **Ceph → Manager → Create**.

---

## **4. OSDs erstellen**

Ceph speichert Daten über OSD-Dienste. Empfohlen: **1 OSD pro physischer Festplatte**.

### 🔹 **OSD per CLI**

```bash
pveceph osd create /dev/sdX

```

→ Ersetze `/dev/sdX` durch das entsprechende Block-Device.

💡 Falls eine Festplatte vorher schon Ceph-Daten enthält:

```bash
ceph-volume lvm zap /dev/sdX--destroy

```

⚠ Alle Daten auf dem Laufwerk werden gelöscht.

---

## **5. Pool erstellen**

Ein *Pool* ist eine logische Einheit für Ceph-Speicher.

```bash
pveceph pool create <pool-name>--add_storages

```

- Größe (`size`): Replicas (Standard: 3)
- Anzahl der Placement Groups (`pg_num`): Bestimmt Leistung und Verteilung

Pools erscheinen dann automatisch in der Proxmox-GUI als Speicherziel.

---

## **6. Ceph in Proxmox hinzufügen**

Nachdem Pools erstellt sind:

1. In der Proxmox-GUI gehe zu **Datacenter → Storage → Add → RBD**.
2. Wähle den Ceph-Pool aus.
3. Gib die Key-Ring und Mon Host-Informationen an.

→ Proxmox kann dann VM-Disks direkt auf Ceph speichern (RBD).

---

## **7. Optional: CephFS konfigurieren**

Wenn du ein verteiltes Dateisystem möchtest:

```bash
pveceph mds create
pveceph fs create--pg_num128--add-storage

```

CephFS benötigt mindestens einen MDS.

---

## **8. Wartung &amp; Monitoring**

Du kannst den Ceph-Status überwachen:

```bash
ceph-s
watch ceph--status

```

Fehler können z. B. durch Netzwerkprobleme, ausgefallene OSDs oder unzureichende Ressourcen entstehen.

---

## **Tipps aus den Empfehlungen**

→ Vermeide RAID-Controller und nutze direkte HBAs.

→ Reserve genug RAM pro OSD (z. B. 1 GiB pro TiB).

→ Dedizierte Netzwerkschnittstellen für Ceph-Traffic bringen bessere Performance.

##   