XCP-ng
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Groups
    • Register
    • Login

    XO Lite: building an embedded UI in XCP-ng

    Scheduled Pinned Locked Moved XO Lite
    87 Posts 33 Posters 41.0k Views 23 Watching
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • pdoniasP Offline
      pdonias Vates 🪐 XO Team @bnerickson
      last edited by

      Hi @bnerickson, thanks for the detailed feedback! 🙂

      XO Lite is still in its early development phase, which means that most of your suggestions are actually already planned, including VBD management, editing MAC addresses, creating/deleting VMs and snapshots, and more generally everything that can be done through XAPI calls.

      Regarding your other suggestions, keep in mind that XO Lite is running without a server behind. This means that the persistency is only in the browser. For instance, I'm not sure how an LDAP login would work, since the credentials you're entering in XO Lite are your host's credentials, and XO Lite needs that to communicate with XAPI.

      Regarding XOA's FQDN, you can already do that by configuring the field publicUrl in your XOA's config:

      [http]
      # Public URL to connect to this XO
      #
      # This optional entry is used to communicate to external entities (e.g. XO Lite)
      # how to connect to this XO.
      #
      # It SHOULD be defined in case the IP address of the current machine is not
      # good enough (e.g. a domain name must be used or there is a reverse proxy).
      publicUrl = 'https://xoa.company.lan'
      

      In any case, I took note of your feedback and we'll have to discuss some of your other interesting suggestions, both for XO Lite and XO 6, like showing more of the host's logs, failed services, etc.
      Thanks!

      B J B 3 Replies Last reply Reply Quote 2
      • B Offline
        buldamoosh @pdonias
        last edited by

        This post is deleted!
        1 Reply Last reply Reply Quote 0
        • J Offline
          john.c @pdonias
          last edited by john.c

          @pdonias said in XO Lite: building an embedded UI in XCP-ng:

          Hi @bnerickson, thanks for the detailed feedback! 🙂

          XO Lite is still in its early development phase, which means that most of your suggestions are actually already planned, including VBD management, editing MAC addresses, creating/deleting VMs and snapshots, and more generally everything that can be done through XAPI calls.

          Regarding your other suggestions, keep in mind that XO Lite is running without a server behind. This means that the persistency is only in the browser. For instance, I'm not sure how an LDAP login would work, since the credentials you're entering in XO Lite are your host's credentials, and XO Lite needs that to communicate with XAPI.

          Regarding XOA's FQDN, you can already do that by configuring the field publicUrl in your XOA's config:

          [http]
          # Public URL to connect to this XO
          #
          # This optional entry is used to communicate to external entities (e.g. XO Lite)
          # how to connect to this XO.
          #
          # It SHOULD be defined in case the IP address of the current machine is not
          # good enough (e.g. a domain name must be used or there is a reverse proxy).
          publicUrl = 'https://xoa.company.lan'
          

          In any case, I took note of your feedback and we'll have to discuss some of your other interesting suggestions, both for XO Lite and XO 6, like showing more of the host's logs, failed services, etc.
          Thanks!

          The LDAP authentication could be implemented by having PAM use LDAP client authenticate against an LDAP backend. The necessary configuration and/or could be preserved or converted (as required) across each upgrade from ISO media.

          Alternatively an OpenID client and server could be used for authentication on XCP-ng to handle federated authentication services for XCP-ng.

          Also the XO Lite can be using LDAP if authentication, performed for XCP-ng is based on OpenID or PAM.

          1 Reply Last reply Reply Quote 0
          • olivierlambertO Offline
            olivierlambert Vates 🪐 Co-Founder CEO
            last edited by

            It's a big no. We don't want cram the Dom0 with more components, if you want LDAP or external auth, you should use XO 🙂

            J 1 Reply Last reply Reply Quote 0
            • B Offline
              bnerickson @pdonias
              last edited by

              @pdonias Thanks for the feedback and fix for the XOA FQDN thing! I figured most of my suggestions were pretty standard and already on the docket.

              Regarding LDAP: I think @john-c put it best. XO-Lite would probably need to be integrated w/PAM in the backend for LDAP support. It sounds like the serverless (?) architecture of XO Lite runs counter to the request and said design may hinder future feature requests that ask for tighter host visibility. Regardless, XO Lite in its current form will definitely be invaluable as more and more of the items currently on the docket are implemented 😄

              1 Reply Last reply Reply Quote 0
              • J Offline
                john.c @olivierlambert
                last edited by john.c

                @olivierlambert said in XO Lite: building an embedded UI in XCP-ng:

                It's a big no. We don't want cram the Dom0 with more components, if you want LDAP or external auth, you should use XO 🙂

                My suggestion during development of XCP-ng 8.3 of implementing the ability to lock down XCP-ng (thus XO Lite) so you can only login through XOA would, in this case be a good compromise, to handle the business deployments (especially large ones).

                Especially if implementing LDAP support is a big no!

                @bnerickson Would what I suggested above be a good compromise, to having LDAP on XCP-ng?

                J B 2 Replies Last reply Reply Quote 0
                • J Offline
                  john.c @john.c
                  last edited by

                  This post is deleted!
                  1 Reply Last reply Reply Quote 0
                  • B Offline
                    bnerickson @john.c
                    last edited by

                    @john-c It sounds like you're suggesting that XO Lite should only allow login if XoA is unavailable. Otherwise, if XoA is available (and able to communicate via xapi with the host in question) then login to XO Lite on that host is blocked.

                    In theory as an optional feature for security-conscious organizations, maybe? I'm not sure how feasible the implementation would be though.

                    J 1 Reply Last reply Reply Quote 0
                    • J Offline
                      john.c @bnerickson
                      last edited by john.c

                      @bnerickson said in XO Lite: building an embedded UI in XCP-ng:

                      @john-c It sounds like you're suggesting that XO Lite should only allow login if XoA is unavailable. Otherwise, if XoA is available (and able to communicate via xapi with the host in question) then login to XO Lite on that host is blocked.

                      In theory as an optional feature for security-conscious organizations, maybe? I'm not sure how feasible the implementation would be though.

                      The suggestion was inspired by the lock down feature of VMware ESXi. It was first discussed when people were talking about alternative to VMware NSX to be used with Vates VMS.

                      To get the background checkout this link https://xcp-ng.org/forum/topic/8605/similar-product-to-vmware-nsx/.

                      @olivierlambert Would you care to comment on the feasibility of implementing my suggestion if LDAP is a no go?

                      1 Reply Last reply Reply Quote 0
                      • olivierlambertO Offline
                        olivierlambert Vates 🪐 Co-Founder CEO
                        last edited by

                        Lockdown is a possibility, in any case I would consider direct mgmt network access a no go. The role of XOA is to make that secure bridge to outside, without exposing mgmt.

                        I think you can already disable XO Lite UI if you want. Anyway, that's not a top priority now, there's 1000 things to do first.

                        J 1 Reply Last reply Reply Quote 0
                        • J Offline
                          john.c @olivierlambert
                          last edited by john.c

                          @olivierlambert said in XO Lite: building an embedded UI in XCP-ng:

                          Lockdown is a possibility, in any case I would consider direct mgmt network access a no go. The role of XOA is to make that secure bridge to outside, without exposing mgmt.

                          I think you can already disable XO Lite UI if you want. Anyway, that's not a top priority now, there's 1000 things to do first.

                          With lockdown I mean having it disable XO Lite by disabling, not showing the login form and doing so while showing a message instead. Also the lockdown feature would disable SSH (as well as inhibit enabling it) as this would by pass Xen Orchestra on the XCP-ng host. For instance a message such as:-

                          "Logging into XO Lite is unavailable due to restrictions to only be able to login via Xen Orchestra. Please login to the Xen Orchestra instance managing this pool.

                          <link to the FQDN for Xen Orchestra managing the pool>"

                          1 Reply Last reply Reply Quote 0
                          • olivierlambertO Offline
                            olivierlambert Vates 🪐 Co-Founder CEO
                            last edited by

                            Yes, that would be possible I think 🙂

                            J 1 Reply Last reply Reply Quote 0
                            • J Offline
                              john.c @olivierlambert
                              last edited by

                              @olivierlambert said in XO Lite: building an embedded UI in XCP-ng:

                              Yes, that would be possible I think 🙂

                              The disabling, not showing the login form while displaying the message would occur before even attempting the login. Don't forget the SSH and/or console would need disabling and/or inhibiting login to prevent by pass of Xen Orchestra as well as part of the lockdown.

                              1 Reply Last reply Reply Quote 0
                              • TheNorthernLightT Offline
                                TheNorthernLight
                                last edited by

                                Just upgraded my home network to 8.3.0 and I must say, it went flawlessly. Also my first time taking a look at XO-Lite. Also fantastic! Kudo's to the whole vates dev and testing team. This is a huge milestone.

                                The only real feature for me that is missing from XO-Lite is the ability to shutdown/restart the host itself from the menu (I'm assuming this is still being added).

                                Currently, I cant see a way to restart the host from XO-Lite. My XCPNG host runs headless, so when I needed to restart the host, I loaded XCPNG Center and shutdown the XOA VM, and then rebooted the host (only needed when applying host patches). This method wont work now with 8.3. I was forced to use the "force reboot" from XOA to complete the final patch/reboot steps.

                                Without the control to restart/shutdown the host itself, the only other option is to enable SSH (when the host is headless). I would think that XO-Lite would "in theory" be more secure then leaving SSH open only for this scenario.

                                Separately, I also run XCPNG/XOA at work (licensed), and currently we are waiting for XOSTOR to come out of beta before we upgrade/test it in our environment. Any ETA on XOSTOR going full version in 8.3 ?

                                Looking forward to the future of this version and product.

                                J 1 Reply Last reply Reply Quote 0
                                • olivierlambertO Offline
                                  olivierlambert Vates 🪐 Co-Founder CEO
                                  last edited by

                                  No ETA but it's actively worked. More features are coming to XO Lite this month 🙂 (end of the month)

                                  1 Reply Last reply Reply Quote 0
                                  • J Offline
                                    john.c @TheNorthernLight
                                    last edited by john.c

                                    @TheNorthernLight said in XO Lite: building an embedded UI in XCP-ng:

                                    Just upgraded my home network to 8.3.0 and I must say, it went flawlessly. Also my first time taking a look at XO-Lite. Also fantastic! Kudo's to the whole vates dev and testing team. This is a huge milestone.

                                    The only real feature for me that is missing from XO-Lite is the ability to shutdown/restart the host itself from the menu (I'm assuming this is still being added).

                                    Currently, I cant see a way to restart the host from XO-Lite. My XCPNG host runs headless, so when I needed to restart the host, I loaded XCPNG Center and shutdown the XOA VM, and then rebooted the host (only needed when applying host patches). This method wont work now with 8.3. I was forced to use the "force reboot" from XOA to complete the final patch/reboot steps.

                                    Without the control to restart/shutdown the host itself, the only other option is to enable SSH (when the host is headless). I would think that XO-Lite would "in theory" be more secure then leaving SSH open only for this scenario.

                                    Separately, I also run XCPNG/XOA at work (licensed), and currently we are waiting for XOSTOR to come out of beta before we upgrade/test it in our environment. Any ETA on XOSTOR going full version in 8.3 ?

                                    Looking forward to the future of this version and product.

                                    Leaving SSH open won't work as eventually its port will be found, then exploited (used maliciously to gain access to host). Also it would bypass the lock down feature, modelled after VMware ESXi lockdown.

                                    Anyway there's RPU & RPR both of which are available in the appropriate edition of XOA (Xen Orchestra Appliance) and also Xen Orchestra from Sources. The RPU will reboot each host in the pool after updating them. The RPR will reboot each host in the pool in sequence, before moving onto the next.

                                    TheNorthernLightT 1 Reply Last reply Reply Quote 0
                                    • TheNorthernLightT Offline
                                      TheNorthernLight @john.c
                                      last edited by

                                      @john-c - Yes, except pool updates have never worked for us, as some of our VMs cannot be live migrated. So, we have to do it manually. Also, The XO-Lite feature I was talking about, is intended for single host scenarios (which is most common in home setups, where migration isnt possible).

                                      1 Reply Last reply Reply Quote 0
                                      • olivierlambertO Offline
                                        olivierlambert Vates 🪐 Co-Founder CEO
                                        last edited by

                                        FYI, next versions will have a way to shutdown a host, it's in the pipes 🙂

                                        1 Reply Last reply Reply Quote 1
                                        • First post
                                          Last post