Ceph Pool Size nach Upgrade 4.4 auf 5.2.1

elterminatore

Active Member
Jun 18, 2018
47
3
28
49
Hallo zusammen,

letzte Woche habe ich mein "Spiel Cluster" inkl. Ceph genau nach Anleitung im Wiki von 4.4 auf 5.2.1 aktualisiert. Hat wunderbar funktioniert :)
Nun habe ich die OSDs nach und nach auf Bluestore umgestellt und dabei gab es Warnmeldungen wie "pool undersized" usw. .. Also habe ich mal geschaut... Der erste Blick sah so aus:

Screenshot from 2018-06-18 07-24-44.png
Soweit OK, was auch mit dem übereinstimmt:
Screenshot from 2018-06-18 06-43-30.png

Aber hier in der "Pool" Ansicht wirds komisch:
Screenshot from 2018-06-18 06-42-24.png

Und bei der Speicherauslastung des Ceph Storage gabs einen "Einbruch am Tag der Umstellung von pve4 auf pve5:

Screenshot from 2018-06-18 06-41-27.png

meine ceph config sieht so aus:

Screenshot from 2018-06-18 10-00-37.png
Code:
[global]
     auth client required = cephx
     auth cluster required = cephx
     auth service required = cephx
     cluster network = 10.xx.xx.0/24
     filestore xattr use omap = true
     fsid = xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
     keyring = /etc/pve/priv/$cluster.$name.keyring
     osd journal size = 5120
     osd pool default min size = 1
     public network = 10.xx.xx.0/24
     mon allow pool delete = true

[osd]
     keyring = /var/lib/ceph/osd/ceph-$id/keyring

[mon.proxmox]
     host = proxmox
     mon addr = 10.xx.xx.20:6789

[mon.proxmox2]
     host = proxmox2
     mon addr = 10.xx.xx.21:6789

[mon.proxmox3]
     host = proxmox3
     mon addr = 10.xx.xx.22:6789

und die crushmap:

Code:
# begin crush map
tunable choose_local_tries 0
tunable choose_local_fallback_tries 0
tunable choose_total_tries 50
tunable chooseleaf_descend_once 1
tunable chooseleaf_vary_r 1
tunable chooseleaf_stable 1
tunable straw_calc_version 1
tunable allowed_bucket_algs 54

# devices
device 0 osd.0 class hdd
device 1 osd.1 class hdd
device 2 osd.2 class hdd
device 3 osd.3 class hdd
device 4 osd.4 class hdd
device 5 osd.5 class hdd
device 6 osd.6 class hdd
device 7 osd.7 class hdd
device 8 osd.8 class hdd

# types
type 0 osd
type 1 host
type 2 chassis
type 3 rack
type 4 row
type 5 pdu
type 6 pod
type 7 room
type 8 datacenter
type 9 region
type 10 root

# buckets
host proxmox {
    id -2        # do not change unnecessarily
    id -5 class hdd        # do not change unnecessarily
    # weight 2.258
    alg straw
    hash 0    # rjenkins1
    item osd.0 weight 0.450
    item osd.7 weight 0.904
    item osd.1 weight 0.904
}
host proxmox2 {
    id -3        # do not change unnecessarily
    id -6 class hdd        # do not change unnecessarily
    # weight 1.804
    alg straw
    hash 0    # rjenkins1
    item osd.2 weight 0.450
    item osd.3 weight 0.450
    item osd.6 weight 0.904
}
host proxmox3 {
    id -4        # do not change unnecessarily
    id -7 class hdd        # do not change unnecessarily
    # weight 1.804
    alg straw
    hash 0    # rjenkins1
    item osd.4 weight 0.450
    item osd.5 weight 0.450
    item osd.8 weight 0.904
}
root default {
    id -1        # do not change unnecessarily
    id -8 class hdd        # do not change unnecessarily
    # weight 5.866
    alg straw
    hash 0    # rjenkins1
    item proxmox weight 2.258
    item proxmox2 weight 1.804
    item proxmox3 weight 1.804
}

# rules
rule replicated_ruleset {
    id 0
    type replicated
    min_size 1
    max_size 10
    step take default
    step chooseleaf firstn 0 type host
    step emit
}

# end crush map

Kann mir mal jemand auf die Sprünge helfen, was da passiert ist?

Danke + Gruß
Stefan
 
Anmerkung: Node "proxmox3" ist gerade noch am syncen der auf Bluestore umgestellten OSDs, weshalb da so ein großes Ungleichgewicht bei der Auslastung ist.
 
Warnmeldungen wie "pool undersized"
Das bezieht sich auf die PGs und nicht auf den Speicherplatz. Die Anzahl PGs kannst du hier ausrechnen. https://ceph.com/pgcalc/

Und bei der Speicherauslastung des Ceph Storage gabs einen "Einbruch am Tag der Umstellung von pve4 auf pve5:
Von PVE 4.x auf PVE 5.x wurde die Anzeige des Speicherplatzes der Pools angepasst, da jetzt nicht mehr das Cluster Total, sondern der verfügbare/verbrauchte Speicherplatz des Pools angezeigt wird. Damit ist besser ersichtlich, wie viel Daten noch in den individuellen Pool geschrieben werden können.
 
Das bezieht sich auf die PGs und nicht auf den Speicherplatz. Die Anzahl PGs kannst du hier ausrechnen.

Heisst das im Umkehrschluss, dass ich die Anzahl PGs erhöhen sollte, da es bei Wegfall einer OSD zu dieser "undersized" Warnung kam?

Von PVE 4.x auf PVE 5.x wurde die Anzeige des Speicherplatzes der Pools angepasst, da jetzt nicht mehr das Cluster Total, sondern der verfügbare/verbrauchte Speicherplatz des Pools angezeigt wird. Damit ist besser ersichtlich, wie viel Daten noch in den individuellen Pool geschrieben werden können.

Ah, ok. Dann bin ich ja beruhigt. Macht auch Sinn..
 
Sorry... ich üben noch mit Forensoftware ;-)

Das bezieht sich auf die PGs und nicht auf den Speicherplatz. Die Anzahl PGs kannst du hier ausrechnen.

Heisst das im Umkehrschluss, dass ich die Anzahl PGs erhöhen sollte, da es bei Wegfall einer OSD zu dieser "undersized" Warnung kam?1

Von PVE 4.x auf PVE 5.x wurde die Anzeige des Speicherplatzes der Pools angepasst, da jetzt nicht mehr das Cluster Total, sondern der verfügbare/verbrauchte Speicherplatz des Pools angezeigt wird. Damit ist besser ersichtlich, wie viel Daten noch in den individuellen Pool geschrieben werden können.

Ah, ok. Dann bin ich ja beruhigt. Macht auch Sinn..
 
Heisst das im Umkehrschluss, dass ich die Anzahl PGs erhöhen sollte, da es bei Wegfall einer OSD zu dieser "undersized" Warnung kam?1
Mit 'ceph osd df' siehst du die Anzahl der PGs die mit jeder OSD verbunden sind. Die Anzahl darf nicht keiner als 32 und grösser als 200 sein, angestrebtes Ziel sind ~100 PGs auf jeder OSD. Damit das Ergebnis passt, kannst du mit dem PGcalc die PGs für dein Cluster ausrechnen. Ein erhöhen der PGs in einem Pool ist immer Möglich, ein verkleinern nicht.
 
Ok, dann mache ich mich nochmal auf die Suche nach der Begründung für die Anzahl der PGs per OSD.

Das "Ungleichgewicht" bei Anzahl der PGs preo OSD kann ich nicht irgendwie steuern? Von 94 bis 141 PGs per OSD bei gleicher Plattengröße ist da ja alles dabei...

root@proxmox:~# ceph osd df
ID CLASS WEIGHT REWEIGHT SIZE USE AVAIL %USE VAR PGS
0 hdd 0.44969 1.00000 465G 176G 289G 37.86 0.80 94
1 hdd 0.90430 1.00000 931G 351G 579G 37.78 0.80 190
7 hdd 0.90430 1.00000 931G 423G 507G 45.51 0.96 228
2 hdd 0.44969 1.00000 465G 218G 246G 46.97 1.00 118
3 hdd 0.44969 1.00000 465G 260G 205G 55.85 1.18 141
6 hdd 0.90430 1.00000 931G 473G 458G 50.81 1.08 253
4 hdd 0.44969 1.00000 465G 230G 234G 49.60 1.05 124
5 hdd 0.44969 1.00000 465G 255G 209G 54.93 1.16 137
8 hdd 0.90430 1.00000 931G 465G 465G 50.01 1.06 251
TOTAL 6053G 2856G 3197G 47.18

Gruß
Stefan
 
Das "Ungleichgewicht" bei Anzahl der PGs preo OSD kann ich nicht irgendwie steuern? Von 94 bis 141 PGs per OSD bei gleicher Plattengröße ist da ja alles dabei...
Zum einen sind im Cluster unterschiedlich große Platten verbaut, werden also unterschiedlich stark befüllt (weight) und zum anderen glaube ich sind das zu viele PGs für das kleine Cluster.
 

About

The Proxmox community has been around for many years and offers help and support for Proxmox VE, Proxmox Backup Server, and Proxmox Mail Gateway.
We think our community is one of the best thanks to people like you!

Get your subscription!

The Proxmox team works very hard to make sure you are running the best software and getting stable updates and security enhancements, as well as quick enterprise support. Tens of thousands of happy customers have a Proxmox subscription. Get yours easily in our online shop.

Buy now!