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.
    • V Offline
      VoipDude
      last edited by

      Hello,

      Does XenOrchestra have a way to view existing bonded network interfaces?

      Looking both at the pool and host, I can see the "bond0" interface in the list, but there is no way to list which physical interfaces are making up the bond and neither what kind of bond it is. I had to go to the CLI for this.

      Just wondering if I'm not looking at the right place or if this is just something on your to-do list.

      Thanks,

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

        @voipdude Agree'd. This would be a nice interface update.

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

          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?

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

            @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.

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

              If you can get this info via xe CLI, then we should have them in XO too 🙂

              V 1 Reply Last reply Reply Quote 1
              • 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
                                            • First post
                                              Last post