• XCP-ng 8.3 updates announcements and testing

    Pinned News
    188
    1 Votes
    188 Posts
    19k Views
    A
    @gduperrey Installed and running on a few hosts. Good so far.
  • REST API create_vm returns task URL that doesn't exist?

    REST API
    2
    0 Votes
    2 Posts
    9 Views
    olivierlambertO
    Hi, Let me ask the XO team via @lsouai-vates
  • XCP-ng 8.2 updates announcements and testing

    Pinned Moved News
    711
    2 Votes
    711 Posts
    1m Views
    A
    @gduperrey Installed and running on a few pools. Working correctly as expected.
  • PCI Passthrough Missing Capabilities in Guest

    Hardware
    5
    0 Votes
    5 Posts
    72 Views
    R
    @andSmv Thanks for the good info! Sure if you guys provide the beta I would be more than happy to test. Unfortunately, I only have access to this hardware for another week before I need to ship it out. If you can get me the beta today or tomorrow I can get it in place and start exercising it over the weekend. Thanks!
  • XO Community edition backups dont work as of build 6b263

    Backup
    64
    0 Votes
    64 Posts
    1k Views
    R
    @florent Great work, thanks for the fixes
  • Coral TPU PCI Passthrough

    Compute
    38
    0 Votes
    38 Posts
    8k Views
    andSmvA
    @Niall-Con Thank you! I'll take a look to that and will ping you to test on real hardware. Just need to find time (in the middle of storm right now), so it'll take one or two weeks most probably.
  • XO6 Possible Issue with Lock Sidebar Button

    Solved Management
    8
    0 Votes
    8 Posts
    67 Views
    K
    @lsouai-vates Duly noted. If amd when you do get a moment, could you have a look at https://xcp-ng.org/forum/post/94297 and offer up any guidance on how I can stop the debug log entries and also the double timestamp entries in the audit.log file? Thank you.
  • Graph in v0.12.0 (48bf9)

    XO Lite
    6
    0 Votes
    6 Posts
    95 Views
    lsouai-vatesL
    @ph7 good new, we also have a fix on tooltip overflow! https://github.com/vatesfr/xen-orchestra/pull/8779 J0ris-K opened this pull request in vatesfr/xen-orchestra open fix(web-core): fix tooltip overflow when too close to the edge #8779
  • 0 Votes
    10 Posts
    399 Views
    I
    @olivierlambert @nathanael-h @Team-DevOps Please let me know if you have answers for any of the flollowing questions: Why JSON-RPC over websocket regularly returns not expected result for calls and what could be done with it? examples: method xo.getAllObjects sometimes returns empty result, but following: jsonrpc method params ------- ------ ------ 2.0 all @{type=enter; items=} On retry - everything is fine and we have all data jsonrpc result ------- ------ 2.0 @{bbdb1ed0-4c86-24ec-...=;..... method vm.copy sometimes returns only task with name_label host.get_server_certificate and no task async.vm.copy. Meanwhile copy operation is started in XEN Orchestra, so we have to separately search for the task currently running in all objects and if it is not there anymore suggest that it completed successfully. Afterwards we need to check if vm was copied and appeared in all objects. That is really frustrating as we have no info about successfully completed tasks in XEN - records just removed as nothing happen. most likely this happens due to other tasks being popped up in tasks at the same time and websocket call recives not its own responce, is it possible to workaround? What is correct syntax for JSON to run job.create method? Are there any article with supported methods for JSON-RPC calls and examples to use them? Calling for "system.getMethodsInfo" I can see "job.create": { "description": "Creates a new job from description object", "params": { "job": { "type": "object", "properties": { "userId": { "type": "string", "optional": true }, "name": { "type": "string", "optional": true }, "timeout": { "type": "number", "optional": true }, "type": { "type": "string" }, "key": { "type": "string" }, "method": { "type": "string" }, "paramsVector": { "type": "object", "properties": { "type": { "type": "string" }, "items": { "type": "array", "items": { "type": "object" } } }, "optional": true } } } }, "permission": "admin" }, But it is unclear what values should I provide to paramsVector and looking into the job created manually (in web interface) with method job.getall I can see 2 jobs [ { "type": "call", "name": "copyvm", "key": "generictask", "method": "vm.copy", "paramsvector": { "type": "crossproduct", "items": [ { "type": "set", "values": [ { "name": "nevm", "vm": "GUID", "sr": "GUID" } ] } ] }, "userid": "GUID", "id": "GUID" }, { "method": "vm.copy", "key": "vm.copy", "name": "copyvmjob", "type": "call", "userid": "GUID", "id": "GUID" } ] How can I create similar job myself if it is not possible to find out why vm.copy does not return async.vm.copy task info?
  • XOSTOR hyperconvergence preview

    Pinned Moved XOSTOR
    457
    1
    5 Votes
    457 Posts
    525k Views
    H
    Hello, I plan to install my XOSTOR cluster on a pool of 7 nodes with 3 replicas, but not all nodes at once because disks are in use. consider: node1 node2 node ... node 5 node 6 node 7. with 2 disks on each sda: 128GB for the OS sdb: 1TB for local sr ( for now ) I emptied node 6 & 7. so, here is what i plan to do: On ALL NODES: setup linstor packages Run the install script on node 6 & 7 to add their disks so: node6# install.sh --disks /dev/sdb node7# install.sh --disks /dev/sdb Then, configure the SR and the linstor plugin manager as the following xe sr-create \ type=linstor name-label=pool-01 \ host-uuid=XXXX \ device-config:group-name=linstor_group/thin_device device-config:redundancy=3 shared=true device-config:provisioning=thin Normally, i should have a linstor cluster running of 2 nodes ( 2 satellite and one controller randomly placed ) with only 2 disks and then, only 2/3 working replicas. The cluster SHOULD be usable ( i'm right on this point ? ) The next step, would be to move VM from node 5 on it to evacuate node 5. and then add it to the cluster by the following node5# install.sh --disks /dev/sdb node5# xe host-call-plugin \ host-uuid=node5-uuid \ plugin=linstor-manager \ fn=addHost args:groupName=linstor_group/thin_device That should deploy satelite on node 5 and add the disk. I normally should have 3/3 working replicas and can start to deploy others nodes progressively. I'm right on the process ? aS mentionned in the discord, i will post my feedbacks and results from my setup once i finalized it. ( maybe thought a blog post somewhere ). Thanks to provide xostor in opensource, it's clearly the missing piece for this virtualization stack in opensource ( vs proxmox )
  • Failed vm restore

    Backup
    16
    0 Votes
    16 Posts
    175 Views
    florentF
    @frank-s yes please the more detailed the bug report is, the easier it is to fix
  • XO VM Backup Started and never completed

    Backup
    7
    1 Votes
    7 Posts
    68 Views
    M
    Workaround found here https://xcp-ng.org/forum/post/94626 Seems like turning "Use NDB to transfer disk if available" switch ON and save backup job, then turn the switch OFF and save backup job again, will fix the issue. Thanks to @RobWhalley and have a nice day everyone.
  • VDI_IO_ERROR(Device I/O errors) after resizing a VM's disk

    Backup
    6
    0 Votes
    6 Posts
    147 Views
    J
    @DwightHat I am using xoa from sources and i updated it to the latest commit which seemed to fix it for me..
  • 0 Votes
    3 Posts
    43 Views
    lsouai-vatesL
    @icompit Hello, thanks for the report. I am asking XO Team... @florent FYI
  • Continuous replication problem with multiple SR

    Solved Backup
    19
    7
    0 Votes
    19 Posts
    378 Views
    GheppyG
    hmm, I found the solution, after I read here on forum. I enable this options and save and then disable and save and now is ok. Task is running again. It is running with last commit to So the problem is with these settings which may not exist in the task created before the update. [image: 1751377404079-05b77f69-6e87-49d2-9c62-d795a13d161a-image.png]
  • mirror backup to S3

    Backup
    13
    0 Votes
    13 Posts
    236 Views
    florentF
    @robyt 2 is generally a sweet spot
  • Can't get slave out of maintenance mode after yum updates

    XCP-ng
    3
    0 Votes
    3 Posts
    35 Views
    olivierlambertO
    About the xsconsole: sometimes it's not refreshing. You can try to get access to the console, then type "xsconsole" it will start it and you should see it works You must have the master up to date if you want your slave to connect again. I never tried to elect a new master in the middle of the upgrade, I would discourage it. Better shutdown some VMs on the master, upgrade it and you are automatically back on track.
  • 0 Votes
    6 Posts
    44 Views
    D
    @Cyrille The network does have the ability to reach out to the internet to update&install. Ive attempted to do an install with Manually entering some IPs. That does appear to be getting it to go further along the initialization process. The control plane atleast was able to reach a point where it could show me the login prompt, and the worker appears to be installing now.
  • XOA vs XO vs Backup feature

    Xen Orchestra
    4
    0 Votes
    4 Posts
    69 Views
    abudefA
    @kagbasi-ngc Hi, thanks for your thoughts. I get on well with Linux myself - I’m using XO from source following the documentation, and actually, Ronivay’s script, as you mentioned, makes it all even handier. Still, I can’t help but think - your average home user, a total amateur, is just going to land on the XCP-ng host homepage and click "Deploy XOA". And then they’ve no backup, outside of the trial period. But sure, if XOA is aimed squarely at business and enterprise users with paid licences, fair enough that makes perfect sense. I just feel like backup isn’t really a purely business or enterprise feature, unlike, say, proxy instances or hyper-converged storage. It's something even home users would genuinely benefit from. But as it is mentioned above, that’s just how it’s set up - and like you said yourself, everyone’s got the chance to learn something new. And sure, in the age of AI chatbots, there’s really no excuse not to manage it
  • 0 Votes
    6 Posts
    78 Views
    B
    @BSmithITGuy said in Ubuntu 22.04.5 custom template - additional steps missing from documentation: If you are trying to create an Ubuntu template and are having trouble on XCP-NG 8.3 (some or all probably applies to previous versions), keep reading. Very nice. Very thorough. This inspired me to share a relevant part of my cleanup script. Maybe it will be of some additional help to everyone: echo "Resetting machine ID..." > /etc/machine-id rm -f /etc/machine-info echo "Cleaning APT cache..." apt-get clean echo "Removing netplan configuration..." # Ubuntu < 24.04 rm -f /etc/netplan/00-installer-config.yaml # Ubuntu >= 24.04 rm -f /etc/netplan/50-cloud-init.yaml echo "Cloud-init cleanup..." if [[ -f "/etc/cloud/clean.d/99-installer" ]]; then chmod a-x /etc/cloud/clean.d/99-installer fi # Ubuntu < 24.04 rm -f /etc/cloud/cloud.cfg.d/99-installer.cfg /etc/cloud/cloud.cfg.d/subiquity-disable-cloudinit-networking.cfg # Ubuntu >= 24.04 rm -f /etc/cloud/cloud.cfg.d/90-installer-network.cfg if [[ -x "$(command -v cloud-init)" ]]; then cloud-init clean --logs --seed else echo " No cloud-init detected. Skipping cloud-init cleanup!" fi echo "Removing SSH host keys..." find /etc/ssh/ -type f -name 'ssh_host_*' -delete The code is self explanatory but here are some additional tips: It's nice to do cleanup of APT cache. This will free up some space but also force the user to update APT cache on first run after VM has been provisioned. If APT cache is not cleaned, it will grow stale over time inside a template and, after some time, package installation in new VMs will start to break. Doing apt update before any package installation is good practice but people tend to easily forget it. This will force them to do it. Ubuntu installer relies on some cloud-init config for some first boot setup which has to be removed if cloud-init is to be used once again for provisioning VMs. You correctly identified these files for removal but there is a difference in Ubuntu older than 24.04 and Ubuntu 24.04 and newer. The reason I do chmod a-x /etc/cloud/clean.d/99-installer is to prevent cloud-init from removing /etc/cloud/ds-identify.cfg when doing cloud-init clean (default behavior). Because I override the default /etc/cloud/ds-identify.cfg, I don't want cloud-init clean to remove it. I remove all the other files explicitly. Additional note, /etc/cloud/clean.d/99-installer should not be removed. It should just be chmoded because it is part of the cloud-init package and will reappear on cloud-init package update. It's better to use cloud-init clean --logs --seed command to clean any runtime cloud-init leftovers and logs instead of removing them explicitly like rm -rf /var/lib/cloud/instance. SSH host keys should be removed so that they can be regenerated on first boot of newly provisioned VM. If you don't do it, all your VMs will have same host keys which could be considered as security issue.