virsh connect to xen:///system fails: "error: internal error: Unexpected driver type 'Xen' opened" ?

PGNet Dev pgnet.dev at gmail.com
Mon May 4 16:33:47 UTC 2020


I'm setting up for libvirt remote access on a xend host.

On the host,

	xl info | egrep "release|xen_version"
		release                : 5.6.10-24.gde48f93-default
		xen_version            : 4.13.0_12-lp151.700
	systemctl --version
		systemd 234

I've installed

	rpm -qa libvirt-daemon-xen
		libvirt-daemon-xen-6.2.0-lp151.890.1.x86_64
	libvirtd --version
		libvirtd (libvirt) 6.2.0
	virsh --version
		6.2.0

Per

	https://libvirt.org/daemons.html

I've setup for use of modular daemons with systemd sockets, rather than monolithic libvirtd

	systemctl list-units | egrep " virt"
	  virtxend.service                    loaded active running   Virtualization xen daemon                                                                      
	  virtlockd.socket                    loaded active listening Virtual machine lock manager socket                                                            
	  virtlogd.socket                     loaded active listening Virtual machine log manager socket                                                             
	  virtnetworkd-admin.socket           loaded active listening Libvirt network admin socket                                                                   
	  virtnetworkd-ro.socket              loaded active listening Libvirt network local read-only socket                                                         
	  virtnetworkd.socket                 loaded active listening Libvirt network local socket                                                                   
	  virtnodedevd-admin.socket           loaded active listening Libvirt nodedev admin socket                                                                   
	  virtnodedevd-ro.socket              loaded active listening Libvirt nodedev local read-only socket                                                         
	  virtnodedevd.socket                 loaded active listening Libvirt nodedev local socket                                                                   
	  virtnwfilterd-admin.socket          loaded active listening Libvirt nwfilter admin socket                                                                  
	  virtnwfilterd-ro.socket             loaded active listening Libvirt nwfilter local read-only socket                                                        
	  virtnwfilterd.socket                loaded active listening Libvirt nwfilter local socket                                                                  
	  virtproxyd-admin.socket             loaded active listening Libvirt proxy admin socket                                                                     
	  virtproxyd-ro.socket                loaded active listening Libvirt proxy local read-only socket                                                           
	  virtproxyd.socket                   loaded active listening Libvirt proxy local socket                                                                     
	  virtsecretd-admin.socket            loaded active listening Libvirt secret admin socket                                                                    
	  virtsecretd-ro.socket               loaded active listening Libvirt secret local read-only socket                                                          
	  virtsecretd.socket                  loaded active listening Libvirt secret local socket                                                                    
	  virtstoraged-admin.socket           loaded active listening Libvirt storage admin socket                                                                   
	  virtstoraged-ro.socket              loaded active listening Libvirt storage local read-only socket                                                         
	  virtstoraged.socket                 loaded active listening Libvirt storage local socket                                                                   
	  virtxend-admin.socket               loaded active running   Libvirt libxl admin socket                                                                     
	  virtxend-ro.socket                  loaded active running   Libvirt libxl local read-only socket                                                           
	  virtxend.socket                     loaded active running   Libvirt libxl local socket                 

	/tree /run/libvirt/
		/run/libvirt/
		├── hostdevmgr
		├── libvirt-admin-sock
		├── libvirt-sock
		├── libvirt-sock-ro
		├── libxl
		│   ├── autostarted
		│   ├── Domain-0.xml
		│   └── driver.pid
		├── network
		│   ├── autostarted
		│   └── nwfilter.leases
		├── nodedev
		├── nwfilter
		├── nwfilter-binding
		├── qemu
		│   ├── autostarted
		│   └── slirp
		├── secrets
		├── storage
		│   └── autostarted
		├── virtlockd-sock
		├── virtlogd-sock
		├── virtnetworkd-admin-sock
		├── virtnetworkd-sock
		├── virtnetworkd-sock-ro
		├── virtnodedevd-admin-sock
		├── virtnodedevd-sock
		├── virtnodedevd-sock-ro
		├── virtnwfilterd-admin-sock
		├── virtnwfilterd-sock
		├── virtnwfilterd-sock-ro
		├── virtsecretd-admin-sock
		├── virtsecretd-sock
		├── virtsecretd-sock-ro
		├── virtstoraged-admin-sock
		├── virtstoraged-sock
		├── virtstoraged-sock-ro
		├── virtxend-admin-sock
		├── virtxend-sock
		└── virtxend-sock-ro


On the server, TLS certs are in place

	openssl version
		OpenSSL 1.1.1g  21 Apr 2020
	cat /etc/libvirt/libvirt.conf
		ca_file   = "/sec/ssl/CA/CA.CHAIN.crt.pem"
		cert_file = "/sec/ssl/libvirt/client.EC.crt.pem"
		key_file  = "/sec/ssl/libvirt/client.EC.key.pem"
	cat /etc/libvirt/virtproxyd.conf
		ca_file   = "/sec/ssl/CA/CA.CHAIN.crt.pem"
		cert_file = "/sec/ssl/libvirt/server.EC.crt.pem"
		key_file  = "/sec/ssl/libvirt/server.EC.key.pem"

On attempt to first _locally_ connect,

	virsh -c test:///default list sysinfo
		 Id   Name   State
		----------------------
		 1    test   running
	virsh -c test:///default sysinfo
		<sysinfo type='smbios'>
		  <bios>
		    <entry name='vendor'>LENOVO</entry>
		    <entry name='version'>G4ETA1WW (2.61 )</entry>
		    <entry name='date'>05/07/2014</entry>
		    <entry name='release'>2.61</entry>
		  </bios>
		</sysinfo>

but

	virsh -c xen:///system?socket=/var/run/libvirt/libvirt-sock
		error: failed to connect to the hypervisor
		error: internal error: Unexpected driver type 'Xen' opened

What's missing/incorrect in my config, causing the "Unexpected driver" error, and preventing the connect to local hypervisor?





More information about the libvirt-users mailing list