Hello,
I'm working on a python application that will manage multiple remote
libvirt hypervisors. I've been using the test:///default uri for
single-hypervisor tests, and it works great.
I'd like to simulate connecting to two different remote hypervisors,
however, in my testing so far it appears that multiple connections to the
test:///default uri just look like different connections to the same
hypervisor. Here's what I tried :
conn_one = libvirt.open('test:///default')
<build and start some domains>
one_vms = conn_one.listAllDomains(0)
for x in one_vms:
print(f"The vm in set one is {x.name()}")
<get list of all the domains I just built>
conn_two = libvirt.open('test:///default')
<build and start some different domains>
two_vms = conn_two.listAllDomains(0)
for z in two_vms:
print(f"The vm in set one is {z.name()}")
<get list of ALL domains including those created with conn_one, not just
those created using the conn_two instance>
What I would like is to be able to spin up two completely independent
instances of the test driver so that it can simulate two different
hypervisors/instances of libvirtd.
Is that possible?
Thanks,
Tom
--
-----------------------------------------------------------------------------
Tom Ammon
M: (737) 400-9042
thomasammon at gmail.com
-----------------------------------------------------------------------------
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
<http://listman.redhat.com/archives/libvirt-users/attachments/20220103/c7cfef00/attachment.htm>
Daniel P. Berrangé
2022-Jan-04 10:55 UTC
simulating multiple hypervisors with the test driver
On Mon, Jan 03, 2022 at 09:06:35PM -0600, Tom Ammon wrote:> Hello, > > I'm working on a python application that will manage multiple remote > libvirt hypervisors. I've been using the test:///default uri for > single-hypervisor tests, and it works great. > > I'd like to simulate connecting to two different remote hypervisors, > however, in my testing so far it appears that multiple connections to the > test:///default uri just look like different connections to the same > hypervisor. Here's what I tried :Yes, the test:///default URI is shared process-global state.> What I would like is to be able to spin up two completely independent > instances of the test driver so that it can simulate two different > hypervisors/instances of libvirtd.Pass in a path to a custom XML file for the connection eg: test:///path/to/checkout/of/libvirt.git/examples/xml/test/testnode.xml every instance of a file base URL will be unique. See this example file for guidance on how to write the XML to pre-populate arbitrary resources Regards, Daniel -- |: https://berrange.com -o- https://www.flickr.com/photos/dberrange :| |: https://libvirt.org -o- https://fstop138.berrange.com :| |: https://entangle-photo.org -o- https://www.instagram.com/dberrange :|