============================ R E A D M E N O T E S ============================ Marvell QLogic FC PowerKit for Windows, Linux and VMware_ESXi ================== Table of Contents ================== [1]. Introduction [2]. Prerequisites [3]. Scope [4]. Limitation [5]. Installation [6]. UnInstallation [7]. Executing Cmdlets 7.(a) Executing Cmdlets on Local and Remote Host through CIM Session: ----------------------------------------------------------------------------- [1]. Executing Cmdlets on [Local Host System]: ---------------------------------------------- a] [Local Windows Host System] [2]. Executing Cmdlets on [Remote Host System]: ---------------------------------------------- i) Connecting Remote Host System through CIM Session: ----------------------------------------------------- a] [Local Windows Host System] --> [Remote Windows Host System] b] [Local Windows Host System] --> [Remote Linux Host System] c] [Local Windows Host System] --> [Remote ESXi Host System] [8]. Available Cmdlets and Description [9]. Known Issues [10]. Contacting Support ================ 1. Introduction: ================ Marvell QLogic FC PowerKit is a PowerShell kit for managing Marvell/QLogic FC family of adapters using PowerShell Cmdlets. The Marvell QLogic FC PowerKit consists of the following two components. a] WMIv2, OMI provider and CIM Provider for Windows, Linux and ESXi respectively. b] PowerShell Cmdlets for managing Marvell/QLogic FC adapter family. ================ 2. Prerequisites: ================ a] WMI/OMI/CIM ESXi provider for Windows/Linux/ESXi is installed properly on the host system with Marvell FC adapter family that is to be managed by the FC Cmdlets. b] Marvell QLogic FC PowerKit be installed properly on the Windows system from which you plan to manage the local/remote Windows, Linux and ESXi host system with Marvell FC adapter family. c] Appropriate device driver for the Marvell FC is to be installed on the host system that is to be managed by the Marvell QLogic FC PowerKit. d] OmiServer must be installed prior to installing the OMI provider on host Linux systems. ========= 3. Scope: ========= a] Windows: ----------- -> Supported Operating Systems for the WMIv2 provider or the Marvell QLogic FC PowerKit as follows. # Windows Server 2016 # Windows Server 2019 [Standard/Data center] # Windows Server 2022 [Standard/Data center] # Windows Server Core 2016 # Windows Server Core 2019 # Windows Server Core 2022 Note : Ensure that the required .Net version is installed on Windows Server. .Net version can be installed from following Microsoft site. https://docs.microsoft.com/en-us/dotnet/framework/install/ b] Linux: --------- -> Supported Operating Systems for the OMI provider and OMI server/CIMOM as follows. # Linux distributions that OMI server/CIMOM is supported. # Please refer to the following link for further details on OMI server/CIMOM: https://github.com/Microsoft/omi (or) https://collaboration.opengroup.org/omi/ Note : Marvell QLogic FC PowerKit is not supported on RHEL 9.x. c] VMware-ESXi: --------------- -> Supported Operating Systems for Marvell FC VMware ESXi provider and SFCB server/CIMOM as follows. # VMware ESXi_7.0 # VMware ESXi_8.0 ============== 4. Limitation: ============== 1]. Firewall exceptions need to be made for remote host system management using Cmdlets. ================ 5. Installation: ================ 1. Windows: ----------- Off-line installation through Installer files: --------------------------------------------- a] Copy the Marvell QLogic FC PowerKit files to the Windows host. b] Open a powerShell prompt as an administrator and navigate to the directory where you copied the installer files. c] Run the following command to install both WMIv2 provider and the Cmdlets: Simply run below command on "New power-shell prompt session". # .\Install_MRVL_FC_PowerKit.ps1 (or) Run below command on "New power-shell prompt session". # Import-Module .\Install_MRVL_FC_PowerKit.ps1 -Force -> A message will pop-up asking if you want to run software from an untrusted publisher. Type/click 'A' for 'Always run'. d] The Cmdlets will be immediately available. -> Start typing "Get-MRVLFC" and press tab. -> Continue typing Get-MRVLFC and then press tab. -> The Get-MRVLFCAdapter Cmdlet should auto-populate. -> Run the command to confirm the Cmdlets are working properly. Notes: ------ i]. Please make sure that uninstall the old Powerkit (provider and Cmdlets) if the user installed earlier, before installation of new PowerKit (provider and Cmdlets). ii]. Please restart the WMI (Windows Management Instrumentation) from "Services Window Panel" after installation of PowerKit if required. iii]. Please close or end all the old tasks named as "WMI Provider Host" in processes from "Task Manager Window" after installation of PowerKit if required. 2. Linux: --------- a] Download and install the appropriate latest OMI server package for your Linux machine from the following websites. https://github.com/Microsoft/omi (or) https://collaboration.opengroup.org/omi/ RPM packages are provided for the installation of OMI on most enterprise Linux distributions. Choose the package based upon architecture, OpenSSL version and Package format as follows. -> 32-bit (x86) or 64-bit (x64) architecture. -> OpenSSL version 0.9.8, 1.0.x or 1.1.x (to determine your OpenSSL version, run: openssl version). -> RPM or Debian package format. Example: # rpm -ivh omi-1.4.2-5.ssl_100.ulinux.x64.rpm b] Make sure omiserver is running on the Linux host system and use the below commands to set httpport and httpsport ports to listen on. # /opt/omi/bin/omiserver --> To see the status of OMI Server. # /opt/omi/bin/omiserver --httpport 5985 --httpsport 5986 -s --> To stop OMI Server on Linux host system. # /opt/omi/bin/omiserver --httpport 5985 --httpsport 5986 -d --> To start OMI Server and set the http port. c] Copy the appropriate Marvell OMI provider rpm package: MRVL_FC_Powerkit-X.X.XX-0.i386.rpm (For x86 Linux) MRVL_FC_Powerkit-X.X.XX-0.x86_64.rpm (For x64 Linux) d] Install the appropriate Marvell OMI provider rpm package. Example: # rpm -ivh MRVL_FC_Powerkit-X.X.XX-0.x86_64.rpm e] Restart the omiserver if necessary. f] Add firewall exceptions to open up the omiserver ports for remote cmdlets to talk to the OMI server/provider. Note: 1] Please make sure that unInstall the old provider if you installed earlier, before installation of new provider. 3. ESXi: -------- Follow the below commands to install Marvell FC VMware ESXi provider VIB on ESXi Host System. On ESXi7.0, unzip the MRVL-FC-Powerkit-ESXi70_X.X.XX-XX_XXXXXXXX-package.zip package which contains installable zip and MOF file. Following command can be used to install VIB. # esxcli software vib install -f -d MRVL-FC-Powerkit-ESXi70_X.X.XX-XX_XXXXXXXX.zip Note: 1] Please make sure that unInstall the old OMI-Provider if you installed earlier, before installation of new OMI-Provider. 2] The user must reboot the server after successful installation/unInstallation of provider. ================== 6. UnInstallation: ================== 1. Windows: ----------- Off-line unInstallation through UnInstaller files: ------------------------------------------------ -> Please follow the below commands to unInstall the Marvell QLogic FC PowerKit: a] Open a powerShell prompt as administrator and navigate to the directory containing the installer files. b] Run the following command to unInstall the Cmdlets: # .\Uninstall_MRVL_FC_PowerKit.ps1 (or) Run as below on new powerShell prompt session. # Import-Module .\Uninstall_MRVL_FC_PowerKit.ps1 -Force c] Confirm unInstallation by attempting to run Get-MRVLFCAdapter and having it fail. Cmdlets that you have already used in the current PowerShell session may still auto-populate, but will not work if they are ran. 2. Linux: --------- -> Please follow the below to unInstall the Marvell OMI provider rpm package which was installed earlier: # rpm -qa | grep -i MRVL_FC_Powerkit_Linux --> Just to check if the OMI Provider installed or not. # rpm -e MRVL_FC_Powerkit_Linux-XX.XX.XX-XX.x86_64 --> To unInstall OMI Provider. 3. ESXi: -------- ESXi7.0 ------- -> Please follow the below commands to unInstall Marvell FC VMware ESXi provider VIB on ESXi Host System. # esxcli software vib list | grep -i mrvlfc --> Just to check if the Marvell FC ESXi Provider installed or not on Server. # esxcli software vib remove -n mrvlfc --> To unInstall Marvell FC ESXi Provider. Note: 1] The user must reboot the server after successful installation/unInstallation of provider. ESXi8.0 ------- -> Please follow the below commands to unInstall Marvell FC VMware ESXi VIB on ESXi Host System. # esxcli software vib list | grep -i mrvlfcpowerkit --> Just to check if the Marvell FC ESXi 8.0 package installed or not on Server. # esxcli software vib remove -n mrvlfcpowerkit --> To unInstall Marvell FC ESXi 8.0 package. Note: 1] The user must reboot the server after successful installation/unInstallation of provider. ========================================================================= 7.Executing Cmdlets ========================================================================= Notes: ====== a] Windows or Linux or ESXi host systems with Marvell FC adapter family can be managed by Marvell QLogic FC PowerKit Cmdlets. b] You need to have the Marvell QLogic FC PowerKit installed on a Windows system from which you plan to manage locally or remotely the Windows/Linux/ESXi host system with Marvell FC adapter family 7.(a) Executing Cmdlets on Local and Remote Host through CIM Session: ----------------------------------------------------------------------------- The user can execute Cmdlets on Local and Remote Host systems through CIM Session and as following. [1]. Executing Cmdlets on [Local Host System]: ---------------------------------------------- a] [Local Windows Host System] [2]. Executing Cmdlets on [Remote Host System]: ---------------------------------------------- i) Connecting Remote Host System through CIM Session: ----------------------------------------------------- a] [Local Windows Host System] --> [Remote Windows Host System] b] [Local Windows Host System] --> [Remote Linux Host System] c] [Local Windows Host System] --> [Remote ESXi Host System] [1]. Executing Cmdlets on [Local Host System]: ---------------------------------------------- a] [Local Windows Host System]: ----------------------------- - Use the following procedure to connect to a local Windows host system with Marvell FC 34xx/84xx/45xxx adapter family which has the WMIv2 provider already installed: step 1 - Install the latest Marvell QLogic FC PowerKit on Local Windows Host System. Step 2 - Run desired Cmdlets on Local Windows Host System. # Get-MRVLFCAdapter # Get-MRVLFCFunction -> Just invoke the desired Marvell QLogic FC PowerKit cmdlet to managed Marvell FC 34xx/84xx/45xxx adapters on the local Windows host system. Note: You can get the usage/Help of Cmdlet as follows. # Get-Help [-Examples | -Detailed | -Full ] Example: # Get-Help Get-MRVLFCAdapter # Get-Help Get-MRVLFCAdapter -Examples # Get-Help Get-MRVLFCAdapter -Full # Get-Help Get-MRVLFCAdapter -Detailed [2]. Executing Cmdlets on [Remote Host System]: ---------------------------------------------- i) Connecting Remote Host System through CIM Session: ------------------------------------------------------ a] [Local Windows Host System] --> [Remote Windows Host System]: ---------------------------------------------------------------- - Use the following procedure to connect to a remote Windows host system with Marvell FC adapter family which has the WMI provider already installed. Step 1 -> Install the latest Marvell QLogic FC PowerKit on Local Windows Host System. Step 2 -> Add the Remote Windows Host System to trusted host on Local Windows Host System. Example: # winrm set winrm/config/client @{TrustedHosts="172.28.35.225"} --> Run on local Windows machine [in cmd prompt run as admin] Step 3 -> Install the latest Marvell QLogic FC PowerKit on Remote Windows Host System. Step 4 -> Create the cim session on Local Windows Host System.. Syntax: # $Cred = Get-Credential # $Session = New-CimSession -ComputerName -Authentication Negotiate -Credential $Cred -OperationTimeoutSec 1200000 # Get-CimSession Example: # $Cred = Get-Credential Administrator # $Session = New-CimSession -ComputerName 172.28.35.225 -Authentication Negotiate -Credential $Cred -OperationTimeoutSec 1200000 # Get-CimSession Step 5 -> Run desired Cmdlet using CimSession on Local Windows Host System. -> Invoke the desired Cmdlet with "-CimSession $Session" option # Get-MRVLFCAdapter -CimSession $Session b] [Local Windows Host System] --> [Remote Linux Host System]: -------------------------------------------------------------- -> Use the following procedure to connect to a remote Linux host system with Marvell FC adapter family which has both OMI server/CIMOM and OMI provider installed: Step 1 -> Install OMI server on Remote Linux Host System if not installed earlier. Step 2 -> Install latest OMI Provider on Remote Linux Host System. Step 3 -> If you are installing the OMI server 1st time follow the below steps. # /opt/omi/bin/omiserver -s --> To stop OMI Server on remote Linux host machine. # /opt/omi/bin/omiserver --httpport 5985 --httpsport 5986 -d --> To start OMI Server and set the http port. # /opt/omi/bin/omiserver --> To see status of OMI Server on remote Linux machine. Note: -> Add firewall exceptions to open up the omiserver ports for remote Cmdlets to talk to the OMI server/OMI provider. Step 4 -> Install the latest Marvell QLogic FC PowerKit on Local Windows Host System. Step 5 -> Add the Remote Linux Host System to trusted host on Local Windows Host System. Example: # winrm set winrm/config/client @{TrustedHosts="172.28.35.285"} --> Run on local Windows machine [in cmd prompt run as admin] Step 6 -> Create the cim session Local Windows Host System. Syntax: # $Cred = Get-Credential # $Session = New-CimSession -ComputerName -Authentication Basic -Credential $Cred -OperationTimeoutSec 1200000 # Get-CimSession Example: # $Cred = Get-Credential root # $Session = New-CimSession -ComputerName 172.28.35.285 -Authentication Basic -Credential $Cred -OperationTimeoutSec 1200000 # Get-CimSession Step 7 -> Run desired Cmdlet using CimSession on Local Windows Host System.. -> Invoke the desired Cmdlet with "-CimSession $Session" option. Examples: # Get-MRVLFCAdapter -CimSession $Session c] [Local Windows Host System] --> [Remote ESXi Host System]: ------------------------------------------------------------- For ESXi7.0 ------------ -> Use the following procedure to connect to a remote ESXi7.0 host system with Marvell FC adapter family which has both SFCB server/CIMOM and Marvell FC VMware ESXi7.0 provider installed: Step 1 -> Install latest Marvell QLogic FC VMware-ESXi Provider VIB on Remote ESXi Host System. Step 2 -> Reboot the server after installation of Provider VIB. Other Commands: # /etc/init.d/sfcbd-watchdog restart --> To restart SFCB server on remote ESXi machine. # /etc/init.d/sfcbd-watchdog stop --> To stop SFCB server on remote ESXi host machine. # /etc/init.d/sfcbd-watchdog start --> To start SFCB server. Note: -> Add firewall exceptions to open up the SFCB ports for remote cmdlets to talk to the SFCB server/provider. Step 3 -> Install the latest Marvell QLogic FC PowerKit on Local Windows Host System. Step 4 -> Add the Remote ESXi7.0 Host System to trusted host on Local Windows Host System. Example: winrm set winrm/config/client @{TrustedHosts="172.28.35.285"} --> Run on local Windows machine [in cmd propmt run as admin] Step 5 -> Create the CIM Session as follows on Local Windows Host System. # $Cred = Get-Credential # $CIMOpt = New-CimSessionOption -SkipCACheck -SkipCNCheck -SkipRevocationCheck -Usessl # $Session = New-CimSession -ComputerName -Authentication Basic -Credential $Cred -Sessionoption $CIMOpt -port 443 -OperationTimeoutSec 1200000 # Get-CimSession Example: # $Cred = Get-Credential root # $CIMOpt = New-CimSessionOption -SkipCACheck -SkipCNCheck -SkipRevocationCheck -Usessl # $Session = New-CimSession -Authentication Basic -Credential $Cred -ComputerName "172.28.3.190" -Sessionoption $CIMOpt -port 443 -OperationTimeoutSec 1200000 Step 6 -> Run desired Cmdlet using CimSession on Local Windows Host System.. Examples: # Get-MRVLFCAdapter -CimSession $Session -> Invoke the desired Cmdlet with "-CimSession $Session" option. For ESXi8.0 ----------- -> Use the following procedure to connect to a remote ESXi8.0 host system with Marvell FC adapter family. Step 1 -> Install latest Marvell QLogic FC VMware-ESXi 8.0 VIB on Remote ESXi Host System. Step 2 -> Reboot the server after installation of VIB. -> Add firewall exceptions to open up the REST API ports for remote cmdlets for port 39999. Step 3 -> Install the latest Marvell QLogic FC PowerKit on Local Windows Host System. Step 4 -> Create the credential to connect to remote ESXi8.0 # $Cred = Get-Credential Example: # $Cred = Get-Credential root Step 5 -> Run desired Cmdlet using ComputerName & Credential arguments on Local Windows Host System. Examples: # Get-MRVLFCAdapter -ComputerName 10.30.45.200 -Credential $cred ===================================== 8. Available Cmdlets and Description: ===================================== i) The following table consists of list of available Cmdlets. ii) User can get the usage/Help of each Cmdlet as follows. # Get-Help [-Examples | -Detailed | -Full ] Example: # Get-Help Get-MRVLFCAdapter # Get-Help Get-MRVLFCAdapter -Examples # Get-Help Get-MRVLFCAdapter -Full # Get-Help Get-MRVLFCAdapter -Detailed iii)The user can run the following command on PowerShell Prompt to see list of all available cmdlets after PowerKit installation. # Get-Module -ListAvailable | Where-Object {$_.Name.StartsWith('QLGCFC_') } | select name,exportedcommands | Format-Table -Wrap iv)Please check the Powerkit User guide document for more information. #----------------------------------------------------------------- # S.No # Cmdlet Name #----------------------------------------------------------------- a]. Local and Remote Host Cmdlets: ----------------------------------- 1. Get-MRVLFCManagedLocalHost b]. Adapter Level Cmdlets( Flash Update and Adapter Configs): ------------------------------------------------------------- 2. Get-MRVLFCAdapter 3. Update-MRVLFCFlashFromFile 4. Get-MRVLFCAdapterFlashInformation 5. Save-MRVLFCAdapterConfigToFile 6. Set-MRVLFCAdapterConfigFromFile 7. Save-MRVLFCRISCFirmwareDumpToFile 8. Save-MRVLFCMPIFirmwareDumpToFile 9. Get-MRVLFCAdapterPersonalityType 10. Update-MRVLFCAdapterPersonalityType c]. Port Level Cmdlets: ----------------------- 11. Get-MRVLFCPort 12. Get-MRVLFCPortBeaconStatus 13. Update-MRVLFCPortBeaconStatus 14. Reset-MRVLFCDefaultNVRAM 15. Get-MRVLFCFECMode 16. Set-MRVLFCFECMode 17. Reset-MRVLFCFECCounters 18. Get-MRVLFCFECStats 19. Get-MRVLFCPortStats 20. Get-MRVLFCPortBBCRCreditRecoveryStatus 21. Enable-MRVLFCPortBBCRCreditRecovery 22. Disable-MRVLFCPortBBCRCreditRecovery 23. Get-MRVLFCPortVPDData 24. Set-MRVLFCAllTargetLinkSpeed 25. Save-MRVLFCPortNVRAMToFile 26. Set-MRVLFCPortNVRAMFromFile d]. PortTarget Level Cmdlet: ----------------------------- 27. Get-MRVLFCPortTarget 28. Get-MRVLFCTargetLinkSpeed 29. Set-MRVLFCTargetLinkSpeed e]. PortTargetLUN Level Cmdlet: ------------------------------- 30. Get-MRVLFCPortTargetLUN f]. Boot Config Cmdlets: ----------------------------- 31. Get-MRVLFCBootConfig 32. Save-MRVLFCBootConfigToXMLFile 33. Set-MRVLFCBootConfigFromXMLFile g]. Diagnostic Test Cmdlets: ---------------------------- 34. Start-MRVLFCPortCTCommandDiagnosticTest 35. Reset-MRVLFCPortCTCommandDiagnosticTest 36. Start-MRVLFCPortEchoDiagnosticTest 37. Reset-MRVLFCPortEchoDiagnosticTest 38. Start-MRVLFCPortPingDiagnosticTest 39. Reset-MRVLFCPortPingDiagnosticTest 40. Start-MRVLFCPortRDPDiagnosticTest 41. Start-MRVLFCPortLinkStatusDiagnosticTest 42. Reset-MRVLFCPortLinkStatusDiagnosticTest 43. Start-MRVLFCPortLoopbackDiagnosticTest 44. Reset-MRVLFCPortLoopbackDiagnosticTest 45. Start-MRVLFCPortReadWriteBufferDiagnosticTest 46. Reset-MRVLFCPortReadWriteBufferDiagnosticTest 47. Start-MRVLFCDPortDiagTest 48. Enable-MRVLFCDPort 49. Disable-MRVLFCDPort 50. Get-MRVLFCAdapterNVRAMVarEnableDPortValue 51. Get-MRVLFCPortDMIData 52. Get-MRVLFCPortFCETrace g]. Port Parameters Cmdlets: ---------------------------- 53. Get-MRVLFCPortParameters 54. Save-MRVLFCHBAParamsToXMLFile 55. Set-MRVLFCHBAParamsFromXMLFile h]. Virtual Port Cmdlets: ------------------------- 56. New-MRVLFCVPort 57. Remove-MRVLFCVPort 58. Get-MRVLFCAvailableVPorts 59. Get-MRVLFCVPort i]. Syncing Host CmdLets: ------------------------- 60. Sync-MRVLFCHost j]. Universal SAN Congestion Mitigation (USCM) CmdLets: ------------------------------------------------------- 61. Get-MRVLFCPortSCMCheck 62. Get-MRVLFCTargetSCMCheck 63. Get-MRVLFCPortSCMStats 64. Get-MRVLFCTargetSCMStats 65. Reset-MRVLFCPortSCMStatistics 66. Get-MRVLFCPortSCMProfile 67. Set-MRVLFCPortSCMActivation 68. Set-MRVLFCPortSCMDriverSettings ------------------------------------------------------------- k]. UEFI Boot Config CmdLets: ------------------------------------------------------- 69. Get-MRVLFCUEFIBootConfig 70. Save-MRVLFCUEFIBootConfigToXMLFile 71. Set-MRVLFCUEFIBootConfigFromXMLFile ------------------------------------------------------------- l]. NVMe Boot Config CmdLets: ------------------------------------------------------- 72.Get-MRVLFCNVMeBootConfig 73.Save-MRVLFCNVMeBootConfigToXMLFile 74.Set-MRVLFCNVMeBootConfigFromXMLFile ------------------------------------------------------------- ================ 9. Known Issues: ================ None. ======================== 10. Contacting Support: ======================== Please feel free to contact Marvell QLogic Support at https://www.marvell.com/support.html for further assistance. For more information, please refer to "Marvell QLogic PowerKit 2500, 2600, 2700 Series Fibre Channel Adapters User’s Guide" UserGuide document available on www.marvell.com. Some features in the doc on marvell.com may or may not apply to the OEM SW release, please refer to the QCC CLI UG for the set of supported features for the respective OEM SW release. (c) Copyright 2019-2022. All rights reserved worldwide. Marvell, the Marvell logo is registered trademarks of Marvell Semiconductor Inc. All other brand and product names are trademarks or registered trademarks of their respective owners.