Wenn ich versuche, Remus zwischen zwei Maschinen einzurichten, erhalte ich einen Fehler in der Remus-Protokolldatei. Ich kann nicht verstehen, warum das passiert. Auf beiden Systemen laufen dieselben VMs, daher sollte ein Replikationsversuch kein Problem darstellen. Die Protokolldatei lautet wie folgt
Disk is not replicated: phy:/dev/loop0,xvda,w
Disk is not replicated: phy:/dev/loop1,xvdb,w
tc qdisc add dev vif1.0 ingress
RTNETLINK answers: File exists
tc filter add dev vif1.0 parent ffff: proto ip pref 10 u32 match u32 0 0 action
mirred egress redirect dev ifb0
RTNETLINK answers: No such file or directory
We have an error talking to the kernel
Traceback (most recent call last):
File "/usr/bin/remus", line 219, in <module>
run(cfg)
File "/usr/bin/remus", line 125, in run
bufs.append(BufferedNIC(vif))
File "/usr/lib64/python2.6/site-packages/xen/remus/device.py", line 326, in __init__
self.setup()
File "/usr/lib64/python2.6/site-packages/xen/remus/device.py", line 358, in setup
self.bufdev.install(self.vif)
File "/usr/lib64/python2.6/site-packages/xen/remus/device.py", line 184, in install
'dev %s' % (vif.dev, self.devname))
File "/usr/lib64/python2.6/site-packages/xen/remus/util.py", line 71, in runcmd
proc.returncode)
xen.remus.util.PipeException: tc failed (errmsg: RTNETLINK answers: No such file or directory
We have an error talking to the kernel): 2, No such file or directory
Der zum Abrufen dieser Datei verwendete Remus-Befehl lautet wie folgt:
remus -i 100 sles11-sp1-xm BackupMachineIP >/var/log/xen/domU-sles11-sp1-24-09-12.log 2>&1 &
BackupMachineIP wird als Name für die IP-Adresse des Sicherungsgeräts eingerichtet. Der Inhalt der XM-Liste und die Loopback-Geräteeinstellungen auf jedem Computer sind wie folgt:
xm-Liste
Primär:
Name ID Mem VCPUs State Time(s)
Domain-0 0 1036702 8 r----- 411617.9
sles11-sp1 512 4 0.0
sles11-sp1-xm 1 256 1 -b---- 77.0
sles11-sp2 512 4 0.0
sles11-sp2-xm 2 256 1 -b---- 62.0
Sekundär:
Name ID Mem VCPUs State Time(s)
Domain-0 0 1400 2 r----- 73.1
sles11-sp1-xm 1 256 1 -b---- 11.6
sles11-sp2-xm 2 256 1 -b---- 14.0
verliere
Primär:
/dev/loop0: [0808]:337772 (/tmp/base/sles11sp1/sles11sp1.img)
/dev/loop1: [0808]:337773 (/tmp/base/sles11sp1/swap)
/dev/loop2: [0808]:337779 (/tmp/base/sles11sp2/sles11sp2.img)
/dev/loop3: [0808]:337780 (/tmp/base/sles11sp2/swap)
Sekundär:
/dev/loop0: [0805]:2109411 (/tmp/base/sles11sp1/sles11sp1.img)
/dev/loop1: [0805]:2109412 (/tmp/base/sles11sp1/swap)
/dev/loop2: [0805]:1840010 (/tmp/base/sles11sp2/sles11sp2.img)
/dev/loop3: [0805]:1840012 (/tmp/base/sles11sp2/swap)
Antwort1
Wahrscheinlich ist das gespiegelte Kernelmodul in Ihrem Kernel nicht geladen. Normalerweise wird es nicht einmal mit dem Kernel kompiliert, Sie müssen es also kompilieren und laden. Ziemlich albern, dass RTNETLINK mit einem einfachen ENOENT (Keine solche Datei oder kein solches Verzeichnis) antwortet, wenn das Modul nicht geladen ist. Ich habe fast einen Tag gebraucht, um herauszufinden, warum es nicht funktioniert.