milvus/tests/python_client/scale
ThreadDao 0ed65a878f
[skip e2e] Enable expand indexnode test release uninstall (#14869)
Signed-off-by: ThreadDao <yufen.zong@zilliz.com>
2022-01-05 17:49:20 +08:00
..
constants.py [skip e2e] Remove unused scale constants (#14299) 2021-12-27 15:26:39 +08:00
README.md [skip e2e] Update scale test README (#13864) 2021-12-21 15:55:46 +08:00
scale_common.py [skip ci] Update scale proxy test and delete shrink proxy (#13550) 2021-12-17 08:53:26 +08:00
test_data_node_scale.py [skip e2e] Enable scale test release uninstall (#14773) 2022-01-04 16:21:22 +08:00
test_index_node_scale.py [skip e2e] Enable expand indexnode test release uninstall (#14869) 2022-01-05 17:49:20 +08:00
test_proxy_scale.py [skip e2e] Enable scale test release uninstall (#14773) 2022-01-04 16:21:22 +08:00
test_query_node_scale.py [skip e2e] Enable scale test release uninstall (#14773) 2022-01-04 16:21:22 +08:00

Scale Tests

Goal

Scale tests are designed to check the scalability of Milvus.

For instance, if the dataNode pod expands from one to two:

  • verify the consistency of existing data

  • verify that the DDL and DML operation is working

Prerequisite

Test Scenarios

Milvus in cluster mode

  • scale dataNode replicas

  • expand / shrink indexNode replicas

  • scale queryNode replicas

  • scale proxy replicas

How it works

  • Milvus scales the number of pods in a deployment based on the milvus operator

  • Scale test decouple the milvus deployment from the test code

  • Each test scenario is carried out along the process:
    deploy milvus -> operate milvus -> scale milvus -> verify milvus

  • Milvus deployment and milvus scaling are designed in ./customize/milvus_operator.py

Run

Manually

Run a single test scenario manually(take scale dataNode as instance):

  • update update milvus image tag IMAGE_TAG in scale/constants.py

  • run the commands below:

  cd /milvus/tests/python_client/scale  
  
  pytest test_data_node_scale.py::TestDataNodeScale::test_expand_data_node -v -s  

Nightly

still in planning