XCP-ng Dom0 Clarification question

  • Hi All,

    First of all, let me say that I truly appreciate all of the help that I have been getting during my entrance into the XCP-ng learning curve.

    With this in mind, I would like to ask a question regarding the core XCP-ng server. Coming from a Linux background, mostly, and trying to understand the XEN layout and functionality a bit more, it is my understanding that Dom0 is mainly for control and for handling the hardware drivers that are then shelled out to the VM's as virtual drivers which I think are called DomU.

    Now, not sure if this is possible but if this is correct, then as I also understand it, XCP-ng (and XEN) are distantly based on CentOS and the text based virtual console that we we see on the server is from Dom0. Of course, there are also other virtual consoles which I am also assuming that are from Dom0 as well.

    What I am wondering is if it is possible to have one of the VM's show up on the default virtual terminal, but have the XCP-ng virtual consoles still be on other virtual terminals. What this would mean is that you could see the virtual terminal of a VM (default) and also be able to switch to the Dom0 virtual terminals if desired.

    Just playing with some R&D ideas but which are directly related to XCP-ng and making small adjustments to the functionality.


  • XCP-ng Center Team

    @LonnieTC interessting idea 🤔

  • XCP-ng Team

    But how to chose which VM will be on which terminal? And if that VM is down? (can't happen on dom0 obviously)

  • XCP-ng Center Team

    Idea (for administration purposes only 😉 )

    • new menu entry on xsconsole: View VM on console 2 (ALT-F2)
      • there you can select one VM
        • PV: just display text console (easy)
        • HVM: ?? vnc on console?
        • PVHVM: ?? vnc on console?

  • XCP-ng Team

    I don't think it's doable on non-PV guests.

  • XCP-ng Center Team

    If there is a framebuffer device, this might be working: https://github.com/drinkmilk/directvnc

    I just downloaded the debian sid package and tried it out, but I need libdirectfb and libjpeg62 in dom0....

    Edit: Nahhh, beyond my ressources 😕 .... maybe a nice-to-have for the future

  • XCP-ng Center Team

    @LonnieTC as I found out, for PV VMs you can do

    • xl list <-- List of xen domains
    • xl console <ID> <-- connect to the console of your VM (should just work for PV VMs)

  • Actually, I wanted to extend that idea such that we would have an xserver running with no window manager such that it runs just one application in full screen. The application that I am wanting to use would be a FreeRDP client although someone else might want to use a VNC client. Then you could easily remote into a locally, or possibly remotely, running VM.

    This is actually where I would like to take this idea.

  • @borzel Thanks and I'll have to explore this a bit more as well.

  • XCP-ng Team

    You'll have to install all the tooling in the dom0, and know how to plug to each VM. Obviously having a X11/wayland desktop. I think it starts to be a lot just for a feature like this.

  • Yea, I agree that it will take a bit of work for this approach but this will be one step closer to the project objectives in the long run. I need to do a bit of research on installing efficient X11 as I do not need a desktop and plan to run the FreeRDP client in fullscreen on a virtual terminal. This will effectively allow me to connect to any running VM, but I am wondering if there is a way to do this without having to dig into dom0. Will need to do a lot more research on this I think.

    Thanks all and will let you know how it proceeds. If anyone has suggestions towards this objective then please feel free to let me know at any time.

  • @borzel I see that you are part of the XCP-ng Center team. On that note, and towards the goals that I am working on, I was also thinking that it might be interesting to have XCP-ng Center running locally with its nice GUI in a Linux instance possibly using mono C# instead to the current text console or XO, but that is just an additional thought to explore for later since now I am seeking to get an xserver running in a way that will also be secure and preferably not in dom0 unless there is no other choice. Right now, I do not think thast XCP-ng Center will run under mono without a bit of work from the various posts that I have read so far.

    Best 🙂

  • XCP-ng Center Team

    @LonnieTC it's not trivial. I have a prototype, but there are most bits missing like proper saving of settings, password encryption, clipboard handling and so on 😞

  • Hi All,

    I am starting my experimentation with a simple step to just try and get an XServer installed.

    Currently, I see that the Dom0 has "yum" but does not seem to have a repository setup. Based upon the currently latest XCP-ng what repo should I try to setup so that I can try to add in the basic packages?


  • XCP-ng Team

    @LonnieTC You can have Dom0 converted to CentOS (for experimentation). Just add necessary repo and your packages can be installed.

    Usually XCP-NG operates in group of servers and shared storage forming a cluster allowing you a well managed business useable virtualization platform.

    Tools like XenCenter or XO are more effective in handling group of XCP-NGs at once.

    It may not be case for every one and some may have only 1 system to run XCP-NG and thus wants to be able to install windows/linux to run management UI.

    But then again, install XO has now become straight forward or I believe there is also a web version of it which establishes a web socket between your Laptop and any XCP-NG to let you manage.

    All in all, I think if you lay out your target audience, and purpose, we can try to tame a better approach.

    All the best!

  • @r1 Thanks for the reply.

    I was just looking into either adding a CentOS repo if needed or enabling it, if it is already there but need to find out which CentOS repo version should be used.

    The is an experimental exposition so the target audience is just a single system while you are correct in that XenCenter and XO are awesome for clusters of systems from what I have learned so far about them.

    I am thinking that after I find out what CentOS repo version to use then I will try to install the xorg-x11 server stuff via:

    yum -y install xorg-x11-server-Xorg xorg-x11-drv-{evdev,intel,synaptics} xorg-x11-xinit xterm terminus-fonts

    that I found related to a minimal X11 install for CentOS.

    If that is successful then I will look into installing a FreeRDP client as the RDP protocol seems to be better than VNC in a number of ways.

    This should be a good start, I think.

  • Hi All,

    I was able to figure out the repo question by just enabling it in /etc/yum.repos.d

    Things are coming along nicely now.

  • @borzel said in XCP-ng Dom0 Clarification question:

    @LonnieTC as I found out, for PV VMs you can do

    • xl list <-- List of xen domains
    • xl console <ID> <-- connect to the console of your VM (should just work for PV VMs)

    BTW, I had to try to use this method.
    Some VMs let me in, other not at all.
    All are Hardware-assisted Virtualization (HVM).

  • @MajorTom Yea, I see what you mean. Just tried it yesterday with similar results.

Log in to reply

XCP-ng Pro Support