ML
    • Recent
    • Categories
    • Tags
    • Popular
    • Users
    • Groups
    • Register
    • Login

    XenServer hyperconverged

    IT Discussion
    xenserver xenserver 7 xen orchestra hyperconvergence hyperconverged
    14
    111
    19.0k
    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.
    • olivierO
      olivier @Danp
      last edited by

      @Danp Thanks!

      1 Reply Last reply Reply Quote 0
      • olivierO
        olivier
        last edited by olivier

        Okay, so after just few days of technical experiments, here is the deal.

        Context

        • 2x XS7 hosts, installed directly on 1x Samsung EVO 750 (128 GiB) each
        • dedicated 1Gb link between those 2 machines (one Intel card, the other is Realtek garbage)

        Usually, in a 2 hosts configuration, it's not trivial to avoid split-brain scenarios.

        In a very small setup like this (2 hosts only with few disk space), you'll expect the overhead to be the worst possible regarding the proportion of resources. But will see it's still reasonable.

        Current working solution

        A shared file storage (thin provisioned):

        0_1480456004022_hyper3.png

        0_1480456007394_hyper1.png

        What's working

        • data replicated on both nodes
        • fast live migrate VMs (just the RAM) between hosts without a NAS/SAN
        • very decent perfs
        • "reasonable" overhead (~2GiB RAM on each Node + 10GiB of storage lost)
        • scalable up to the max pool size (16 hosts)
        • killing one node and other VMs on the other host will still work
        • using XenServer HA on this "shared" storage to automatically bring back to life VMs that were on the killed node
        • no split brain scenario (at least during my tests)
        • no over complicated configuration on hosts

        Overhead

        • RAM overhead: <5GiB RAM on 32GiB installed
        • Storage overhead: lost around 9GB of disk space per host

        Obviously, in case of using large local HDDs, storage overhead will become negligible.

        Scalability

        In theory, going for more than 3 nodes will open interesting perfs scalability. So far, it's just replicating data, but you can also spread them when you have 3+ nodes.

        Perfs

        I'm comparing to a dedicated NAS with ZFS RAID10 (6x500GiB HDDs) with 16GiB of RAM (very efficient cache for random read/write) with semi-decent hardware (dedicated IBM controller card), on a NFS share.

        ZFS NAS XOSAN diff
        Sequential reads 120 MB/s 170 MB/s +40%
        4K reads 9.5 MB/s 9.4 MB/s draw
        Sequential writes 115 MB/s 110 MB/s -5%
        4k writes 8.4 MB/s 17 MB/s +200%

        As you can see, that's not bad.

        Drawbacks

        • right now, it's a fully manual solution to install and deploy, but it could be (partly) automated
        • it's a kind of "cheating" with XAPI to create a "shared" local file SR (but it works ^^)
        • XS host can't mount the share automatically on boot for some reasons. So I'm currently finding a way to do that correctly (maybe creating a XAPI plugin?)
        • you'll have to deploy 2 or 3 rpm's on Dom0, but the footprint is pretty light
        • it will probably (very likely in fact) work only on XS7 and not before
        • the only clean way to achieve this is to have SMAPIv3 finished. Until then, we'll have (at XO) to glue stuff in the best way we could to provide a correct user experience.

        Conclusion

        It's technically doable. But there is a mountain of work to have this in a "one click" deploy. I'll probably make a closed beta for some XOA users, and deploy things semi-manually to validate a bit the concept before spending to much time scaling something that nobody will use in production for some reasons (interest, complexity, etc.).

        FATeknollogeeF black3dynamiteB DanpD R3dPand4R 4 Replies Last reply Reply Quote 3
        • FATeknollogeeF
          FATeknollogee @olivier
          last edited by

          @olivier
          Very nice work.
          I'm claiming my place on the beta line.

          1 Reply Last reply Reply Quote 0
          • black3dynamiteB
            black3dynamite @olivier
            last edited by

            @olivier
            Any drawback while using the default storage type LVM?

            olivierO 1 Reply Last reply Reply Quote 1
            • olivierO
              olivier @black3dynamite
              last edited by

              @black3dynamite I'm not sure to understand the question.

              So far, the "stack" is:

              • Local Storage in LVM (created during XS install)
              • on top of that, filling it by a big data disk used by a VM
              • the VM will expose this data disk
              • XenServer will mount this data disk and create a file level SR on it
              • VMs will use this SR

              It sounds like a tons of extra layers, but that's the easiest one I found after a lot of tests (you can see it as a compromise between modifying the host too deeply to reduce the layers VS not modifying anything into the host but have more complexity to handle on VM level). You can consider it as an "hybrid" approach.

              Ideally, XenServer could be modified directly to allow this (like VMWare do with VSAN), and expose the configuration via XAPI.

              I think if we (XO project) show the way, it could (maybe) trigger some interest on Citrix side (which is only into XenDesktop/XenApp, but hyperconvergence even make sense here)

              black3dynamiteB 1 Reply Last reply Reply Quote 2
              • black3dynamiteB
                black3dynamite @olivier
                last edited by black3dynamite

                @olivier
                The question is based on you using EXT (thin) shared storage instead of LVM (thick) for XenServer.

                olivierO 1 Reply Last reply Reply Quote 0
                • olivierO
                  olivier @black3dynamite
                  last edited by

                  @black3dynamite I can't use LVM because it's block-based. I can only work with file level backend.

                  I did try to play with blocks, performance was also correct (a new layer so a small extra overhead). But I got a big issue in certain cases. Also, it was less scalable in "more than 3" hosts scenario.

                  1 Reply Last reply Reply Quote 1
                  • DanpD
                    Danp @olivier
                    last edited by

                    @olivier Sounds promising. Can you elaborate on how adding additional overhead of XOSAN would yield an increase in performance of 40% / 200% ?

                    olivierO 1 Reply Last reply Reply Quote 0
                    • olivierO
                      olivier @Danp
                      last edited by

                      @Danp That's because despite the added layers, we are making some operations locally and also on a SSD (vs the existing NAS where everything is done remotely)

                      It's more indicative than a real apple to apple benchmark. The idea here, is to show the system would be usable, performances are not the main objective here.

                      1 Reply Last reply Reply Quote 3
                      • olivierO
                        olivier
                        last edited by olivier

                        Blog post available: https://xen-orchestra.com/blog/xenserver-hyperconverged/

                        0_1481105276656_hyperpool.jpg

                        1 Reply Last reply Reply Quote 3
                        • olivierO
                          olivier
                          last edited by

                          I also updated the benchmarks with a Crystal Diskmark working on a 4GiB file (avoiding ZFS cache). Difference of performance is now huge, so the impact of the replication is not that bad at the end.

                          scottalanmillerS 1 Reply Last reply Reply Quote 3
                          • scottalanmillerS
                            scottalanmiller @olivier
                            last edited by

                            @olivier said in XenServer hyperconverged:

                            I also updated the benchmarks with a Crystal Diskmark working on a 4GiB file (avoiding ZFS cache). Difference of performance is now huge, so the impact of the replication is not that bad at the end.

                            Awesome! This is all very exciting.

                            1 Reply Last reply Reply Quote 2
                            • hobbit666H
                              hobbit666
                              last edited by

                              Really looking forward to playing with this

                              1 Reply Last reply Reply Quote 0
                              • vhinzsanchezV
                                vhinzsanchez
                                last edited by vhinzsanchez

                                Just bumping up. Hopefully, Olivier will have some favorable update. 🤤

                                EDIT: corrected olivier...my apologies 😑

                                1 Reply Last reply Reply Quote 0
                                • olivierO
                                  olivier
                                  last edited by olivier

                                  Well, sort of 😉 This command is now working:

                                  xe sr-create name-label=XOSAN shared=true content-type=user type=xosan
                                  

                                  Still a lot of stuff between this and a viable product, I'm in the middle of testing the solution in terms of resilience and overhead. I need also a layer of glue to at least semi-automate the deployment of XOSAN on a pool, otherwise I'll spent to much time doing it manually for each beta tester ^^

                                  Anyway, developing a storage on current storage architecture of XenServer is really a pain. Eager to see SMAPIv3 in action 😄

                                  vhinzsanchezV 1 Reply Last reply Reply Quote 3
                                  • vhinzsanchezV
                                    vhinzsanchez @olivier
                                    last edited by

                                    Thanks @olivier

                                    Just finished reading your blog with response to comment referring to January for beta...I think it's too early in January. Getting excited here just by reading. Nice idea/product, btw.

                                    More power!

                                    1 Reply Last reply Reply Quote 1
                                    • olivierO
                                      olivier
                                      last edited by

                                      I still have 27 days to stay in track 😉

                                      1 Reply Last reply Reply Quote 4
                                      • olivierO
                                        olivier
                                        last edited by

                                        Just a new blog post talking about Erasure Code solution for XOSAN: https://xen-orchestra.com/blog/xenserver-hyperconverged-with-xosan/

                                        AKA a great solution to mix security, space available and scalability 🙂

                                        Just bought 10GB network stuff to dig on perfs.

                                        1 Reply Last reply Reply Quote 4
                                        • FATeknollogeeF
                                          FATeknollogee
                                          last edited by

                                          This is so schweeeeet...
                                          Let's get cracking on the beta testing.....
                                          Where do I sign up, I've got a SuperMicro 2U quad node box waiting & ready 😆

                                          1 Reply Last reply Reply Quote 0
                                          • olivierO
                                            olivier
                                            last edited by

                                            The setup is still to manual to be open for a "large scale" test.

                                            But tell me more on your setup, I can start to think what's the best mode in your case 😉

                                            1 Reply Last reply Reply Quote 0
                                            • 1
                                            • 2
                                            • 3
                                            • 4
                                            • 5
                                            • 6
                                            • 3 / 6
                                            • First post
                                              Last post