以下是一个系统化的新服务器测试清单,您可以根据服务器的具体角色(如Web服务器、数据库服务器、文件服务器等)进行侧重性调整。
可以将测试分为四个主要阶段:
1、硬件与基础功能测试:确保所有物理和基础虚拟组件正常工作。
2、系统与配置测试:验证操作系统和核心服务的配置是否正确。
3、性能与压力测试:评估服务器在高负载下的表现和稳定性。
4、安全与备份测试:检查安全设置和灾难恢复流程是否有效。
这部分主要针对物理服务器,如果是云服务器,部分项目由云厂商保证,但基础验证仍需进行。
1、CPU
信息核对核数、频率、型号是否与采购一致。
压力测试使用stress、stress-ng 或Prime95 等工具让CPU满载运行一段时间(如30分钟),监控温度、频率是否稳定,系统是否会因过热而降频或重启。
错误检测使用mcelog(Linux)工具检查是否有可纠正的错误计数,这可能是硬件不稳的早期迹象。
2、内存
信息核对总容量、频率、通道数是否正确。
完整性测试使用memtest86+ 进行长时间(至少通过一轮完整测试,最好 overnight)的测试,这是检测内存坏块的最可靠方法。
压力测试在操作系统中使用stress --vm 或memtester 进行内存压力测试。
3、磁盘/存储
信息核对磁盘数量、型号、容量、RAID 级别(如有)是否正确。
RAID 状态通过 RAID 卡管理工具(如MegaCLI、storcli)检查 RAID 阵列状态是否为 Optimal,有无预警。
坏块检测使用badblocks(Linux)或chkdsk /r(Windows)扫描磁盘坏道。
物理磁盘识别拔掉一块硬盘(在业务低峰期或测试环境),观察RAID是否降级但系统仍运行,然后重新插入,观察重建过程是否顺利。(此操作有风险,请谨慎)
4、网络
链路与网卡确认所有网口都能正常连接和断开,识别到正确的速度(如1G/10G/25G)。
带宽测试使用iperf3 或netperf 进行网络吞吐量测试,与已知性能良好的对端服务器进行双向测试。
丢包与延迟使用ping 进行长时间大包测试,观察是否有丢包或延迟抖动。
5、其他硬件
电源如果是双路电源,测试拔掉其中一路,系统应不受影响。
风扇观察风扇转速是否随温度变化,监控界面有无风扇告警。
远程管理卡如 iDRAC(Dell)、iLO(HPE),测试远程开关机、控制台挂载、虚拟介质等功能是否正常。
1、操作系统
版本与补丁确认操作系统版本、内核版本以及已安装的最新补丁。
系统日志检查/var/log/messages、/var/log/syslog(Linux)或事件查看器(Windows)有无硬件错误、服务启动失败等异常信息。
2、服务与进程
关键服务根据服务器角色,启动必要的服务(如nginx,mysql,ssh),并确认它们能正常启动、停止和重启。
依赖检查确保服务所需的依赖库和端口都已就绪。
3、网络配置
IP地址与路由确认IP、子网掩码、网关、DNS配置正确。
防火墙测试防火墙规则是否按预期工作,确保所需端口(如22, 80, 443, 3306)是开放的,无关端口是关闭的。
主机名检查主机名设置是否正确。
4、存储配置
文件系统检查df -h 输出的挂载点、文件系统类型和容量是否正确。
挂载选项检查/etc/fstab(Linux)中的配置,并测试服务器重启后所有分区能否正常自动挂载。
LVM(如使用)测试 LVM 的扩展、收缩、快照等操作(在测试卷上)。
目标是找到系统的瓶颈和极限。
1、CPU 性能
* 使用sysbench cpu --threads=XX run 测试计算能力。
监控工具top,htop,vmstat。
2、内存性能
* 使用sysbench memory run 测试内存读写速度。
监控工具free -m,vmstat。
3、磁盘 I/O 性能
顺序读写使用dd 命令或fio(推荐)。
# 示例:测试1G文件的顺序写
dd if=/dev/zero of=/tmp/test bs=1G count=1 oflag=direct随机读写使用fio 进行更真实的数据库/文件服务器场景测试。
fio --name=randwrite --ioengine=libaio --rw=randwrite --bs=4k --size=1G --numjobs=1 --runtime=60 --time_based --end_fsync=1 监控工具iostat,iotop。
4、网络性能
* 再次使用iperf3, 这次尝试打满带宽,观察CPU中断和软中断(softirq)是否成为瓶颈。
监控工具iftop,nethogs,sar -n DEV 1。
5、综合压力测试
* 使用stress-ng 或自己编写脚本,同时压测 CPU、内存、磁盘 I/O,模拟高负载情况,持续运行数小时,观察系统是否稳定,性能是否平滑,有无OOM(内存溢出) Killer杀进程等情况。
1、安全基线检查
端口扫描从外部和内部使用nmap 扫描服务器,确认只开放了必要的端口。
漏洞扫描使用Nessus,OpenVAS 等工具进行安全漏洞扫描。
配置合规检查SSH禁止root登录、密码策略、用户权限等是否符合公司安全规范。
入侵检测部署/测试fail2ban(Linux)等工具是否正常工作。
2、监控与告警
* 配置监控系统(如 Zabbix, Prometheus)对CPU、内存、磁盘、网络等关键指标进行采集。
模拟告警手动制造一个告警条件(如填满一个磁盘分区),确认告警信息能正确发送到管理员(如邮件、钉钉、短信)。
3、备份与恢复测试
备份执行执行一次完整的系统或数据备份。
恢复验证这是最关键的一步! 在测试环境中,尝试从备份中恢复单个文件、整个数据库或整个系统,并验证恢复的数据是完整且可用的。没有经过恢复验证的备份等于没有备份。
测试报告记录所有测试步骤、使用的命令、测试结果(包括截图和性能数据)。
验收标准明确列出通过测试的标准(如:连续压力测试12小时无宕机,性能波动在10%以内,所有安全漏洞已修复等)。
签署上线测试报告经相关人员(运维、开发、项目经理)评审通过后,服务器方可正式投入生产环境。
通过以上系统化的测试,您可以最大程度地保证新服务器的质量,为业务的稳定运行打下坚实的基础。
文章摘自:https://idc.huochengrm.cn/js/20344.html
评论
景初之
回复这份文档详细列出了新服务器测试的四个阶段:硬件与基础功能测试、系统与配置测试、性能与压力测试、安全与备份测试,旨在确保服务器稳定可靠地运行。
牛如之
回复这份清单详细介绍了服务器测试的各个阶段和具体步骤,包括硬件、系统配置、性能压力测试和安全备份测试,确保服务器稳定可靠运行。
甫婉丽
回复新服务器测试需全面评估稳定性、性能、安全性、兼容性、可扩展性、用户界面、数据备份与恢复机制,确保流畅运行,为用户提供优质体验。
佘恨荷
回复新服务器测试需关注稳定性、性能、安全性、功能完整性及用户体验。
梁丘全
回复新服务器测试需检查稳定性、安全性、性能、兼容性、用户界面等关键要素。