Proxmox 5.1 und Ceph 10.2.5?

Xyvran

Member
Oct 25, 2017
16
0
6
46
Hallo,

ich habe ein frisch installiertes Proxmox 5.1 am laufen (und in ein vorhandenes 5.0 Cluster hinzugefügt). Nun wollte ich das neue Feature in Ceph für direktes ansprechen eines EC Pools mal ausprobieren auf dem neuen 5.1 Host:

rbd create vm-152-disk-1' error: error adding image to directory: (95) Operation not supported (500)

Dann mal schnell in die Versionsnummer gehuscht:

Code:
proxmox-ve: 5.1-25 (running kernel: 4.13.4-1-pve)
pve-manager: 5.1-35 (running version: 5.1-35/722cc488)
pve-kernel-4.13.4-1-pve: 4.13.4-25
libpve-http-server-perl: 2.0-6
lvm2: 2.02.168-pve6
corosync: 2.4.2-pve3
libqb0: 1.0.1-1
pve-cluster: 5.0-15
qemu-server: 5.0-17
pve-firmware: 2.0-3
libpve-common-perl: 5.0-20
libpve-guest-common-perl: 2.0-13
libpve-access-control: 5.0-7
libpve-storage-perl: 5.0-16
pve-libspice-server1: 0.12.8-3
vncterm: 1.5-2
pve-docs: 5.1-12
pve-qemu-kvm: 2.9.1-2
pve-container: 2.0-17
pve-firewall: 3.0-3
pve-ha-manager: 2.0-3
ksm-control-daemon: 1.2-2
glusterfs-client: 3.8.8-1
lxc-pve: 2.1.0-2
lxcfs: 2.0.7-pve4
criu: 2.11.1-1~bpo90
novnc-pve: 0.6-4
smartmontools: 6.5+svn4324-1
zfsutils-linux: 0.7.2-pve1~bpo90

Und auf der Console:
ceph version 10.2.5 (c461ee19ecbc0c5c330aca20f7392c9a00730367)

Urgs? Doch kein Luminous?

Was habe ich falsch gemacht? Fehlt mir eine apt Quelle?

Grüße

X
 
Huhu zusammen,

was habt ihr denn für eine Ceph Version bei euch laufen? 12.2.1 oder auch wie ich die 10.2.5?

Grüße

X
 
Moin,

ne... vielleicht hab ich mich falsch ausgedrückt. Ich habe ein externes Ceph laufen mit 12.2.1 Die Proxmox Kiste soll nur als Client fungieren und mit dem Ceph quatschen.

Das funktioniert auch soweit, nur das auf dem Proxmox Server selbst die Version 10.2.5 drauf ist, anstatt Luminous.

Was sagt denn dein Proxmox Server, wenn du folgendes eingibst:
Code:
rbd --version

Bei mir steht dann folgendes:
Code:
root@compute210:~# rbd --version
ceph version 10.2.5 (c461ee19ecbc0c5c330aca20f7392c9a00730367)
 
Default sind Ceph packages aus dem Debian Stretch repo drin (10.x).

Um die aktuellen Ceph packages vom Proxmox Repo zu verwenden (12.2.x), einfach folgendes zusätzlich apt repo einbinden:

> echo "deb http://download.proxmox.com/debian/ceph-luminous stretch main" > /etc/apt/sources.list.d/ceph.list

und:

> apt update && apt dist-upgrade
 
Perfekt! Das Repository fehlte mir!

Und ich dachte, es wäre schon standardmäßig mit in Proxmox 5.1 drin.

Danke - es klappt!

Trotz der richtigen Version bekomme ich noch immer folgende Meldung, wenn ich eine Platte auf dem Ceph hinzufügen möchte:
Code:
Task viewer: VM 154 - Erstellen
Ausgabe
Status
Stopp
2017-10-27 11:25:42.142296 7fc1fbfff700 -1 librbd::image::CreateRequest: 0x562667373bf0 handle_add_image_to_directory: error adding image to directory: (95) Operation not supported
TASK ERROR: create failed - rbd create vm-154-disk-1' error: 2017-10-27 11:25:42.142296 7fc1fbfff700 -1 librbd::image::CreateRequest: 0x562667373bf0 handle_add_image_to_directory: error adding image to directory: (95) Operation not supported

Aktueller Versions Stand:
Code:
proxmox-ve: 5.1-25 (running kernel: 4.13.4-1-pve)
pve-manager: 5.1-36 (running version: 5.1-36/131401db)
pve-kernel-4.13.4-1-pve: 4.13.4-25
libpve-http-server-perl: 2.0-6
lvm2: 2.02.168-pve6
corosync: 2.4.2-pve3
libqb0: 1.0.1-1
pve-cluster: 5.0-15
qemu-server: 5.0-17
pve-firmware: 2.0-3
libpve-common-perl: 5.0-20
libpve-guest-common-perl: 2.0-13
libpve-access-control: 5.0-7
libpve-storage-perl: 5.0-16
pve-libspice-server1: 0.12.8-3
vncterm: 1.5-2
pve-docs: 5.1-12
pve-qemu-kvm: 2.9.1-2
pve-container: 2.0-17
pve-firewall: 3.0-3
pve-ha-manager: 2.0-3
ksm-control-daemon: 1.2-2
glusterfs-client: 3.8.8-1
lxc-pve: 2.1.0-2
lxcfs: 2.0.7-pve4
criu: 2.11.1-1~bpo90
novnc-pve: 0.6-4
smartmontools: 6.5+svn4324-1
zfsutils-linux: 0.7.2-pve1~bpo90

Habt ihr noch eine Idee?
 
Last edited:
Der Node sieht in meinen Augen perfekt aus:
Code:
root@compute210:~# ceph -v
ceph version 12.2.1 (1a629971a9bcaaae99e5539a3a43f800a297f267) luminous (stable)
 
Hmm... Ich sollte mal genauer lesen!

Da kommt der Ausschnitt:
Code:
  cluster:
    id:     661d1fa1-abfd-4850-997f-0f7fe9fed8f7
    health: HEALTH_WARN
            6686/21120931 objects misplaced (0.032%)
            Degraded data redundancy: 1 pg unclean

  services:
    mon: 3 daemons, quorum cn1,cn2,cn3
    mgr: cn2(active), standbys: cn3, cn1
    mds: fshh-1/1/1 up  {0=cb1=up:active}, 1 up:standby-replay
    osd: 37 osds: 37 up, 37 in; 1 remapped pgs
    rgw: 4 daemons active

  data:
    pools:   24 pools, 2168 pgs
    objects: 6875k objects, 21577 GB
    usage:   65694 GB used, 137 TB / 201 TB avail
    pgs:     6686/21120931 objects misplaced (0.032%)
             2167 active+clean
             1    active+remapped+backfilling

  io:
    client:   44291 kB/s rd, 9374 kB/s wr, 400 op/s rd, 103 op/s wr
    recovery: 17338 kB/s, 4 objects/s
 
Hat noch jemand eine Idee, warum ich weiterhin die Meldung bekomme:
Code:
rbd create vm-155-disk-1' error: 2017-10-30 11:31:57.916760 7f6550ff9700 -1 librbd::image::CreateRequest: 0x557d795cbbf0 handle_add_image_to_directory: error adding image to directory: (95) Operation not supported (500)

Versionen sollten jetzt stimmen oder wird der Befehl von irgend einem Cluster Knoten aus gemacht und nicht da wo die VM liegt? Dann könnte es bei mir noch ein hausgemachtes Problem sein, da ich noch ein Mix von 5.0 und 5.1 in meinem Cluster besitze.
 
Ein 'ceph versions' zeigt dir alle Ceph Versionen in einem Cluster an, damit lässt sich leicht prüfen ob unterschiedliche Versionen vorhanden sind. Der Pool den du beim 'rbd create' her nimmst, ist der auch ein EC Pool (wie sieht dein rbd Befehl aus)?
 
Der Befehl sah so aus:
Code:
rbd create --size 25T --data-pool proxmox-eck10m4 proxmox-images/vm-152-disk-2
Das Problem danach war, das Image Features dann auf einmal nicht mehr stimmten. Nach dem rausnehmen der ganzen angemeckerten Features konnte ich zwar das Image in der VM laden, aber ich konnte nichts reinschreiben.

Langer Weg... aber ich musste zu einem Ziel kommen und habe einfach wie früher ein Ceph Cache aktiviert vor dem Erasure Pool und alles war gut.

Ja... ist nicht wirklich eine Lösung, sondern eher eine Umschiffung / Aufschieben des Problems.
 
Vermutlich ist ein Punkt die client_compatibility Einstellung des Cluster, da das EC für RDB Feature sehr frisch ist, aber das Cluster sicherlich ältere Clients auch bedienen muss.
 
Jepp genau! Du triffst den Nagel auf den Kopf! Und in dem Cluster fasse ich diese Werte nicht mehr an!