milvus/tests/python_client/scale
ThreadDao d456f0c677
Delete scale default helm chart path (#7829)
Signed-off-by: ThreadDao <yufen.zong@zilliz.com>
2021-09-13 19:38:58 +08:00
..
constants.py Delete scale default helm chart path (#7829) 2021-09-13 19:38:58 +08:00
helm_env.py Delete scale default helm chart path (#7829) 2021-09-13 19:38:58 +08:00
README.md Replace sdk source and merge tests and tests20 (#7182) 2021-08-20 11:00:56 +08:00
scale_common.py Delete scale default helm chart path (#7829) 2021-09-13 19:38:58 +08:00
test_data_node_scale.py Optmize scale helm env (#7263) 2021-08-24 16:07:52 +08:00
test_index_node_scale.py Optmize scale helm env (#7263) 2021-08-24 16:07:52 +08:00
test_proxy_scale.py Optmize scale helm env (#7263) 2021-08-24 16:07:52 +08:00
test_query_node_scale.py Optmize scale helm env (#7263) 2021-08-24 16:07:52 +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

  • expand / shrink dataNode pod

  • expand / shrink indexNode pod

  • expand / shrink queryNode pod

  • expand / shrink proxy pod

How it works

  • Milvus scales the number of pods in a deployment based on the helm upgrade

  • 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 helm_env.py

Run

Manually

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

  • update milvus helm chart path (choose one of the following)

    • export MILVUS_CHART_ENV=/your/milvus-helm/charts/milvus

    • update MILVUS_CHART = '/home/zong/milvus-helm/charts/milvus' 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