diff --git "a/content/zh/post/cchen676/\350\265\204\346\272\220\346\261\240\345\214\226\351\207\215\347\202\271\346\265\213\350\257\225\350\214\203\345\233\264.md" "b/content/zh/post/cchen676/\350\265\204\346\272\220\346\261\240\345\214\226\351\207\215\347\202\271\346\265\213\350\257\225\350\214\203\345\233\264.md" new file mode 100644 index 0000000000000000000000000000000000000000..d98c9f9137b1dd33933de9162bdf2cefc27b60e9 --- /dev/null +++ "b/content/zh/post/cchen676/\350\265\204\346\272\220\346\261\240\345\214\226\351\207\215\347\202\271\346\265\213\350\257\225\350\214\203\345\233\264.md" @@ -0,0 +1,110 @@ +# 资源池化测试重点 + +### 1 约束条件 + +1.1.主备共享存储方案依赖于磁阵设备,并且磁阵LUN需要支持SCSI3的PR协议及CAW协议。 + +1.2.只支持主备部署在同一磁阵设备上。 + +1.3.opengauss当前版本共享存储模式不支持版本升级。 + +1.4.表类型仅支持段页式astore引擎表,不支持ustore表、列存表、unlogged table、mot表,不支持创建绝对路径表空间的功能。 + +### 2 测试组网 +#### 2.1 软硬件环境 +| 资产类型 | OS版本 | CPU架构 | CPU核数 | 内存(GB) | 磁阵 | 业务网络 | 系统模式 | +| ------------ | ------------ | ------------ | ------------ | ------------ | ------------ | ------------ | ------------ | +| 物理机 | openEuler release 20.03 (LTS) | x86_64 | 64 | 192 | OceanStor Dorado 5600 V6 nvme ssd | 万兆 | ssh | +| 物理机 | openEuler release 20.03 (LTS) | aarch64 | 128 | 768 | OceanStor Dorado 5300 V6 nvme ssd | 万兆 | ssh | + +#### 2.2 组网方式 + +| 部署方式 | AZ | 节点数量 | DN副本数 | CMS | +| :------------: | :--: | :------: | :------: | :--: | +| 集中式一主一备 | 1 | 2 | 2 | 2 | +| 集中式一主两备 | 1 | 3 | 3 | 3 | + +### 3 资源池化重点测试点 + +#### 3.1 基本功能测试 + +| 一级分类 | 二级分类 | 测试方法简要描述 | +| ----------- | ---------- | ------------------------------------------------------------ | +| sql基本语法 | DDL | 对共享存储模式数据库支持的数据库对象进行create table/create table partition/create table as/create table like/alter/alter partition等语法验证 | +| | DML | 对共享存储模式数据库支持的数据库对象进行insert/delete/update/upsert/copy/truncate等语法验证 | +| | DCL | 对共享存储模式数据库支持的数据库对象进行grant/revoke等语法验证 | +| | DQL | 对共享存储模式数据库支持的数据库对象进行select等语法验证 | +| 锁 | 并发读 | 验证并发读的情况是否正常 | +| | 并发读写 | 验证并发读写的情况是否正常 | +| | 并发读+ddl | 验证并发读写+ddl的情况是否正常 | +| 事务 | 事务 | 验证read commited隔离级别下的事务,子事务,提交和回滚操作是否正常 | + +#### 3.2 工具测试 + +| 模块 | 工具名称 | 测试方法简要描述 | +| ------------ | -------------- | ----------------------------------------------------- | +| 安装部署 | gs_preinstall | 使用gs_preinstall工具可以进行数据库预安装的操作 | +| | gs_install | 使用gs_install工具可以进行数据库安装的操作 | +| 卸载 | gs_uninstall | 使用gs_u'ninstall工具可以进行数据库卸载的操作 | +| 备份恢复 | gs_probackup | 验证dss模式下gs_probackup工具的备份和恢复操作 | +| 数据库管理 | cm_ctl | 使用cm_ctl工具进行资源启停,switchover以及query操作等 | +| 文件系统管理 | pg_controldata | 验证dss模式下显示数据库目录文件操作 | +| | dsscmd | 使用dsscmd工具对集群文件系统进行查询,操作和管理 | +| 事务操作管理 | pg_resetxlog | 验证dss模式下数据库事务重置操作 | + +#### 3.3 可靠性测试 + +| 一级故障 | 二级故障 | 三级故障 | 注入方法 | +| ---------- | ------------ | ----------------------------- | ------------------------- | +| 数据库故障 | 单实例故障 | 单实例故障,可直接拉起:主/备 | kill | +| | | 单实例故障,无法拉起:主/备 | mv+kill/stop | +| | | 单实例故障,T状态僵死:主/备 | kill -stop pid | +| | | dss故障,可直接拉起:主/备 | kill | +| | | dss故障,无法拉起:主/备 | mv+kill/stop | +| | | dss故障,T状态僵死:主/备 | kill -stop pid | +| | 多实例故障 | 少数派故障 | kill/mv+kill/stop | +| | | 多数派故障 | kill/mv+kill/stop | +| | | 节点故障 | kill all | +| | | 集群重启 | cm_ctl stop /cm_ctl start | +| | failover | 升主过程中,dn再现故障 | kill/mv+kill/stop | +| | | 升主过程中,dss再故障 | kill/mv+kill/stop | +| | | 升主过程中,网络故障 | 断网、丢包、时延 | +| | switchover | 降备过程中,原主故障 | kill/mv+kill/stop | +| | | 降备过程中,其他节点dn故障 | kill/mv+kill/stop | +| | | 升主过程中,原主故障 | kill/mv+kill/stop | +| | | 升主过程中,原主网络故障 | 断网、丢包、时延 | +| | | 升主过程中,新主故障 | kill/mv+kill/stop | +| | | 升主过程中,新主上dss故障 | kill/mv+kill/stop | +| | | 升主过程中,新主网络故障 | 断网、丢包、时延 | +| 集群故障 | 配置文件错误 | postgresql.conf | 手动配置错误 | +| | | cm_resource.json | 手动配置错误 | +| 网络故障 | 网络故障 | 主实例节点网络故障 | 断网、丢包、时延 | +| | | 主实例节点网络故障 | 断网、丢包、时延 | +| os故障 | os重启 | os重启 | reboot | +| | os断电 | os断电 | 断电 | + +#### 3.4 性能测试 + +3.4.1 安装部署共享存储模式一主一备,一主两备 + +3.4.2 在tpcc工具下建1000仓,并发800场景下,对比和非共享存储数据库的性能 + +#### 3.5 压力长稳测试 + +在一主一备部署形态下,使用tpcc500W,1000并发进行长稳测试,资源使用IO达到瓶颈,CPU90%+ + +#### 3.6 数据一致性测试 + +覆盖一主一备,一主两备等不同部署形态上正常业务负载和故障场景下的元数据一致性和用户数据一致性测试,重点覆盖tpcc、sysbench等benchmark场景 + +#### 3.7 内存泄露测试 + +基于MemoryCheck插桩版本覆盖继承特性、新特性,涵盖正常场景、故障场景、长稳场景。 + +#### 3.8 资料测试 + +对资料的正确性、易用性、完整性、语言描述书面化等进行测试,对于示例和命令进行了有效性测试 + +#### 3.9 RTO摸底 + +当前仅进行TPCC 1000W 300并发CPU利用率在10%及60%场景下RTO摸底测试 \ No newline at end of file