IBM Support

Changing the CPUID of NIM Master and NIM Clients after LPM.

How To


Summary

This document explains how to change your NIM Master or NIM Clients CPUID after you have moved it to new HW to match the system's new CPUID.

Objective

QUESTION:

When does a CPUID change occurs, how does his affect a NIM client and NIM master and how do we correct it?

ANSWER:

When Live Partition Mobility (LPM) is used to move a machine from one physical server to another and the machine is defined as a Network Installation Management client (NIM Client) or is a Network Install Manager itself ( NIM master ), the NIM administrator must update the CPUID attribute of the system to reflect the new hardware value after the LPM migration completes.

CUPID changes when moving your LAPR to new HW. This can be done via LPM as mentioned above, mksysb restore or reassigning luns to new HW.

Steps

  1. How do I change my NIM Client CPUID after I have moved it to new HW so that I can reestablish communication with the NIM Master.

After you have moved your NIM Client to new HW the CPUID has now been changed. This will impact communication with the NIM Master as the NIM Master is not aware of the client’s CPUID change.

In this example I will use a NIM Client – Instlab163 and NIM Master – Sentinel.

Before I have moved the NIM client to new HW it had the following CPUID:

root@instlab163(/)# uname -a

AIX instlab163 2 7 00FF48B55C00

After I moved it to new HW the CPUID changed:

root@instlab163(/)# uname -a

AIX instlab163 2 7 00F84BE54C00

Communication is now not working between Instla163 and Sentinel.

root@sentinel(/)# nim -o lslpp instlab163 | grep bos.mp

0042-001 nim: processing error encountered on "master":

   0042-006 m_lslpp: (From_Master) connect Error 0

0042-008 nimsh: Request denied - sentinel.aus.stglabs.ibm.com

If we take a look in the /var/adm/ras/nimsh.log file on the NIM Client, we can see the following issue:

Mon Mar 15 12:02:05 2021        success: we got 2nd write local id is 00FF48B55C00

Mon Mar 15 12:02:05 2021        success: we got 3rd write remote id is 00FB43B94C00

Mon Mar 15 12:02:05 2021        success: we got 4th write command is /usr/lpp/bos.sysmgt/nim/methods/c_nimpush "/usr/lpp/bos.sysmgt/nim/methods/c_ckspot" "-l" "-ast_applied=3" "-ast_committed=5" "-aplatform=yes" "-aname=instlab163" "-alocation=/usr"

Mon Mar 15 12:02:05 2021        passing OpenSSL setting of 0

Mon Mar 15 12:02:05 2021        error: local value passed, '00FF48B55C00', does not match environment value '00F84BE54C00'

This indicates that the NIM Master thinks that the NIM Client’s CPUID is still '00FF48B55C00', however once compared with the environment value in order to establish the connection it fails due to mismatch as seen above.

To check what CPUID the Master has for the NIM Client we can run the following command on the NIM Master:

root@sentinel(/)# lsnim -l instlab163 | grep -i cpuid

      cpuid          = 00FF48B55C00   <---- wrong/old CPUID

To check the current CPUID of the NIM Client:

root@instlab163(/)# uname -a

AIX instlab163 2 7 00F84BE54C00

To change the CPUID on the NIM Master’s client definition to match with the actual CPUID of the nim client:

root@sentinel(/)# nim -o change -a cpuid=<new CPUID> <name of client>

root@sentinel(/)#nim -o change -a cpuid=00F84BE54C00 instlab163

root@sentinel(/)# lsnim -l instlab163 | grep -i cpuid

   cpuid          = 00F84BE54C00  <---- correct CPUID

We can verify connectivity:

root@sentinel(/)# nim -o lslpp instlab163 | grep bos.mp

  bos.mp64                   7.2.4.0  COMMITTED  Base Operating System 64-bit

  bos.mp64                   7.2.4.0  COMMITTED  Base Operating System 64-bit

  1. How do I change my NIM Master CPUD after I have moved it to new HW to reestablish connectivity with all NIM Clients?

After you have moved your NIM Master to new HW the CPUID has now been changed. This will impact communication with all NIM Clients.

Example:

root@sentinel(/)# nim -o lslpp instlab163 | grep bos.mp

0042-001 nim: processing error encountered on "master":

0042-006 m_lslpp: (From_Master) connect Error 0

On the client:

# tail /var/adm/ras/nimsh.log

Tue Dec 3 14:59:27 2019       count equals 3

Tue Dec 3 14:59:27 2019       count equals 4

Tue Dec 3 14:59:27 2019        got stderr port 1021

Tue Dec 3 14:59:27 2019       success: we got 1st write query is 0

Tue Dec 3 14:59:27 2019       success: we got 2nd write local id is 00FADBC84C00

Tue Dec 3 14:59:27 2019       success: we got 3rd write remote id is 00C655204B00

Tue Dec 3 14:59:27 2019       success: we got 4th write command is /usr/lpp/bos.sysmgt/nim/methods/c_nimpush "/usr/lpp/bos.sysmgt/nim/methods/c_ckspot" "-l" "-ast_applied=3" "-ast_committed=5" "-aplatform=yes" "-aname=lawdbfo1" "-alocation=/usr"

Tue Dec 3 14:59:27 2019       passing OpenSSL setting of 0

Tue Dec 3 14:59:27 2019       error: remote value passed, '00FB43B94C00', does not match environment value '00FB43C85B00'

To correct this, we would have to make changes to the NIM Master itself and make changes to all nim clients as well.

On the NIM Master:

To check the current system CPUID:

root@sentinel(/)# uname -a

AIX sentinel 2 7 00FB43B94C00

To check the NIM Master definition:

root@sentinel(/)# lsnim -l master | grep -i cpuid

   cpuid               = 00FB43C85B00  ß old/wrong CPUID

To change the CPUID:

# /usr/lpp/bos.sysmgt/nim/methods/m_chattr -a cpuid="new CPUID" master

Example:

root@sentinel(/)# /usr/lpp/bos.sysmgt/nim/methods/m_chattr -a cpuid="00FB43B94C00" master

To verify:

root@sentinel(/)# lsnim -l master | grep -i cpuid

   cpuid               = 00FB43B94C00

On the NIM Clients:

Since we have moved our NIM to NEW HW and its CPUID has changed, we would need to manually update each NIM Client’s niminfo file. As the niminfo file of each nim client contains the CPUID of the NIM Master it muse be updated to reflect the new CPUID. This can be done as follows:

# mv /etc/niminfo /etc/niminfo.old

# niminit -a name=<client name> -a master=<master hostname> -a connect=nimsh

Example:

root@instlab163(/)# mv /etc/niminfo /etc/niminfo.old

root@instlab163(/)# niminit -a name=instlab163 -a master=sentinel -a connect=nimsh

nimsh:2:wait:/usr/bin/startsrc -g nimclient >/dev/console 2>&1

0513-044 The nimsh Subsystem was requested to stop.

0513-059 The nimsh Subsystem has been started. Subsystem PID is 4391334.

We can verify connectivity:

root@sentinel(/)# nim -o lslpp instlab163 | grep bos.mp

  bos.mp64                   7.2.4.0  COMMITTED  Base Operating System 64-bit

  bos.mp64                   7.2.4.0  COMMITTED  Base Operating System 64-bit

Thank you for the time to read through this guide. I hope you found the information both useful and helpful. If you feel there are any mistakes or inconsistencies, please email me at boris.borisov@bg.ibm.com. If there are any technical questions regarding this document, please follow support procedures and open a PMR by calling 1-800-426-7378, and select the option for software support.

Document Location

Worldwide

[{"Line of Business":{"code":"LOB08","label":"Cognitive Systems"},"Business Unit":{"code":"BU058","label":"IBM Infrastructure w\/TPS"},"Product":{"code":"SWG10","label":"AIX"},"ARM Category":[{"code":"a8m0z000000cvz2AAA","label":"Install->NIM"}],"ARM Case Number":"","Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"All Version(s)"}]

Document Information

Modified date:
23 March 2021

UID

ibm16430695