Using the LBFO Teaming Script to Manage Ethernet Teams

Automated Uptime Layer with Smart Exchange includes the LBFO teaming script, zen_team.ps1, which automates the most common tasks associated with creating fault-tolerant teams of Ethernet PCIe adapters on a ztC Endurance system. This topic describes how to invoke the script and explains its full list of options. For procedures showing how to use the script to configure Ethernet teams on your system, see Configuring Ethernet Teams.

The LBFO teaming script is located at the following location:

C:\Program Files\Stratus\bin\zen_team.ps1

To use the teaming script, execute the script in the Windows PowerShell utility, which is installed automatically on your system when you install Automated Uptime Layer with Smart Exchange.

To use the teaming script

  1. Log in to the ztC Endurance system using an account that has administrative privileges.

  2. Start the Windows PowerShell utility. For example, click the Start button and click Windows PowerShell.

    If your account does not have administrative privileges, right-click Windows PowerShell and click Run as Administrator.

  3. If running scripts is restricted on your system, execute the following command to temporarily enable scripts, including the zen_team.ps1 script, for the duration of this PowerShell session:

    > set-executionpolicy -scope process unrestricted
    
    Execution Policy Change
    The execution policy helps protect you from scripts that you 
    do not trust. Changing the execution policy might expose
    you to the security risks described in the 
    about_Execution_Policies help topic at
    http://go.microsoft.com/fwlink/?LinkID=135170. Do you want to 
    change the execution policy?
    [Y] Yes  [A] Yes to All  [N] No  [L] No to All  [S] Suspend  
    [?] Help (default is "N"): y 

    You must type y and press Enter to complete the change. Later, after you finish running the script to configure teams, remember to close the PowerShell utility or set the execution policy back to Restricted to secure your system.

    Note: If running scripts is restricted on your system, executing a script in PowerShell will display the message script-name cannot be loaded because running scripts is disabled on this system.
  4. Execute the teaming script as follows with the desired options:

    > & 'C:\Program Files\Stratus\bin\zen_team.ps1' [[operation] [scheme] [teams]] [-flags [dmprv]]

    If you execute the script with no options, it displays help information for the script (that is, the help option is turned on by default).

Table 21 describes the zen_team.ps1 script options.

Notices:  
  1. Automated Uptime Layer with Smart Exchange relies on the default naming and configuration of the embedded 10 Gb Ethernet PCIe adapter (X710) teams. To ensure the fault-tolerant operation of your system, do not modify or delete these default teams (except when using the create operation to recreate the default teams) and do not add any embedded 10 Gb Ethernet PCIe adapters to other custom teams.

  2. Creating an Ethernet team disrupts the network traffic over all Ethernet PCIe adapters in the team.

  3. Do not use Remote Desktop or SSH when creating or managing Ethernet teams, because you may lose your connection to the system when you modify the network settings. Use only the local console or the BMC KVM interface (Remote Control).

Table 21: zen_team.ps1 Script Options
Option Description
Operation
create Create all new teams (deleting existing teams)
delete Delete existing teams/settings
update Update teams/interfaces (preserving existing teams). For instance, use this option after replacing a compute module or I/O module.
list Display information for each interface
savestate

Save the current state of the teams on the system to C:\Program Files\Stratus\log\team_state.json

help Display the help screen (default)
Scheme
For the create and update operations
emb Team the embedded PCIe adapters in the UP state (default)
up Team all adapters in the UP state
all Team all present adapters
custom Create custom teams using the teams parameter
For the delete operation
all Delete all existing teams/settings (default)
custom Delete a list of existing teams using the teams parameter
For the list operation
dev Show all interfaces, sorted by location (default)
name Show all interfaces, sorted by name
mac Show only custom MAC and teamed interfaces, sorted by location
team Show only teamed interfaces, sorted by location
ip Show all interface connection info, sorted by location
Teams
For the create and update operations
list

One or more user-defined team definitions, each consisting of a team name and member locations in the form:

NAME=MEMBER,MEMBER[[,MEMBER]...]

where each member's location is in the form:

IO:SLOT:PORT (<A|B>:<1..5>:<0|1>)

Notes:  
  1. Team names must be unique and each team must contain a member from each I/O module.

  2. Custom teams may not include the embedded Ethernet PCIe adapters in slot 6.

For example, assuming valid network adapters are located in slots 1, 3, and 4 of each I/O module:

"TEAM-0=A:1:0,B:1:0,A:1:1,B:1:1 TEAM-1=A:4:0,B:4:0 TEAM-2=A:3:0,B:3:0,A:3:1,B:3:1,A:4:1,B:4:1"

Would create 3 teams:

TEAM-0 with 4 members (IOA/1-0, IOB/1-0, IOA/1-1, IOB/1-1)

TEAM-1 with 2 members (IOA/4-0, IOB/4-0)

TEAM-2 with 6 members (IOA/3-0, IOB/3-0, IOA/3-1, IOB/3-1, IOA/4-1, IOB/4-1)

For the delete operation
list

A comma-separated list of existing team names to delete, in the form:

TEAM [[,TEAM]...]

For example:

"TEAM-0,TEAM-1,X550-4.0"

Would delete the existing teams whose names match (exactly):

TEAM-0, TEAM-1, and/or X550-4.0

Flags
d Delete teams on error
m Create management teams (debug-only)
p Preserve existing/in-use teams
r Restart CPU NICs
v Verbose logging

Each time the script runs, it creates a new log file named zen_team.log in the following folder:

C:\Program Files\Stratus\log\

For more information about using the PowerShell utility, execute help in PowerShell or see the Microsoft Web site. For example:

https://learn.microsoft.com/en-us/powershell/scripting/overview