Closed akamuraaa closed 1 week ago
very appreciated :) im trying get my company to buy some licences, to use xpipe in out environment. i use it already at home and it is very helpful for some basic tasks.
If your company would try out everything first, you can mail me at crschnick@xpipe.io and I can send you free evaluation licenses
Since I have not used the Red Hat/Oracle solutions before, would they also be covered if xpipe would support the virsh CLI or do they have their own?
I only use the Oracle Linux Virtualization Manager (that's what its called :) i can't tell much, but try to do my best. I think they use aa bit of virsh cli, but they also have there own. Both are base on oVirt. So most things that work with oVirt likely work with OLVM too. Red Hat Virtualization is more abstracted from oVirt than OLVM. So also things might work on that, but less likely. Sadly in only have used the Webui, so i don't in which way you can use the virsh cli for OLVM and RHV. It might be better if you look into oVirt for the required commands.
I can definitely add support for KVM for xpipe 13. But these other solutions like OLVM don't have a good CLI in the form of ovirt. I think this is going to be difficult.
I've seen that you're from Germany 😄 If that doesn't work quickly, it's no problem at all. I don't know much about programming, but I might be able to find some documentation from Oracle/Red Hat that could help you. They are often behind a paywall. The general Linux ssh support is actually enough.
Ja, ich komme auch aus Deutschland! Ich versuche aber die GitHub issues auf Englisch zu halten.
The documentation isn't really needed, I think I found enough information about them. It's just that there is no real good command-line interface that xpipe could use to implement all of its functionality for them, if you for example compare it to KVM. I guess they have their own proprietary solutions for managing them and didn't really care for good support for external tools. So KVM is definitely possible, the others probably not.
I'm thinking which license KVM support should require. Do people use KVM in their homelab or is this like only something that more professional users would use?
As far as i know, "professionals" use the licensed products like Red Hat Virtualization, oVirt, etc. On every Enterprise Linux / Red Hat Derivative is an WebGUI called Cockpit, where there is an Addon for KVM. This is likely used in a homelab. On the selfhost subreddit i did only see Proxmox (which is also based on KVM). I don't think anyone is using KVM plain over terminal. So to conclude that, i think KVM is used in a homelab in a more basic version.
Alright, good to know. I hope to release a test build for KVM support soon
You can now test this in https://github.com/xpipe-io/xpipe-ptb
If you do so, feel free to share any feedback you have. I only used it with my basic KVM setup here, so I did not cover all possible cases and there might be areas that I missed.
I tested it with my homeserver (AlmaLinux with cockpit-machines) xpipe detected both vms But only when they where started and not when they where down.
If this also works on Oracle Linux Virtualization Manager, i have to test later. :)
What if you click on the toggle on the domains, that is there to show all VMs that are not in the running state
yes that worked.
hello, i did further testing in my homelab. starting the vm over xpipe worked fine. but interacting with the vm itself didn't worked. i got following error message: java.lang.IllegalStateException: Unable to determine external IP address for vm
the vm has an direct attached network, so the internal address is from the network/dhcp, so i think it doesn't detect the right ip. i can connect over ssh just fine. i tested it with an fedora vm and an kubuntu vm.
What is the output of virsh domifaddr <domain>
for your VMs?
Also, do you have the QEMU guest agent installed or not?
virsh domifaddr shows nothing. i found out why. the direct attached interface does not show in the list of virsh, so i can't detect the ip. when i change the interface to an nat or bridge to lan, it can't detect the ip an connect to the vm. yes the qemu guest agent is installed on all my vms.
in the xml of the vm it's set like this:
<interface type='direct'>
<mac address='52:54:00:a2:a0:68'/>
<source dev='enp34s0' mode='bridge'/>
<target dev='macvtap9'/>
<model type='virtio'/>
<alias name='net0'/>
<address type='pci' domain='0x0000' bus='0x01' slot='0x00' function='0x0'/>
</interface>
i found out that you can get the ip over
# virsh guestinfo fedorakde
[...]
if.1.addr.0.addr : 192.168.178.135
[...]
i needed the direct interface because my fritzbox can't handle other ip ranges. so if i want to connect to my vm over there ip, i have to use the ip range of the fritzbox.
What is the full output of virsh guestinfo
for all your vms? That way I can maybe see how to detect this because my setup doesn't have this
ok, so the fedorakde vm is setup with the direct interface and the kubuntu vm is setup with nat interface: [root@lars-server ~]# virsh guestinfo fedorakde user.count : 0 os.id : fedora os.name : Fedora Linux os.pretty-name : Fedora Linux 40 (KDE Plasma) os.version : 40 (KDE Plasma) os.version-id : 40 os.machine : x86_64 os.variant : KDE Plasma os.variant-id : kde os.kernel-release : 6.11.6-200.fc40.x86_64 os.kernel-version : #1 SMP PREEMPT_DYNAMIC Fri Nov 1 16:09:34 UTC 2024 timezone.name : CET timezone.offset : 3600 hostname : fedora fs.count : 3 fs.0.name : vda3 fs.0.mountpoint : / fs.0.fstype : btrfs fs.0.total-bytes : 52222279680 fs.0.used-bytes : 5601959936 fs.0.disk.count : 1 fs.0.disk.0.alias : vda fs.0.disk.0.device : /dev/vda3 fs.1.name : vda3 fs.1.mountpoint : /home fs.1.fstype : btrfs fs.1.total-bytes : 52222279680 fs.1.used-bytes : 5601959936 fs.1.disk.count : 1 fs.1.disk.0.alias : vda fs.1.disk.0.device : /dev/vda3 fs.2.name : vda2 fs.2.mountpoint : /boot fs.2.fstype : ext4 fs.2.total-bytes : 950239232 fs.2.used-bytes : 384303104 fs.2.disk.count : 1 fs.2.disk.0.alias : vda fs.2.disk.0.device : /dev/vda2 disk.count : 5 disk.0.name : /dev/vda1 disk.0.partition : ja disk.0.dependency.count: 1 disk.0.dependency.0.name: /dev/vda disk.1.name : /dev/vda3 disk.1.partition : ja disk.1.dependency.count: 1 disk.1.dependency.0.name: /dev/vda disk.2.name : /dev/vda2 disk.2.partition : ja disk.2.dependency.count: 1 disk.2.dependency.0.name: /dev/vda disk.3.name : /dev/vda disk.3.partition : nein disk.3.alias : vda disk.4.name : /dev/zram0 disk.4.partition : nein if.count : 2 if.0.name : lo if.0.hwaddr : 00:00:00:00:00:00 if.0.addr.count : 2 if.0.addr.0.type : ipv4 if.0.addr.0.addr : 127.0.0.1 if.0.addr.0.prefix : 8 if.0.addr.1.type : ipv6 if.0.addr.1.addr : ::1 if.0.addr.1.prefix : 128 if.1.name : enp1s0 if.1.hwaddr : 52:54:00:a2:a0:68 if.1.addr.count : 1 if.1.addr.0.type : ipv4 if.1.addr.0.addr : 192.168.178.135 if.1.addr.0.prefix : 24
[root@lars-server ~]# virsh guestinfo kubuntu user.count : 0 os.id : ubuntu os.name : Ubuntu os.pretty-name : Ubuntu 24.10 os.version : 24.10 (Oracular Oriole) os.version-id : 24.10 os.machine : x86_64 os.kernel-release : 6.11.0-9-generic os.kernel-version : #9-Ubuntu SMP PREEMPT_DYNAMIC Mon Oct 14 13:19:59 UTC 2024 timezone.name : CET timezone.offset : 3600 hostname : kubuntu fs.count : 15 fs.0.name : vda1 fs.0.mountpoint : / fs.0.fstype : ext4 fs.0.total-bytes : 24877711360 fs.0.used-bytes : 9590919168 fs.0.disk.count : 1 fs.0.disk.0.alias : vda fs.0.disk.0.device : /dev/vda1 fs.1.name : loop0 fs.1.mountpoint : /snap/core22/1621 fs.1.fstype : squashfs fs.1.total-bytes : 77856768 fs.1.used-bytes : 77856768 fs.1.disk.count : 0 fs.2.name : loop1 fs.2.mountpoint : /snap/bare/5 fs.2.fstype : squashfs fs.2.total-bytes : 131072 fs.2.used-bytes : 131072 fs.2.disk.count : 0 fs.3.name : loop2 fs.3.mountpoint : /snap/firefox/5014 fs.3.fstype : squashfs fs.3.total-bytes : 284950528 fs.3.used-bytes : 284950528 fs.3.disk.count : 0 fs.4.name : loop4 fs.4.mountpoint : /snap/firmware-updater/147 fs.4.fstype : squashfs fs.4.total-bytes : 11665408 fs.4.used-bytes : 11665408 fs.4.disk.count : 0 fs.5.name : loop6 fs.5.mountpoint : /snap/gtk-common-themes/1535 fs.5.fstype : squashfs fs.5.total-bytes : 96206848 fs.5.used-bytes : 96206848 fs.5.disk.count : 0 fs.6.name : loop3 fs.6.mountpoint : /snap/gnome-42-2204/176 fs.6.fstype : squashfs fs.6.total-bytes : 529661952 fs.6.used-bytes : 529661952 fs.6.disk.count : 0 fs.7.name : loop5 fs.7.mountpoint : /snap/firmware-updater/127 fs.7.fstype : squashfs fs.7.total-bytes : 11272192 fs.7.used-bytes : 11272192 fs.7.disk.count : 0 fs.8.name : loop8 fs.8.mountpoint : /snap/gtk-common-themes/1536 fs.8.fstype : squashfs fs.8.total-bytes : 94109696 fs.8.used-bytes : 94109696 fs.8.disk.count : 0 fs.9.name : loop7 fs.9.mountpoint : /snap/gtk-theme-breeze/2 fs.9.fstype : squashfs fs.9.total-bytes : 131072000 fs.9.used-bytes : 131072000 fs.9.disk.count : 0 fs.10.name : loop9 fs.10.mountpoint : /snap/icon-theme-breeze/5 fs.10.fstype : squashfs fs.10.total-bytes : 13893632 fs.10.used-bytes : 13893632 fs.10.disk.count : 0 fs.11.name : loop10 fs.11.mountpoint : /snap/gtk-theme-breeze/5 fs.11.fstype : squashfs fs.11.total-bytes : 393216 fs.11.used-bytes : 393216 fs.11.disk.count : 0 fs.12.name : loop11 fs.12.mountpoint : /snap/icon-theme-breeze/3 fs.12.fstype : squashfs fs.12.total-bytes : 14811136 fs.12.used-bytes : 14811136 fs.12.disk.count : 0 fs.13.name : loop13 fs.13.mountpoint : /snap/thunderbird/526 fs.13.fstype : squashfs fs.13.total-bytes : 157155328 fs.13.used-bytes : 157155328 fs.13.disk.count : 0 fs.14.name : loop12 fs.14.mountpoint : /snap/snapd/21759 fs.14.fstype : squashfs fs.14.total-bytes : 40763392 fs.14.used-bytes : 40763392 fs.14.disk.count : 0 disk.count : 17 disk.0.name : /dev/loop10 disk.0.partition : nein disk.1.name : /dev/loop3 disk.1.partition : nein disk.2.name : /dev/loop12 disk.2.partition : nein disk.3.name : /dev/vda1 disk.3.partition : ja disk.3.dependency.count: 1 disk.3.dependency.0.name: /dev/vda disk.4.name : /dev/vda disk.4.partition : nein disk.4.alias : vda disk.5.name : /dev/loop5 disk.5.partition : nein disk.6.name : /dev/loop7 disk.6.partition : nein disk.7.name : /dev/loop9 disk.7.partition : nein disk.8.name : /dev/loop0 disk.8.partition : nein disk.9.name : /dev/loop2 disk.9.partition : nein disk.10.name : /dev/sr0 disk.10.partition : nein disk.10.serial : QEMU_DVD-ROM_QM00001 disk.10.alias : sda disk.11.name : /dev/loop11 disk.11.partition : nein disk.12.name : /dev/loop4 disk.12.partition : nein disk.13.name : /dev/loop13 disk.13.partition : nein disk.14.name : /dev/loop6 disk.14.partition : nein disk.15.name : /dev/loop8 disk.15.partition : nein disk.16.name : /dev/loop1 disk.16.partition : nein if.count : 2 if.0.name : lo if.0.hwaddr : 00:00:00:00:00:00 if.0.addr.count : 2 if.0.addr.0.type : ipv4 if.0.addr.0.addr : 127.0.0.1 if.0.addr.0.prefix : 8 if.0.addr.1.type : ipv6 if.0.addr.1.addr : ::1 if.0.addr.1.prefix : 128 if.1.name : enp1s0 if.1.hwaddr : 52:54:00:56:83:a8 if.1.addr.count : 2 if.1.addr.0.type : ipv4 if.1.addr.0.addr : 192.168.122.168 if.1.addr.0.prefix : 24 if.1.addr.1.type : ipv6 if.1.addr.1.addr : fe80::bc40:8768:694a:72a9 if.1.addr.1.prefix : 64
also i sadly can't test xpipe with OLVM/RHV because the test-build doesn't have a signature, so out antivirus blocks it :(
Alright, I will try to implement it like this. If this detection fails for users as well, note that you can now set a custom IP in the VM configuration in XPipe. This is also a new feature.
What do you mean by it doesn't have a signature? Which artifact do you mean? The PTB has the same signatures as the main build, so if there's one missing has to be implemented first.
This is now fixed in the latest PTB release. Also, the .rpm release is now signed.
I'm i just assumed and didn't check the message of the antivirus. it is blocked, because it isn't used by many users. I think i have to wait for the full release, because this might count as used by more people.
Btw. setting custom IPs is a great solution.
We are talking about the Windows release, right? Which AntiVirus is complaining?
Yes, Windows release. Symantec is complaining.
Hmm, I would have thought that any such complaint would be gone as the release is signed with an EV certificate.
This is now released in XPipe 13
so i would close this ticket, bc i kvm is enough for me right now. i can see that support for oVirt/RHV/OLVM complicated to implement. for fourther communication you can find me on discord under akamuraaa. thanks <3
Yeah KVM support is on my todo list for the future