Hi everyone.

I have a CloudStack 4.17 cluster x86_64 using KVM/QEMU as a hypervisor. I've been exploring the possibility of using a Raspberry Pi as a host, as an alternative to conventional servers. Following the steps of this tutorial [https://rohityadav.cloud/blog/cloudstack-arm64-kvm], I managed to integrate the Raspberry Pi as a host in CloudStack and was able to create a VM using an arm64 template. However, the issue arises when attempting to create an x86_64 VM, where log indicates that QEMU doesn't support KVM. I've been able to mount x86_64 VMs using only QEMU, suggesting that the issue might be related to the CloudStack agent on the Raspberry Pi host.

I would greatly appreciate any additional guidance on how to address this matter and if anyone has had similar experiences when attempting to virtualize x86_64 in a CloudStack environment using KVM/QEMU and Raspberry Pi as a host.

Environment:

    - Cloudstack: 4.17.2.0

    Raspberry Pi 5
    - OS: Ubuntu 22.04.4 LTS (Jammy Jellyfish)
    - QEMU emulator version 6.2.0 (Debian 1:6.2+dfsg-2ubuntu6.19)

Log:
2024-04-30 18:04:20,394 WARN [resource.wrapper.LibvirtStartCommandWrapper] (agentRequest-Handler-4:null) (logid:abe7bdb2) LibvirtException org.libvirt.LibvirtException: unsupported configuration: Emulator '/usr/bin/qemu-system-x86_64' does not support virt type 'kvm'
    at org.libvirt.ErrorHandler.processError(Unknown Source)
    at org.libvirt.ErrorHandler.processError(Unknown Source)
    at org.libvirt.Connect.domainCreateXML(Unknown Source)
    at com.cloud.hypervisor.kvm.resource.LibvirtComputingResource.startVM(LibvirtComputingResource.java:1799)     at com.cloud.hypervisor.kvm.resource.wrapper.LibvirtStartCommandWrapper.execute(LibvirtStartCommandWrapper.java:89)     at com.cloud.hypervisor.kvm.resource.wrapper.LibvirtStartCommandWrapper.execute(LibvirtStartCommandWrapper.java:49)     at com.cloud.hypervisor.kvm.resource.wrapper.LibvirtRequestWrapper.execute(LibvirtRequestWrapper.java:78)     at com.cloud.hypervisor.kvm.resource.LibvirtComputingResource.executeRequest(LibvirtComputingResource.java:1831)
    at com.cloud.agent.Agent.processRequest(Agent.java:660)
    at com.cloud.agent.Agent$AgentRequestHandler.doTask(Agent.java:1080)
    at com.cloud.utils.nio.Task.call(Task.java:83)
    at com.cloud.utils.nio.Task.call(Task.java:29)
    at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
    at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)     at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
    at java.base/java.lang.Thread.run(Thread.java:829)

Regards.

Reply via email to