summary refs log tree commit diff stats
path: root/results/classifier/zero-shot/118/all/1192499
blob: 7e3d1d001d901f5b25bff041007a2088b0a005e8 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
permissions: 0.941
graphic: 0.939
debug: 0.929
virtual: 0.927
performance: 0.926
semantic: 0.925
architecture: 0.921
vnc: 0.920
register: 0.920
hypervisor: 0.917
boot: 0.916
assembly: 0.915
arm: 0.912
KVM: 0.911
device: 0.910
kernel: 0.910
peripherals: 0.900
network: 0.897
PID: 0.895
TCG: 0.892
socket: 0.891
risc-v: 0.889
ppc: 0.888
x86: 0.885
VMM: 0.883
files: 0.882
user-level: 0.881
mistranslation: 0.850
i386: 0.785

virsh migration copy-storage-all  fails with "Unable to read from monitor: Connection reset by peer"

virsh migration copy-storage-all  fails with "Unable to read from monitor: Connection reset by peer" and shut downs the guest on the source host.

Kernel Version:  3.10.0-rc5+

Libvirt Version: 1.0.6

Qemu Version: 1.5.50

Steps to reproduce the issue:
----------------------------------------
1. Created the qemu-img create -f qcow2 vm.qcow2 11G on the destination host which is same as the source.
2. Started the guest on the source
3. Started the vncdisplay to monitor the guest
4. Initiated the migration "virsh migrate --live VM1 qemu+ssh://host-ip/system tcp://host-ip --verbose --copy-storage-all"
5. It started the copying the storage from souce to destination (conitinously monitored it was growing)
6. Guest on the destination was paused and was running on the source
7. At some point the VM on the source got shutdown and migration failed with "Unable to read from monitor: Connection reset by peer"

Attached the libvirt debug logs.

The debug logs shows : 

2013-06-19 08:43:12.253+0000: 4026: debug : virEventPollInterruptLocked:716 : Interrupting
2013-06-19 08:43:12.253+0000: 4026: debug : virEventPollAddTimeout:248 : EVENT_POLL_ADD_TIMEOUT: timer=1 frequency=0 cb=0x7fe930baa960 opaque=(nil) ff=(nil)

Note: The virsh live migration works fine with nfs storage from source to destination and vice versa.
With libvirt 1.0.5 and qemu 1.5 also we were facing the same issue, but with that even "Live migration with nfs also was not working".

Guest XML:
----------------

<domain type='kvm'>
  <name>VM1</name>
  <uuid>47feb0e1-0c23-9be9-da12-2ead34864de2</uuid>
  <memory unit='KiB'>4096000</memory>
  <currentMemory unit='KiB'>2048000</currentMemory>
  <vcpu placement='auto'>1</vcpu>
  <numatune>
    <memory mode='strict' nodeset='0'/>
  </numatune>
  <os>
    <type arch='x86_64' machine='pc-i440fx-1.5'>hvm</type>
    <boot dev='hd'/>
  </os>
  <features>
    <acpi/>
    <apic/>
    <pae/>
  </features>
  <clock offset='utc'/>
  <on_poweroff>destroy</on_poweroff>
  <on_reboot>restart</on_reboot>
  <on_crash>restart</on_crash>
  <devices>
    <emulator>/usr/local/bin/qemu-system-x86_64</emulator>
    <disk type='file' device='disk'>
      <driver name='qemu' type='qcow2' cache='none'/>
      <source file='/home/images/VM1.qcow2'/>
      <target dev='hda' bus='ide'/>
      <address type='drive' controller='0' bus='0' target='0' unit='0'/>
    </disk>
    <disk type='block' device='cdrom'>
      <driver name='qemu' type='raw'/>
      <target dev='hdc' bus='ide'/>
      <readonly/>
      <address type='drive' controller='0' bus='1' target='0' unit='0'/>
    </disk>
    <controller type='usb' index='0'>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x2'/>
    </controller>
    <controller type='ide' index='0'>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x1'/>
    </controller>
    <controller type='pci' index='0' model='pci-root'/>
    <interface type='network'>
      <mac address='52:54:00:9d:cf:bb'/>
      <source network='default'/>
      <model type='rtl8139'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/>
    </interface>
    <serial type='pty'>
      <target port='0'/>
    </serial>
    <console type='pty'>
      <target type='serial' port='0'/>
    </console>
    <input type='mouse' bus='ps2'/>
    <graphics type='vnc' port='-1' autoport='yes' listen='127.0.0.1'>
      <listen type='address' address='127.0.0.1'/>
    </graphics>
    <video>
      <model type='cirrus' vram='9216' heads='1'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0'/>
    </video>
    <memballoon model='virtio'>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x05' function='0x0'/>
    </memballoon>
  </devices>
  <seclabel type='none' model='selinux'/>
</domain>



Thanks for submitting this bug.  I can' t reproduce it with an empty image (sitting at cd boot menu).

What is the underlying fs (/home/images) on both source and destination?

Could you run 'apport-collect 1192499' on the destination host?

Oh, actually I notice you have

/usr/local/bin/qemu-system-x86_64

listed as the emulator in the .xml.  That is not the qemu-system-x86_64 shipped with the qemu-system-x86 package.  Does switching that for 

    <emulator>/usr/bin/qemu-system-x86_64</emulator>


and see if that helps matters?

We tried with   <emulator>/usr/bin/qemu-system-x86_64</emulator> and we are facing the same issue. 

For both source and destination the fs is ext4. 

We are using fedora base, hence I have attached the sosreport of both source and destination.



On 06/29/2013 12:15 AM, Serge Hallyn wrote:
> Thanks for submitting this bug.  I can' t reproduce it with an empty
> image (sitting at cd boot menu).
>
> What is the underlying fs (/home/images) on both source and destination?

For both source and destination the fs is ext4.

>
> Could you run 'apport-collect 1192499' on the destination host?
We are using fedora base, hence I have attached the sosreport of both 
source and destination in the bug.
>
> Oh, actually I notice you have
>
> /usr/local/bin/qemu-system-x86_64
>
> listed as the emulator in the .xml.  That is not the qemu-system-x86_64
> shipped with the qemu-system-x86 package.  Does switching that for
>
>      <emulator>/usr/bin/qemu-system-x86_64</emulator>

We tried with <emulator>/usr/bin/qemu-system-x86_64</emulator> and we 
are facing the same issue.
>
> and see if that helps matters?
>
> ** Changed in: libvirt (Ubuntu)
>         Status: New => Incomplete
>
Thanks,
Shastri



Hi,

I'm confused - what do you mean by you are using a fedora base?  Are you talking about the VM, or the destination host?  If the destination host, then (a) is it identical to the source host, and either way (b) exactly how did you set up the hosts with ubuntu packages?

I am sorry.

Host Kernel : 3.10.0-rc5+ [upstream kernel fedora base], both the source and destination host are the same.

We test the upstream kernel, qemu and libvirt. We don't have ubuntu.


> I am sorry.
> 
> Host Kernel : 3.10.0-rc5+ [upstream kernel fedora base], both the source
> and destination host are the same.
> 
> We test the upstream kernel, qemu and libvirt. We don't have ubuntu.

Oh, I see - then please see http://libvirt.org/bugs.html (specifically
"General libvirt bug reports") for where to file upstream bug reports.


Moving to qemu component as qemu is crashing based on the inputs from Michal Privoznik

Bugzilla : Bug 979411 - virsh migration copy-storage-all fails with "Unable to read from monitor: Connection reset by peer"










The destination VM's log says:

  qemu: warning: error while loading state section id 1

This indicates that either there was an error on the destination while loading state or the migration stream got out of sync.

Please check that QEMU on source and destination are identical.  If you are running different versions of QEMU on source and destination this could be the cause.

Try with qemu.git/master and a simple QEMU command-line (without libvirt):

  qemu-system-x86_64 -machine pc-i440fx-1.5,accel=kvm -m 4000 \
      -drive file=/home/images/rhel64-64.qcow2,if=ide,format=qcow2,cache=none

Use the same command-line on the destination but also add "-incoming tcp::1234".  To start the migrate on the source, run "migrate -b tcp:<destination-ip>:1234" in the QEMU monitor.

If the failure can be reproduce on qemu.git/master in this way it will be easier to debug.

I will be away next week and therefore unable to look into this more.

Thanks, I ll work on this and update it.

On 07/05/2013 01:52 PM, Stefan Hajnoczi wrote:
> The destination VM's log says:
>
>    qemu: warning: error while loading state section id 1
>
> This indicates that either there was an error on the destination while
> loading state or the migration stream got out of sync.
>
> Please check that QEMU on source and destination are identical.  If you
> are running different versions of QEMU on source and destination this
> could be the cause.
>
> Try with qemu.git/master and a simple QEMU command-line (without
> libvirt):
>
>    qemu-system-x86_64 -machine pc-i440fx-1.5,accel=kvm -m 4000 \
>        -drive file=/home/images/rhel64-64.qcow2,if=ide,format=qcow2,cache=none
>
> Use the same command-line on the destination but also add "-incoming
> tcp::1234".  To start the migrate on the source, run "migrate -b tcp
> :<destination-ip>:1234" in the QEMU monitor.
I tried this "migrate -b tcp :<destination-ip>:1234" comes out and gives 
me the qemu prompt [ I mean it doesn't wait till the migration 
completes] and also on the destination the image is not growing, the 
status shows paused.

~Shastri
>
> If the failure can be reproduce on qemu.git/master in this way it will
> be easier to debug.
>
> I will be away next week and therefore unable to look into this more.
>



> "migrate -b tcp :<destination-ip>:1234"

There should be no space between tcp and the rest of the connection details:

migrate -b tcp:<destination-ip>:1234

Is there still something left to do here, or could we close this ticket nowadays?

There hasn't been a reply to my question in the last comment within
months, so I assume nobody cares about this anymore. So I'm closing this
ticket now...

Created attachment 766573
Source-migrate-logs

Description of problem:

virsh migration copy-storage-all fails with "Unable to read from monitor: Connection reset by peer" and shut downs the guest on the source host.

Kernel Version: 3.10.0-rc5+

Libvirt Version: 1.0.6

Qemu Version: 1.5.50

Steps to Reproduce:

1. Created the qemu-img create -f qcow2 vm.qcow2 11G on the destination host which is same as the source.
2. Started the guest on the source
3. Started the vncdisplay to monitor the guest
4. Initiated the migration "virsh migrate --live VM1 qemu+ssh://host-ip/system tcp://host-ip --verbose --copy-storage-all"
5. It started the copying the storage from souce to destination (conitinously monitored it was growing)
6. Guest on the destination was paused and was running on the source
7. At some point the VM on the source got shutdown and migration failed with "Unable to read from monitor: Connection reset by peer"

Attached the libvirt debug logs.

The debug logs shows :

2013-06-19 08:43:12.253+0000: 4026: debug : virEventPollInterruptLocked:716 : Interrupting
2013-06-19 08:43:12.253+0000: 4026: debug : virEventPollAddTimeout:248 : EVENT_POLL_ADD_TIMEOUT: timer=1 frequency=0 cb=0x7fe930baa960 opaque=(nil) ff=(nil)

Note: The virsh live migration works fine with nfs storage from source to destination and vice versa.
With libvirt 1.0.5 and qemu 1.5 also we were facing the same issue, but with that even "Live migration with nfs also was not working".

Guest XML:
----------------

<domain type='kvm'>
  <name>VM1</name>
  <uuid>47feb0e1-0c23-9be9-da12-2ead34864de2</uuid>
  <memory unit='KiB'>4096000</memory>
  <currentMemory unit='KiB'>2048000</currentMemory>
  <vcpu placement='auto'>1</vcpu>
  <numatune>
    <memory mode='strict' nodeset='0'/>
  </numatune>
  <os>
    <type arch='x86_64' machine='pc-i440fx-1.5'>hvm</type>
    <boot dev='hd'/>
  </os>
  <features>
    <acpi/>
    <apic/>
    <pae/>
  </features>
  <clock offset='utc'/>
  <on_poweroff>destroy</on_poweroff>
  <on_reboot>restart</on_reboot>
  <on_crash>restart</on_crash>
  <devices>
    <emulator>/usr/local/bin/qemu-system-x86_64</emulator>
    <disk type='file' device='disk'>
      <driver name='qemu' type='qcow2' cache='none'/>
      <source file='/home/images/VM1.qcow2'/>
      <target dev='hda' bus='ide'/>
      <address type='drive' controller='0' bus='0' target='0' unit='0'/>
    </disk>
    <disk type='block' device='cdrom'>
      <driver name='qemu' type='raw'/>
      <target dev='hdc' bus='ide'/>
      <readonly/>
      <address type='drive' controller='0' bus='1' target='0' unit='0'/>
    </disk>
    <controller type='usb' index='0'>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x2'/>
    </controller>
    <controller type='ide' index='0'>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x1'/>
    </controller>
    <controller type='pci' index='0' model='pci-root'/>
    <interface type='network'>
      <mac address='52:54:00:9d:cf:bb'/>
      <source network='default'/>
      <model type='rtl8139'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/>
    </interface>
    <serial type='pty'>
      <target port='0'/>
    </serial>
    <console type='pty'>
      <target type='serial' port='0'/>
    </console>
    <input type='mouse' bus='ps2'/>
    <graphics type='vnc' port='-1' autoport='yes' listen='127.0.0.1'>
      <listen type='address' address='127.0.0.1'/>
    </graphics>
    <video>
      <model type='cirrus' vram='9216' heads='1'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0'/>
    </video>
    <memballoon model='virtio'>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x05' function='0x0'/>
    </memballoon>
  </devices>
  <seclabel type='none' model='selinux'/>
</domain>

Can you provide the destination debug logs? Esp. content of /var/log/libvirt/qemu/VM1.log as there's supposed to be the reason why qemu died.

Created attachment 766578
Source Logs

Created attachment 766579
Destination Logs

From the VM1_dest.log:

...
Completed 97 %
Completed 98 %
Completed 99 %
qemu: warning: error while loading state section id 1
load of migration failed

So the qemu is unable to migrate itself. Therefore I think this is actually a qemu bug.
On the other hand, I wonder why the guest on the source is shut down. There's no sign of that in the logs.

When the migration fails the guest gets shutdown on the source.

[root@9 images]# virsh list --all
 Id    Name                           State
----------------------------------------------------
 5     VM1                     running

[root@9 images]# virsh migrate --live rhel64-64 qemu+ssh:/IP/system tcp://IP --verbose --copy-storage-all
 
Migration: [ 93 %]error: Unable to read from monitor: Connection reset by peer


At the destination:

[root@9 images]# virsh list --all
 Id    Name                           State
----------------------------------------------------
 -     VM1                      shut off

[root@destination]# virsh list --all
 Id    Name                           State
----------------------------------------------------
 16    VM1                      paused

[root@destination]# virsh list --all
 Id    Name                           State
----------------------------------------------------

Attached the SOS report of the Source and Destination machines.

Created attachment 767310
source sos

Created attachment 767311
Destination sos

Unfortunately, the libvirtd.log is missing. I've written some guide as well:

http://wiki.libvirt.org/page/DebugLogs

Please set the correct debug logs, reproduce and attach the new reports.

Attached libvirtd logs of both Source and Destination

Created attachment 767340
source libvirtd log

Created attachment 767342
Destination libvird logs

From the *source* libvirtd log:

2013-07-01 11:30:29.582+0000: 3164: debug : virObjectRef:297 : OBJECT_REF: obj=0x7fe97000cb00
2013-07-01 11:30:29.582+0000: 3164: error : qemuMonitorIORead:511 : Unable to read from monitor: Connection reset by peer
2013-07-01 11:30:29.582+0000: 3164: debug : qemuMonitorIO:644 : Error on monitor Unable to read from monitor: Connection reset by peer
2013-07-01 11:30:29.582+0000: 3164: debug : virObjectUnref:260 : OBJECT_UNREF: obj=0x7fe97000cb00
2013-07-01 11:30:29.582+0000: 3165: debug : qemuMonitorSend:905 : Send command resulted in error Unable to read from monitor: Connection reset by peer
2013-07-01 11:30:29.582+0000: 3164: debug : qemuMonitorIO:678 : Triggering error callback
2013-07-01 11:30:29.582+0000: 3164: debug : qemuProcessHandleMonitorError:351 : Received error on 0x7fe9881337f0 'rhel64-64'

This means, qemu died unexpectedly. The qemu error message should be in /var/log/libvirt/qemu/rhel64-64.log on the source.

Since this is a qemu bug (probably fixed already) I'm closing this one. If you disagree please reopen.