Jump to content
Welcome to our new Citrix community!
  • 0

Remove a NIC from all servers in a pool

Erik Meitner



I've searched and there does not seem to be any specific recommendations on removing NICs from hosts in a pool. Here is our situation:


We've got a pool of two servers running 7.1CU2. They have three NICs:

  • NIC 1: eth0-3 1Gbe (management, management, VLANS, unused)
  • NIC 2: eth4-5 1Gbe (all unused)
  • NIC 3: eth6-7 10GBe (SAN, SAN)


We no longer use NIC 2.


We are going to add a third server to the pool but it does not have NIC 2. So I would like to remove NIC 2 from the pool servers to make the joining possible. 


My idea was to use xe pif-forget to remove it logically, shut down the server, remove the NIC from the server, start up the server. Then do the same to the other host.


Will the server that has it's NIC removed first not be able to be a member of the pool due to a mismatch in the NICs? By removing NIC 2 will the interfaces on NIC 3 get renumber and mess up the SAN networks? 


Thanks for your help.



Link to comment

6 answers to this question

Recommended Posts

  • 0

I would suggest forgetting the PIF on both hosts, shutting both down, and removing the NICs from both before booting back up. Having even small hardware discrepancies can lead to confusion and I was burned by that way back when in a case where there was a mismatch in the number of NICs and it was a huge mess to clean up. Unfortunately, that would mean some down time Worst case. You could always try your route first, and worst case, see if you can still recognize and fix the secondary server after the fact when you bring it back up. If you remove its NIC and force a pool synchronization from the master, that may well take care of it (xe pool-sync-database).



  • Like 1
Link to comment
  • 0

Here is what I did on the old servers in the pool:

  1. Did a "xe pif-forget" for eth4 and eth5 PIFs on the old servers.
  2. Shut down those servers
  3. Removed NICs
  4. Started the servers
  5. I removed "ghost" NICs that showed up in XenCenter.
  6. eth6 and eth7 remained with their same name(now there is a gap between eth3 and eth6)

On the new server:

  1. [root@xen-3 ~]# interface-rename --list
    Name  MAC                PCI              ethN  Phys  SMBios                 Driver  Version  Firmware                
    eth0  08:f1:ea:86:65:34  0000:02:00.0[0]  eth0  em1   Embedded LOM 1 Port 1  tg3     3.137    5719-v1.46 NCSI v1.5.1.0
    eth1  08:f1:ea:86:65:35  0000:02:00.1[0]  eth1  em2   Embedded LOM 1 Port 2  tg3     3.137    5719-v1.46 NCSI v1.5.1.0
    eth2  08:f1:ea:86:65:36  0000:02:00.2[0]  eth2  em3   Embedded LOM 1 Port 3  tg3     3.137    5719-v1.46 NCSI v1.5.1.0
    eth3  08:f1:ea:86:65:37  0000:02:00.3[0]  eth3  em4   Embedded LOM 1 Port 4  tg3     3.137    5719-v1.46 NCSI v1.5.1.0
    eth4  2c:44:fd:8e:f3:40  0000:61:00.0[0]  eth4  p2p1  PCI-E Slot 2           bnx2x   1.714.1  bc 7.15.78 phy 1.34     
    eth5  2c:44:fd:8e:f3:44  0000:61:00.1[0]  eth5  p2p2  PCI-E Slot 2           bnx2x   1.714.1  bc 7.15.78 phy 1.34    
  2. Renamed interfaces to match the servers in the pool: eth4->eth6, eth5->eth7
  3. [root@xen-3 ~]# interface-rename --update eth6=p2p1 eth7=p2p2
  4. rebooted
  5. xe pif-scan host-uuid=<uuid>
  6. xe pif-list
  7. Removed old eth4 and eth5 PIFs:
    xe pif-forget uuid=<eth4 pif uuid>
    xe pif-forget uuid=<eth5 pif uuid>
  8. rebooted
  9. Added it to the pool.

Thanks for the guidance!


Link to comment

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Create New...