<html>
  <head>

    <meta http-equiv="content-type" content="text/html; charset=UTF-8">
  </head>
  <body>
    <p>Hello.</p>
    <p>I have a lustre setup where the MDS (172.21.156.112)  is on tcp1
      while the OSSes are on o2ib1.</p>
    <p>I am using Lustre 2.12.7 on RHEL 7.9<br>
    </p>
    <p>All the clients can see the MDS correctly as a tcp1 peer:</p>
    <p>peer:<br>
          - primary nid: 172.21.156.112@tcp1<br>
            Multi-Rail: True<br>
            peer ni:<br>
              - nid: 172.21.156.112@tcp1<br>
                state: NA<br>
      <br>
    </p>
    <p>This is by design because the MDS has no IB interface. So the MDS
      to OSSes traffic and MDS to Clients traffic is on tcp1, while
      clients to OSSes traffic is meant to be on o2ib1.<br>
    </p>
    <p>I have 1 MDS (tcp1)  And 12 OSSes (tcp1, o2ib1) and a bunch of 20
      clients (tcp1, o2ib1).</p>
    <p>All is fine but not for one of the OSSes (172.21.164.116@o2ib1,
      172.21.156.102@tcp1).</p>
    <p>Even though it is configured the same as all the other ones,
      traffic only goes through tcp1 and not o2ib1.</p>
    <p>Even if I force the peer settings to use o2ib, it ignores it and
      the tcp1 peer is added anyway<br>
    </p>
    <p>this is lnet.conf on the MDS</p>
    <p>p2nets:<br>
       - net-spec: o2ib1<br>
         interfaces:<br>
            0: ib0<br>
       - net-spec: tcp1<br>
         interfaces:<br>
            0: eno1<br>
      global:<br>
          discovery: 0</p>
    <p><br>
    </p>
    <p>this is lnet.conf on OSSes</p>
    <p>ip2nets:<br>
       - net-spec: o2ib1<br>
         interfaces:<br>
            0: ib0<br>
       - net-spec: tcp1<br>
         interfaces:<br>
            0: enp1s0f0<br>
      global:<br>
          discovery: 0</p>
    <p><br>
    </p>
    <p>I also tried this on the lustre clients side:</p>
    <p>peer:<br>
          - primary nid: 172.21.164.116@o2ib1<br>
            Multi-Rail: False<br>
            peer ni:<br>
              - nid: 172.21.164.116@o2ib1</p>
    <p>enforcing the peer settings to o2ib1.</p>
    <p>This is ignored and the peer is added by its tcp1 LNET interface.</p>
    <p>    - primary nid: 172.21.156.102@tcp1<br>
            Multi-Rail: True<br>
            peer ni:<br>
              - nid: 172.21.156.102@tcp1<br>
                state: NA<br>
    </p>
    <p>All of the hosts involved have discovery set to 0.</p>
    <p>Nevertheless the peer setting for that specific OSS is using tcp1
      and not o2ib.</p>
    <p>This is disrupting because traffic goes to tcp1 for that specific
      OSS and it is of course slower than IB.</p>
    <p>I had to deactivate the OSTs on that specific OSS.</p>
    <p>How may I Fix this issue ?</p>
    <p>Here is the complete peer list from the lustre client side and as
      you can see there is that specific OSS included as tcp1 peer.</p>
    <p>even if I do  "lnetctl peer del --nid 172.21.156.102@tcp1
      --prim_nid 172.21.156.102@tcp1" the entry is added automatically
      after a while.</p>
    <p>lnetctl peer show<br>
      peer:<br>
          - primary nid: 172.21.156.112@tcp1<br>
            Multi-Rail: True<br>
            peer ni:<br>
              - nid: 172.21.156.112@tcp1<br>
                state: NA<br>
          - primary nid: 172.21.164.111@o2ib1<br>
            Multi-Rail: True<br>
            peer ni:<br>
              - nid: 172.21.164.111@o2ib1<br>
                state: NA<br>
          - primary nid: 172.21.164.117@o2ib1<br>
            Multi-Rail: True<br>
            peer ni:<br>
              - nid: 172.21.164.117@o2ib1<br>
                state: NA<br>
          - primary nid: 172.21.164.112@o2ib1<br>
            Multi-Rail: True<br>
            peer ni:<br>
              - nid: 172.21.164.112@o2ib1<br>
                state: NA<br>
          - primary nid: 172.21.164.119@o2ib1<br>
            Multi-Rail: True<br>
            peer ni:<br>
              - nid: 172.21.164.119@o2ib1<br>
                state: NA<br>
          - primary nid: 172.21.164.114@o2ib1<br>
            Multi-Rail: True<br>
            peer ni:<br>
              - nid: 172.21.164.114@o2ib1<br>
                state: NA<br>
          - primary nid: 172.21.164.120@o2ib1<br>
            Multi-Rail: True<br>
            peer ni:<br>
              - nid: 172.21.164.120@o2ib1<br>
                state: NA<br>
      <font size="+2"><b>    - primary nid: 172.21.156.102@tcp1</b><b><br>
        </b><b>      Multi-Rail: True</b><b><br>
        </b><b>      peer ni:</b><b><br>
        </b><b>        - nid: 172.21.156.102@tcp1</b><b><br>
        </b><b>          state: NA</b></font><br>
          - primary nid: 172.21.164.116@o2ib1<br>
            Multi-Rail: False<br>
            peer ni:<br>
              - nid: 172.21.164.116@o2ib1<br>
                state: NA<br>
          - primary nid: 172.21.164.110@o2ib1<br>
            Multi-Rail: True<br>
            peer ni:<br>
              - nid: 172.21.164.110@o2ib1<br>
                state: NA<br>
          - primary nid: 172.21.164.115@o2ib1<br>
            Multi-Rail: True<br>
            peer ni:<br>
              - nid: 172.21.164.115@o2ib1<br>
                state: NA<br>
          - primary nid: 172.21.164.118@o2ib1<br>
            Multi-Rail: True<br>
            peer ni:<br>
              - nid: 172.21.164.118@o2ib1<br>
                state: NA<br>
          - primary nid: 172.21.164.113@o2ib1<br>
            Multi-Rail: True<br>
            peer ni:<br>
              - nid: 172.21.164.113@o2ib1<br>
                state: NA<br>
          - primary nid: 172.21.164.121@o2ib1<br>
            Multi-Rail: True<br>
            peer ni:<br>
              - nid: 172.21.164.121@o2ib1<br>
                state: NA<br>
      <br>
    </p>
    <p>thanks for looking at this.</p>
    <p>Rick</p>
    <p><br>
    </p>
    <p><br>
    </p>
    <p><br>
    </p>
    <p><br>
    </p>
    <p><br>
    </p>
  </body>
</html>