docs: Hostname-Fix auf MetalLB-IP + int.elbpro.de für alle Services
- 04-traefik: External-IP von Node-IPs auf MetalLB VIP 192.168.11.180 korrigiert, Übersicht aller aktiven Ingresses mit nip.io und int.elbpro.de URLs - 06-rancher: Hostname-Fix .170 → .180, int.elbpro.de hinzugefügt, Fix-Doku - 07-argocd: Hostname-Fix .170 → .180, int.elbpro.de + TLS-Fix dokumentiert Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -1,9 +1,10 @@
|
||||
# 06 — Rancher
|
||||
|
||||
**Datum:** 2026-03-17
|
||||
**Datum:** 2026-03-17 (aktualisiert: 2026-03-20)
|
||||
**Version:** Rancher v2.13.3 (Helm Chart 2.13.3)
|
||||
**Namespace:** cattle-system
|
||||
**URL:** https://rancher.192.168.11.170.nip.io
|
||||
**URL:** https://rancher.192.168.11.180.nip.io
|
||||
**URL (intern):** https://rancher.int.elbpro.de
|
||||
|
||||
---
|
||||
|
||||
@@ -51,13 +52,17 @@ kubectl create namespace cattle-system
|
||||
helm install rancher rancher-stable/rancher \
|
||||
--namespace cattle-system \
|
||||
--version 2.13.3 \
|
||||
--set hostname=rancher.192.168.11.170.nip.io \
|
||||
--set hostname=rancher.192.168.11.180.nip.io \
|
||||
--set ingress.tls.source=rancher \
|
||||
--set replicas=2 \
|
||||
--wait \
|
||||
--timeout 10m
|
||||
```
|
||||
|
||||
> **Hinweis:** Initial wurde `hostname=rancher.192.168.11.170.nip.io` (Control-Plane-IP)
|
||||
> verwendet. Da Traefik nach MetalLB-Installation auf `192.168.11.180` gebunden ist,
|
||||
> musste der Hostname auf `.180.nip.io` korrigiert werden (siehe Abschnitt "Hostname-Fix").
|
||||
|
||||
**Wichtig — TLS-Quelle:** `ingress.tls.source=rancher` verwendet Rancher's
|
||||
eigene self-signed CA (nicht Let's Encrypt). Siehe Abschnitt "TLS-Entscheidung"
|
||||
weiter unten.
|
||||
@@ -87,7 +92,7 @@ nicht erreichen.
|
||||
helm upgrade rancher rancher-stable/rancher \
|
||||
--namespace cattle-system \
|
||||
--version 2.13.3 \
|
||||
--set hostname=rancher.192.168.11.170.nip.io \
|
||||
--set hostname=rancher.192.168.11.180.nip.io \
|
||||
--set ingress.tls.source=rancher \
|
||||
--set replicas=2
|
||||
```
|
||||
@@ -140,7 +145,7 @@ kubectl get certificate -n cattle-system
|
||||
|
||||
```
|
||||
NAME CLASS HOSTS ADDRESS PORTS
|
||||
rancher traefik rancher.192.168.11.170.nip.io 192.168.11.170,192.168.11.171,192.168.11.172 80, 443
|
||||
rancher traefik rancher.192.168.11.180.nip.io,rancher.int.elbpro.de 192.168.11.180 80, 443
|
||||
|
||||
NAME READY SECRET
|
||||
tls-rancher-ingress True tls-rancher-ingress
|
||||
@@ -156,16 +161,91 @@ rancher cattle-system 2 deployed rancher-2.13.3 v2.13.3
|
||||
```
|
||||
|
||||
Revision 2: Upgrade von `letsEncrypt` → `rancher` TLS-Quelle.
|
||||
Revision 3: Hostname-Fix auf `192.168.11.180.nip.io` + `int.elbpro.de` hinzugefügt.
|
||||
|
||||
---
|
||||
|
||||
## Hostname-Fix (2026-03-20)
|
||||
|
||||
### Problem
|
||||
|
||||
Rancher wurde initial mit `hostname=rancher.192.168.11.170.nip.io` installiert.
|
||||
nip.io löst `.170` auf die Control-Plane-IP auf — dort läuft kein Traefik (Traefik
|
||||
ist nach MetalLB-Installation an `192.168.11.180` gebunden). Ergebnis: Verbindung
|
||||
abgelehnt beim Aufruf der URL.
|
||||
|
||||
### Diagnose
|
||||
|
||||
```bash
|
||||
curl -sk -o /dev/null -w "%{http_code}" https://rancher.192.168.11.170.nip.io
|
||||
# → 000 (Verbindung abgelehnt)
|
||||
|
||||
curl -sk -o /dev/null -w "%{http_code}" https://rancher.192.168.11.180.nip.io
|
||||
# → 404 (Traefik antwortet, aber kein Ingress-Match für diesen Host)
|
||||
```
|
||||
|
||||
### Fix: Helm Upgrade mit korrektem Hostname
|
||||
|
||||
```bash
|
||||
helm upgrade rancher rancher-stable/rancher \
|
||||
--set hostname=rancher.192.168.11.180.nip.io \
|
||||
--set ingress.tls.source=rancher \
|
||||
--set replicas=2 \
|
||||
--reuse-values=false \
|
||||
--wait --timeout 5m
|
||||
```
|
||||
|
||||
Nach dem Upgrade sofort erreichbar:
|
||||
```bash
|
||||
curl -sk -o /dev/null -w "%{http_code}" https://rancher.192.168.11.180.nip.io
|
||||
# → 200
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Interner Hostname: int.elbpro.de (2026-03-20)
|
||||
|
||||
Alle Homelab-Services wurden mit einem zweiten Ingress-Host (`*.int.elbpro.de`)
|
||||
versehen, damit saubere DNS-Namen ohne IP-Einbettung nutzbar sind.
|
||||
|
||||
### Ingress patchen
|
||||
|
||||
```bash
|
||||
kubectl patch ingress rancher -n cattle-system --type=json -p='[
|
||||
{"op":"add","path":"/spec/rules/-","value":{
|
||||
"host":"rancher.int.elbpro.de",
|
||||
"http":{"paths":[{"path":"/","pathType":"Prefix",
|
||||
"backend":{"service":{"name":"rancher","port":{"number":80}}}}]}
|
||||
}}
|
||||
]'
|
||||
```
|
||||
|
||||
### DNS-Voraussetzung
|
||||
|
||||
```
|
||||
# Pi-hole oder Omada: A-Record oder Wildcard
|
||||
*.int.elbpro.de → 192.168.11.180
|
||||
```
|
||||
|
||||
### Aktuelle Ingress-Konfiguration
|
||||
|
||||
```
|
||||
kubectl get ingress rancher -n cattle-system
|
||||
NAME HOSTS
|
||||
rancher rancher.192.168.11.180.nip.io, rancher.int.elbpro.de
|
||||
ADDRESS: 192.168.11.180 PORTS: 80, 443
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Erster Login
|
||||
|
||||
### URL
|
||||
### URLs
|
||||
|
||||
```
|
||||
https://rancher.192.168.11.170.nip.io
|
||||
```
|
||||
| URL | Erreichbar |
|
||||
|---|---|
|
||||
| https://rancher.192.168.11.180.nip.io | immer (nip.io) |
|
||||
| https://rancher.int.elbpro.de | wenn DNS gesetzt (siehe unten) |
|
||||
|
||||
> Browser zeigt Zertifikatswarnung (self-signed CA) → "Trotzdem fortfahren"
|
||||
|
||||
@@ -184,7 +264,7 @@ kubectl get secret --namespace cattle-system bootstrap-secret \
|
||||
### Direkter Setup-Link
|
||||
|
||||
```bash
|
||||
echo https://rancher.192.168.11.170.nip.io/dashboard/?setup=$(kubectl get secret \
|
||||
echo https://rancher.192.168.11.180.nip.io/dashboard/?setup=$(kubectl get secret \
|
||||
--namespace cattle-system bootstrap-secret \
|
||||
-o go-template='{{.data.bootstrapPassword|base64decode}}')
|
||||
```
|
||||
@@ -193,8 +273,11 @@ echo https://rancher.192.168.11.170.nip.io/dashboard/?setup=$(kubectl get secret
|
||||
|
||||
## Nächste Schritte
|
||||
|
||||
- [ ] Ersten Login durchführen, Admin-Passwort setzen
|
||||
- [x] Ersten Login durchführen, Admin-Passwort setzen
|
||||
- [x] Hostname auf MetalLB-IP korrigiert
|
||||
- [x] int.elbpro.de Hostname hinzugefügt
|
||||
- [ ] Cluster in Rancher registrieren / importieren
|
||||
- [ ] Longhorn-Storage in Rancher-UI prüfen
|
||||
- [ ] User und Rollen konfigurieren
|
||||
- [ ] Rancher-eigenen Monitoring-Stack prüfen (optional)
|
||||
- [ ] Wildcard-DNS `*.int.elbpro.de → 192.168.11.180` in Pi-hole eintragen
|
||||
|
||||
Reference in New Issue
Block a user