Huawei Compatibility Test Tool User Manual

Compatibility Test Tool User Guide (Based on TaiShan Servers)
Issue 06
Date 2021-01-23
HUAWEI TECHNOLOGIES CO., LTD.
Copyright © Huawei Technologies Co., Ltd. 2021. All rights reserved.
No part of this document may be reproduced or transmitted in any form or by any means without prior written consent of Huawei Technologies Co., Ltd.
Trademarks and Permissions
and other Huawei trademarks are trademarks of Huawei Technologies Co., Ltd. All other trademarks and trade names mentioned in this document are the property of their respective holders.
Notice
The purchased products, services and features are stipulated by the contract made between Huawei and the customer. All or part of the products, services and features described in this document may not be within the purchase scope or the usage scope. Unless otherwise specied in the contract, all statements, information, and recommendations in this document are provided "AS IS" without warranties, guarantees or representations of any kind, either express or implied.
The information in this document is subject to change without notice. Every eort has been made in the preparation of this document to ensure accuracy of the contents, but all statements, information, and recommendations in this document do not constitute a warranty of any kind, express or implied.
Huawei Technologies Co., Ltd.
Address: Huawei Industrial Base
Bantian, Longgang Shenzhen 518129 People's Republic of China
Website: https://e.huawei.com
Issue 06 (2021-01-23) Copyright © Huawei Technologies Co., Ltd. i
Compatibility Test Tool User Guide (Based on TaiShan Servers) Contents

Contents

1 Overview....................................................................................................................................1
2 Installation................................................................................................................................ 3
3 Compatibility Test................................................................................................................... 5
4 FAQs.......................................................................................................................................... 12
A Change History...................................................................................................................... 14
Issue 06 (2021-01-23) Copyright © Huawei Technologies Co., Ltd. ii
Compatibility Test Tool User Guide (Based on TaiShan Servers) 1 Overview

1 Overview

About This Document
To solve the compatibility test issues that occur in the TaiShan server a compatibility test tool based on the
Cases
is developed.
This tool includes 15 automated test cases of the
Test Cases
consumption. It supports the Kunpeng certication of partners, allowing them to focus on function and performance tests.
and covers four aspects: compatibility, reliability, security, and power
Environment Requirements
Item
HardwareOnly TaiShan servers (bare metal servers) are supported.
OS ● CentOS 7.6
Requirement
● NeoKylin V7 Update 6
● Ubuntu 18.0.1
● Kylin 4.0.2
● Kylin 10
● UOS V20 SP1
● SUSE 12 SP5
● openEuler 20.03 LTS
certication,
Software General Certication Test
Software General Certication
Issue 06 (2021-01-23) Copyright © Huawei Technologies Co., Ltd. 1
Compatibility Test Tool User Guide (Based on TaiShan Servers) 1 Overview
Item Requirement
Tool Contact
Tool Updates
Depend ency
kongcz2008@163.com
Date
● For CentOS, NeoKylin, openEuler, and Kylin 10, run the following command to install the dependency package:
yum –y install nmap ipmitool dmidecode pciutils util-linux util­linux net-tools net-tools sysstat bc
● For Ubuntu, Kylin 4.0.2, and UOS, run the following command to install the dependency package:
apt –y install nmap ipmitool dmidecode lspci lscpu lsblk ifcong netstat sysstat bc
● For SUSE, run the following command to install the dependency package:
zypper install -y nmap ipmitool dmidecode lspci lscpu lsblk ifcong netstat sysstat bc
Description
2020-09-11 1. The test procedures and criteria of reliability test cases are
optimized.
2. The timeout setting for security scanning is added.
2020-08-28 1. The OS software source check is removed. After the command
does not exist, the yum install command is invoked. If the installation fails, a message is displayed, asking the user to check the Yum source.
2. The system environment is checked before the test and I/O statistics (iostat) are invoked to check the drive I/O usage. Data is collected for multiple times to determine the indicator.
2020-07-08 1. The openEuler OS is supported.
2. The startup script and command can contain the command for switching the directory.
3. Multiple startup tasks can correspond to one startup script.
Issue 06 (2021-01-23) Copyright © Huawei Technologies Co., Ltd. 2
Compatibility Test Tool User Guide (Based on TaiShan Servers) 2 Installation

2 Installation

Installation Procedure
Step 1 Obtain the compatibility_testing.tar.gz or compatibility_testing.zip tool.
You can download the tool at https://mirrors.huaweicloud.com/kunpeng/
archive/compatibility_testing/.
Step 2 Use tools, such as WinSCP, FlashFXP, or Xftp, to upload the
compatibility_testing.tar.gz or compatibility_testing.zip to the server. Ensure
that the drive where the upload directory is located has plenty of space for downloading subsequent software packages. Take /home/compatibility_testing as an example:
cd /home/compatibility_testing
tar -xzvf compatibility_testing.tar.gz or unzip compatibility_testing.zip
cd compatibility_testing
The compatibility_testing directory contains the following
compatibility_testing.sh: main script tool
compatibility_testing.conf: tool the name of the application process to be tested, startup and stop scripts of the application, and the startup command of the pressure test tool
README
, document for brief description
conguration le, which is used to congure
les:
Issue 06 (2021-01-23) Copyright © Huawei Technologies Co., Ltd. 3
NO TE
Compatibility Test Tool User Guide (Based on TaiShan Servers) 2 Installation
– Run the script as the root user.
CentOS, NeoKylin, SUSE, openEuler, and Kylin V10
Usage: sh compatibility_testing.sh [-d]. The -d indicates the display of debugging logs.
Ubuntu, Kylin 4.0.2, and UOS
Usage: bash compatibility_testing.sh [-d]. The -d indicates the display of debugging logs.
– Detailed operation logs of the tool: The path is tool directory/log/
info.log_yyyymmdd.
----End
Issue 06 (2021-01-23) Copyright © Huawei Technologies Co., Ltd. 4
Compatibility Test Tool User Guide (Based on TaiShan Servers) 3 Compatibility Test

3 Compatibility Test

Prerequisites
Disabling the rewall (temporary)
systemctl stop
Stopping the service software (That is, the environment is idle)
This operation aims to prevent other processes that are running on the server
aecting the reliability of subsequent test results. Before the test starts,
from all partner service application processes are stopped without uninstallation. For example, the system resource usage before the service software is installed is restored to monitor system resources during the test, such as the processor, memory, drive, and NIC.
rewalld.service
Procedure
Step 1
Congure the parameters.
Set the conguration items of the compatibility test tool and modify the conguration le.
User operations:
vi compatibility_testing.conf
# Name of the application to be tested. Use commas (,) to separate multiple application names.
application_names=
# Startup command for the application to be tested. Use commas (,) to separate the startup commands of multiple applications.
start_app_commands=
# Stop command for the application to be tested. Use commas (,) to separate the stop commands of multiple applications.
stop_app_commands=
# Startup command for the pressure test tool of the application to be tested.
start_performance_scripts=
Issue 06 (2021-01-23) Copyright © Huawei Technologies Co., Ltd. 5
NO TE
NO TE
Compatibility Test Tool User Guide (Based on TaiShan Servers) 3 Compatibility Test
application_names indicates the name of the application process to be tested. You can run the ps or docker top command to query the background process name in the CMD column.
start_app_commands indicates the startup command or script for the application to be tested. If this parameter is left blank, the application needs to be manually started.
stop_app_commands indicates the stop command or script for the application to be tested. If this parameter is left blank, the application needs to be manually stopped.
start_performance_scripts indicates the startup command for the pressure test tool of the application to be tested. If this parameter is left blank, the pressure needs to be manually increased.
Step 2 Remotely log in to the server, switch to root user, and start the compatibility test
tool.
User operations
sh compatibility_testing.sh
Script output
The script outputs the user description and execution duration.
The server resource collection duration is described as follows: 10 minutes before the application is started, 20 minutes during the pressure test, and 10 minutes after the application is stopped.
● CentOS, NeoKylin, SUSE, openEuler, and Kylin V10
Usage: sh compatibility_testing.sh [-d]. The -d indicates the display of debugging logs.
● Ubuntu, Kylin 4.0.2, and UOS
Usage: bash compatibility_testing.sh [-d]. The -d indicates the display of debugging logs.
Step 3 Check the dependency.
Check whether software and commands for vulnerability scanning are installed in the user environment. If they are not installed, install the software from the
congured remote source or local source and ensure that the software source conguration is correct.
Script output
User operations: none
User input: none
Issue 06 (2021-01-23) Copyright © Huawei Technologies Co., Ltd. 6
Compatibility Test Tool User Guide (Based on TaiShan Servers) 3 Compatibility Test
Step 4 Check the conguration le.
Check whether the conguration items in the compatibility_testing.conf le are set. If the conguration items are not set, you need to manually start and stop the application, and start the test tool.
Script output
User operations: none
User input: none
Step 5 Check whether the test environment is idle.
Check whether the processor, memory, drive, and network of the current system are idle. For example, the processor usage needs to be less than 1% to prevent other processes that are running on the background from
aecting the reliability of subsequent test results. If the check fails, the system prompts you to clear the current environment before executing the tool again.
Script output
User operations
If the script displays a message indicating that the current environment is not idle, perform the following procedure:
1. View the tool log for details. The tool log is stored in the current
directory/log/info.log_yyyymmdd directory.
2. If the system displays a message indicating that the processor or memory
usage exceeds the threshold, run the top command to check the application processes with high processor or memory usage in the current system environment and stop these processes.
3. If the system displays a message indicating that the drive bandwidth and
number of network connections exceed the threshold, run the iostat -d –x command to check the drive bandwidth.
Run the netstat -n |awk '/^tcp/{++S[$NF]} END{for (a in S)print a,"\t",S[a]}' command to check the number of network connections. After checking these two parameters, stop the applications with high resource usage.
4. Run the top command to check the processor usage of the ksoftirqd process.
If the processor usage is 100%, upgrade the NIC driver of the server.
Issue 06 (2021-01-23) Copyright © Huawei Technologies Co., Ltd. 7
NO TE
Compatibility Test Tool User Guide (Based on TaiShan Servers) 3 Compatibility Test
– Hi1822 NIC driver upgrade
Link to downloading Hi1822 NIC driver
For Ubuntu, UOS, and Kylin 4.0.2, you need to install the module-init-tools: dpkg
-i module-init-tools_22-1ubuntu5_all.deb. Link to downloading the tool.
– The following uses CentOS 7.6 as an example to describe how to install the driver.
The software package path in the following steps is the path of the Computing OpenLab resource jump server.
1. Install the driver package.
rpm -ivh D:\driver\1822\CentOS\CentOS7.6\NIC-IN200-CentOS7.6­hinic-2.8.0.10-aarch64.rpm
2. Uninstall the driver.
rmmod hinic
3. Load the driver.
modprobe hinic
4. Query the driver version.
modinfo hinic |grep -i version
– For details about how to install other OS versions, see the D:\driver\1822 directory
on the jump server.
User input
If the current system environment is not idle, stop the service application and reply Y or y.
Step 6 Collect system resources (before the software is started).
Before the service application is started, collect data of the processor, memory, drive, network, and power consumption.
User operations: none
User input: none
Step 7 Start the application.
Invoke the application startup command entered by the user to start the application. If the startup fails or no command is entered, you need to manually start the application. After the manual startup is completed, you need to reply Y.
Script output
Issue 06 (2021-01-23) Copyright © Huawei Technologies Co., Ltd. 8
Compatibility Test Tool User Guide (Based on TaiShan Servers) 3 Compatibility Test
User operations: If the conguration le does not contain the application startup command or script, or the startup fails, you need to manually start the application.
User input: If the application startup command or script is not set in the conguration le, or the startup fails, you need to reply Y to conrm the startup after manually starting the application.
Step 8 Perform a security test.
After the application is started, run the nmap command to scan all ports.
Script output
User operations: none
User input: none
Step 9 Perform a stress test.
Invoke the command entered by the user to start the pressure test tool and collect the data of the processor, memory, drive, and network.
Script output
User operations: If the startup command for the pressure test tool is not set in
the conguration le, or the startup fails, you need to manually start the pressure test tool.
Issue 06 (2021-01-23) Copyright © Huawei Technologies Co., Ltd. 9
Compatibility Test Tool User Guide (Based on TaiShan Servers) 3 Compatibility Test
User input: If the application startup command or script is not set in the conguration le, or the startup fails, you need to manually start the pressure test tool. After that, reply Y to conrm the startup of the pressure test tool.
Step 10 Perform an exception test (reliability test).
Forcibly stop the application process and then start it. The purpose is to check whether the application can be started and run stably after it is stopped abnormally.
Script output
User operations: If the pressure test tool is manually started or fails to be
stopped, you need to stop the pressure test tool.
User input: If the pressure test tool is manually started or fails to be stopped, you need to stop the pressure test tool and press any key to perform the next step.
Step 11 Collect system resources (after the software is stopped).
Stop the application and collect the data of the processor, memory, drive, network, and power consumption.
Script output
Issue 06 (2021-01-23) Copyright © Huawei Technologies Co., Ltd. 10
Compatibility Test Tool User Guide (Based on TaiShan Servers) 3 Compatibility Test
User operations: none
User input: none
Step 12 Output the log.
Check, collect, and pack the results obtained by the test tool.
Script output
User operations: none
User input: none
----End
Issue 06 (2021-01-23) Copyright © Huawei Technologies Co., Ltd. 11
NO TE
Compatibility Test Tool User Guide (Based on TaiShan Servers) 4 FAQs

4 FAQs

How Do I Set the application_names Parameter in the Conguration File?
Question: How do I set the application_names parameter in the conguration le?
Answer: The application_names parameter in the conguration le indicates the name of the application to be tested. Use commas (,) to separate multiple application names.
application_names=
Enter the application process name. You can run the ps or docker top command to query the background process name in the CMD column. For example, the process name of the application Redis can be redis or redis-server.
The APT or Yum Source Is Unavailable.
Question: The APT or Yum source is unavailable. The script output is as follows:
Answer:
User operations
Congure the local source or remote source, and run the following commands to install the tool:
For CentOS, NeoKylin, SUSE, openEuler, and Kylin V10, run the following
command to install the software package:
yum –y install nmap ipmitool dmidecode pciutils util-linux util-linux net­tools net-tools sysstat bc
For Ubuntu, Kylin 4.0.2, and UOS, run the following command to install the
software package:
Issue 06 (2021-01-23) Copyright © Huawei Technologies Co., Ltd. 12
Compatibility Test Tool User Guide (Based on TaiShan Servers) 4 FAQs
apt –y install nmap ipmitool dmidecode lspci lscpu lsblk ifcong netstat sysstat bc
For SUSE, run the following command to install the software package:
zypper install -y nmap ipmitool dmidecode lspci lscpu lsblk ifcong netstat sysstat bc
The Current Environment Is Not Idle.
Question: How do I perform the next step if the current environment is not idle?
Script output
Answer:
Check whether the processor, memory, drive, and network of the current system are idle to prevent other processes that are running on the background from aecting the reliability of subsequent test results.
User operations
View the tool log for details. The tool log is stored in the current
directory/log/info.log_yyyymmdd directory.
If the system displays a message indicating that the processor or memory
usage exceeds the threshold, run the top command to check the application processes with high processor or memory usage in the current system environment and stop these processes.
If the system displays a message indicating that the drive bandwidth and
number of network connections exceed the threshold, run the iostat -d –x command to check the drive bandwidth, and run the netstat -n |awk '/ ^tcp/{++S[$NF]} END{for (a in S)print a,"\t",S[a]}' command to check the number of network connections. After checking these two parameters, stop the applications with high resource usage.
Run the top command to check the processor usage of the ksoftirqd process.
If the processor usage is 100%, upgrade the NIC driver of the server.
Issue 06 (2021-01-23) Copyright © Huawei Technologies Co., Ltd. 13
Compatibility Test Tool User Guide (Based on TaiShan Servers) A Change History

A Change History

Date Description
2021-01-23 This issue is the sixth ocial release.
Changed OpenLab to Computing OpenLab.
2020-12-02 This issue is the fth ocial release.
Updated the procedure for installing the Hi1822 NIC driver.
2020-11-06 This issue is the fourth ocial release.
Updated the link of the in About This Document.
2020-10-15 This issue is the third ocial release.
Updated the hyperlink of the compatibility test tool.
2020-10-09 This issue is the second ocial release.
Updated the email address of the tool contact person.
2020-08-03 This issue is the rst ocial release.
Software General Certication Test Cases
Issue 06 (2021-01-23) Copyright © Huawei Technologies Co., Ltd. 14
Loading...