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

    Bonded interface viewing support in XO

    Scheduled Pinned Locked Moved Xen Orchestra
    23 Posts 7 Posters 2.5k Views 6 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.
    • TheNorthernLightT Offline
      TheNorthernLight @VoipDude
      last edited by

      @voipdude said in Bonded interface viewing support in XO:

      @olivierlambert said in Bonded interface viewing support in XO:

      That's already there. There's an eye button with an hover text: "Show PIFs".

      edit: I'm not sure to fully understand what's missing exactly, can you be more specific?

      In my case, pressing on this button just shows the bond interface and not what makes up the bond. See screenshot:

      xo bonds.png

      Edit: Sorry, realized that you wanted to understand what it's missing.
      For me, it should show what type of bond it is (ex: in my case it's Active-Passive) as well as the physical interfaces that make it up (Ex: in my case bond0 is eth4 and eth5 bonded together).
      Even better would be to be able to even edit the bond (ex: change up interfaces in case something fails), but that might be a Xen limitation.

      At the very least, it would be extremely useful to be able to change the TYPE of bond (its easy to mis-configure this, and its annoying to have to change via CLI).

      1 Reply Last reply Reply Quote 0
      • V Offline
        VoipDude @olivierlambert
        last edited by VoipDude

        @olivierlambert

        (I have snipped some of the output for brevety)

        Yes, so this command shows the interfaces that are participating in the bond:

        #  xe bond-list
        uuid ( RO)      : 5f470b0a-f59e-5c34-69a5-4676719da6d6
            master ( RO): 8d0b83b2-4336-c7a5-f84f-be0d6a49064f
            slaves ( RO): 3598380c-3da3-c096-7a84-2c4ac2b280ee; 7188d716-cf0a-4e34-5ab1-5ddae4e6fe28
        
        

        But then we need to find out which UUID corresponds to which interface by doing a pif-list:

        # xe pif-list
        uuid ( RO)                  : 8d0b83b2-4336-c7a5-f84f-be0d6a49064f
                        device ( RO): bond0
            currently-attached ( RO): true
                          VLAN ( RO): -1
                  network-uuid ( RO): f5f7ee91-dcc9-104e-c696-1e74d7ddedb1
        
        uuid ( RO)                  : 3598380c-3da3-c096-7a84-2c4ac2b280ee
                        device ( RO): eth4
            currently-attached ( RO): false
                          VLAN ( RO): -1
                  network-uuid ( RO): 192daa64-2df8-41a3-9849-8f403104b3fe
        
        
        uuid ( RO)                  : 7188d716-cf0a-4e34-5ab1-5ddae4e6fe28
                        device ( RO): eth5
            currently-attached ( RO): false
                          VLAN ( RO): -1
                  network-uuid ( RO): 4f7a5c61-9bd6-dbb5-b34a-3bfe46ced469
        
        

        So we can see eth4 and eth5 are part of bond0.

        I then can find out what kind of bond it is with this command:

        # ovs-appctl bond/list
        bond	type	recircID	slaves
        bond0	active-backup	0	eth4, eth5
        
        

        Thanks,

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

          Sadly, we won't have access to ovs command. But maybe the whole bond record?

          V 1 Reply Last reply Reply Quote 0
          • V Offline
            VoipDude @olivierlambert
            last edited by

            @olivierlambert Yup, you're right! This command gives the bond type:

            # xe bond-param-list uuid=5f470b0a-f59e-5c34-69a5-4676719da6d6
            uuid ( RO)               : 5f470b0a-f59e-5c34-69a5-4676719da6d6
                         master ( RO): 8d0b83b2-4336-c7a5-f84f-be0d6a49064f
                         slaves ( RO): 3598380c-3da3-c096-7a84-2c4ac2b280ee; 7188d716-cf0a-4e34-5ab1-5ddae4e6fe28
                           mode ( RO): active-backup
                     properties (MRO): 
                  primary-slave ( RO): 3598380c-3da3-c096-7a84-2c4ac2b280ee
                       links-up ( RO): 2
                auto-update-mac ( RO): true
            
            
            1 Reply Last reply Reply Quote 0
            • olivierlambertO Offline
              olivierlambert Vates 🪐 Co-Founder CEO
              last edited by

              Okay so could you recap what info you'd like, from which source (xe command) and where?

              1 Reply Last reply Reply Quote 0
              • V Offline
                VoipDude
                last edited by

                @olivierlambert

                In the interfaces list, each interface that is bonded should have this info:

                • The bond device name and network
                  This is already present today in XO, so no changes here.

                • The type of bond
                  Derived from xe bond-list and then xe bond-param-list uuid=XXXX

                • The underlying interfaces (ex: eth0, eth1) that are participating in the bond
                  Derived from xe bond-list and then the slave UUIDs references to the device names from xe pif-list

                In terms of "where", it should be in either Pool > Network or Pool > Host > Network (or both, still not sure the difference between viewing networks in the pool or host)

                And as @TheNorthernLight mentioned, it would be great to be able to modify bonds (ex: remove or add or change the underlying interfaces that are in the bond). I don't have XenCenter handy to test if that's a thing, it might be not be possible to modify existing bonds.

                Thanks!

                lsouai-vatesL 2 Replies Last reply Reply Quote 0
                • olivierlambertO Offline
                  olivierlambert Vates 🪐 Co-Founder CEO
                  last edited by

                  @fohdeesha what do you think? If it sounds reasonable, we should create a Github issue with this 🙂

                  fohdeeshaF 1 Reply Last reply Reply Quote 0
                  • fohdeeshaF Offline
                    fohdeesha Vates 🪐 Pro Support Team @olivierlambert
                    last edited by

                    @olivierlambert I think the request makes sense, it would be really helpful to see at a quick glance what type of bond it is and what are the bond members (especially for support)

                    F 1 Reply Last reply Reply Quote 0
                    • F Offline
                      flakpyro @fohdeesha
                      last edited by

                      @olivierlambert Not to dig up an old thread but was this ever added? I was looking around and wasn't able to find it anywhere.

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

                        You can check if there's an Github issue opened for that. If yes, you can track the status. If not, there's little chance it would be done 😄

                        1 Reply Last reply Reply Quote 0
                        • P Offline
                          piotrlotr1
                          last edited by piotrlotr1

                          Sorry for poking the bear.

                          Just want to point out (in a positive way as much as possible), that I cannot find an issue related to this one on a Github and as we are trying to migrate our env onto XCP-ng I cannot find inside XOA webGUI the way to check which network interfaces (effectively PIFs eth0 or eth1 in our case) are inside a bond we've created.

                          There is a way to check that from "xe" command line (the commands are within this thread, few posts above, thank you @VoipDude).

                          Having this information provided in XOA webGUI would be something nice and useful (for example to confirm that eveyrthing is configured as it should be). Digging this up with "xe" commands took me some time and finding those right commands on the internet with explanation isn't the easiest thing.

                          As additional what I've spotted it is also hard to distinguish between "master bond" and "pool-wide networks" which are created based on "master bond". (I don't think it's possible from XOA webGUI to get that information).

                          To me it looks like the only way to distinguish it for now is this:

                          xe pif-list params=all
                          

                          Above will give us list of all PIFs with all params. We need to look for an entry where "bond-master-of" is NOT empty AND at the same time if "device" is the one we are looking for AND that the "network-name-label" is the one we are looking for : - )

                          bond-master-of ( RO): **a0753427-b3f1-52bc-1c0e-2b6481e8701e**
                          

                          Next step is:

                           xe bond-param-list uuid=**a0753427-b3f1-52bc-1c0e-2b6481e8701e**
                          

                          Above will give us UUIDs of interfaces (inside the "master bond") but again we will have to use "xe pif-list" to find what "network-name-labels" hides under UUIDs to get info if those are PIFs eth0 and eth1.

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

                            Ping @lsouai-vates

                            1 Reply Last reply Reply Quote 0
                            • P Offline
                              piotrlotr1 @piotrlotr1
                              last edited by piotrlotr1

                              @piotrlotr1
                              I'm changing my mind regarding point 2.

                              From XOA webGUI there is a way to distinguish between "master bond" and "pool-wide networks" created based on "master bond".

                              04.PNG

                              On pool level, when checking "Network" tab the master bond is marked with "Bonded" icon next to it.

                              It is NOT so obvious from "host" level as there is no "Bonded" icon next to the "master bond".

                              F 1 Reply Last reply Reply Quote 0
                              • F Offline
                                flakpyro @piotrlotr1
                                last edited by

                                I agree this is something that would be very useful to have in the WebUI when reviewing pool config to ensure everything is setup properly. It may be too late for XO5 but perhaps something to be added in XO6? I see there has been lots of work happening on the network tab in XO6 currently from looking at the github.

                                1 Reply Last reply Reply Quote 0
                                • lsouai-vatesL Offline
                                  lsouai-vates Vates 🪐 XO Team @VoipDude
                                  last edited by lsouai-vates

                                  @VoipDude Hello!

                                  I am checking this with XO Team and I'll keep you in touch as soon as possible. 🙂

                                  @pdonias do you know if there is some addon on this points that are planned in XO6 Pool > Networks tab?

                                  1 Reply Last reply Reply Quote 0
                                  • lsouai-vatesL Offline
                                    lsouai-vates Vates 🪐 XO Team @VoipDude
                                    last edited by

                                    @VoipDude Moreover, in XO6 there will be additional information visible on click on a PIF in Pool > Network view.

                                    I suggest you to take a look at the future Xen Orchestra release blogspot coming very soon (next week normally) to check if some of them would be interesting for what you are looking for. 🙂

                                    F 1 Reply Last reply Reply Quote 0
                                    • F Offline
                                      flakpyro @lsouai-vates
                                      last edited by

                                      @lsouai-vates

                                      While we run XOA in Production our DR site runs a from sources XO in case of emergencies, i updated it this morning and took a look at the latest changes and it looks much improved, you can now see a bonds parent device:
                                      29f1f7cf-b0c9-4e07-81dd-3300b5f9f5b5-image.png

                                      I think it would also be useful to show the type of bond (LACP, balance-slb, etc) but this i a great improvement.

                                      lsouai-vatesL 1 Reply Last reply Reply Quote 0
                                      • lsouai-vatesL Offline
                                        lsouai-vates Vates 🪐 XO Team @flakpyro
                                        last edited by

                                        @flakpyro yes, indeed 🙂 that exactly what I was talking about. The XO6 new interface will provide more information, but I am noting the missing type of bound to discuss it with XO team for next feature.

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