Bug 1325503

Summary: virtlogd is not started/enabled on fresh libvirt install
Product: Red Hat Enterprise Linux 7 Reporter: Phil Sutter <psutter>
Component: redhat-releaseAssignee: Jan Blazek <jblazek>
Status: CLOSED ERRATA QA Contact: Release Test Team <release-test-team-automation>
Severity: urgent Docs Contact:
Priority: unspecified    
Version: 7.3CC: abologna, agedosier, berrange, clalancette, dyuan, extras-qa, fjin, gscrivan, itamar, jblazek, jdenemar, jforbes, johannbg, laine, libvirt-maint, lnykryn, mbanas, mkovarik, motoskov, msekleta, muadda, mzhan, rbalakri, sgallagh, s, systemd-maint-list, systemd-maint, veillard
Target Milestone: rcKeywords: Regression, Reopened
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: redhat-release-server-7.3-6.el7 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: 1290357 Environment:
Last Closed: 2016-11-03 22:05:30 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On: 1290357, 1291940, 1372576    
Bug Blocks: 1318902, 1374978    

Description Phil Sutter 2016-04-09 09:59:30 UTC
+++ This bug was initially created as a clone of Bug #1290357 +++

Hi,

After provisioning a Beaker machine with a nightly RHEL7.3 and following this[1] guide to deploy an OpenStack allinone setup, I couldn't instantiate a VM. Turned out the issue was a missing virtlogd process which was not started/enabled by packstack or whatever instance is responsible.

Same problem exists for Fedora (bug 1290357), and people seem to be undecided whether libvirt should enable and start virtlogd after installation or qemu.conf should be changed to not require virtlogd. Another alternative seems to be socket activation, so virtlogd starts when it's needed.

I haven't found a ticket for RHEL7, therefore I'm cloning the Fedora one here. Also I'm not sure which is the best solution and which component is ultimately responsible, so filing for libvirt is merely a wild guess (sorry if I'm wrong). But I'm quite sure that just having a customer portal entry[2] suggesting to start and enable virtlogd to fix things up is not ideal when it comes to user experience - especially since the guide in [1] does not mention it.

Thanks, Phil

[1] https://access.redhat.com/products/red-hat-enterprise-linux-openstack-platform/get-started
[2] https://access.redhat.com/solutions/1443193

Comment 2 Jiri Denemark 2016-06-07 15:13:39 UTC
Moving to systemd to match the upstream bug.

Comment 3 Lukáš Nykrýn 2016-06-08 07:48:03 UTC
Presets are owned by redhat-release-* packages

Comment 4 Jiri Denemark 2016-08-02 14:48:17 UTC
I'm setting a regression keyword, since libvirt doesn't work as expected due to this bug in default setup.

Comment 6 Andrea Bolognani 2016-08-05 14:53:00 UTC
Fixing this should just be a matter of adding

  enable virtlogd.socket

to

  /usr/lib/systemd/system-preset/90-default.preset

just like Fedora did.

Comment 8 Michal Kovarik 2016-08-16 12:39:39 UTC
Verified on redhat-release-server-7.3-6.el7. 'enable virtlogd.socket' is added to/usr/lib/systemd/system-preset/90-default.preset

Comment 9 Fangge Jin 2016-09-02 03:00:31 UTC
Hi Jan

My guest still can't start up due to error "Failed to connect socket to '/var/run/libvirt/virtlogd-sock'" after this fix. 

Could you help to have a look? Thank you!

The steps are:
1. Install libvirt packages on host freshly
# yum install libvirt-*

2. # systemctl start libvirtd

3. # virsh start rhel7.3-0817
error: Failed to start domain rhel7.3-0817
error: Failed to connect socket to '/var/run/libvirt/virtlogd-sock': No such file or directory

4. I checked 90-default.preset file:
# tail -4 /usr/lib/systemd/system-preset/90-default.preset 
# virtlog.service is sometimes used by VMs started by libvirt.service
# Enable virtlog.socket to have it socket activated
# https://bugzilla.redhat.com/show_bug.cgi?id=1325503
enable virtlogd.socket

5. virtlogd.socket is inactive:
# systemctl status virtlogd.socket
● virtlogd.socket - Virtual machine log manager socket
   Loaded: loaded (/usr/lib/systemd/system/virtlogd.socket; enabled; vendor preset: enabled)
   Active: inactive (dead)
   Listen: /var/run/libvirt/virtlogd-sock (Stream)

Comment 10 Michal Kovarik 2016-09-02 06:23:21 UTC
JinFangge, I reported bug 1372576 with issue that you described in comment 9.

Comment 12 errata-xmlrpc 2016-11-03 22:05:30 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://rhn.redhat.com/errata/RHEA-2016-2143.html