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 specied 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 eort 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
2020-09-111. The test procedures and criteria of reliability test cases are
optimized.
2. The timeout setting for security scanning is added.
2020-08-281. 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-081. 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.
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
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
aecting 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
Congure the parameters.
Set the conguration items of the compatibility test tool and modify the
congurationle.
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.
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
congured remote source or local source and ensure that the software source
conguration is correct.
Compatibility Test Tool User Guide (Based on
TaiShan Servers)3 Compatibility Test
Step 4 Check the congurationle.
Check whether the conguration items in the compatibility_testing.confle are
set. If the conguration 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
aecting 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)printa,"\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.
– 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.
Compatibility Test Tool User Guide (Based on
TaiShan Servers)3 Compatibility Test
User operations: If the congurationle 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
congurationle, or the startup fails, you need to reply Y to conrm 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 congurationle, or the startup fails, you need to manually start the pressure
test tool.
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
congurationle, or the startup fails, you need to manually start the pressure test
tool. After that, reply Y to conrm 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.
Compatibility Test Tool User Guide (Based on
TaiShan Servers)4 FAQs
4 FAQs
How Do I Set the application_names Parameter in the Conguration File?
Question: How do I set the application_names parameter in the conguration
le?
Answer: The application_names parameter in the congurationle 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
Congure 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
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
aecting 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.