- based-on deliveryhero/locust
- Alternative: Locust-Swarm
minikube start --cpus 4 --memory 4G
kubectl create ns locust-plugins
export LOADTEST_NAMESPACE=load-test-ns
helm repo add locust-plugins https://kimsoungryoul.github.io/locust-plugins-helm
# see sample code more detail https://github.com/KimSoungRyoul/locust-plugins-helm/tree/main/locustfiles/example
kubectl create configmap loadtest-lib --from-file locustfiles/example/lib -n locust-plugins
kubectl create configmap loadtest-locustfile --from-file locustfiles/example/main.py -n locust-plugins
helm upgrade -i -n ${LOADTEST_NAMESPACE} locust-plugins locust-plugins/locust-plugins \
--set loadtest.name=hello-loadtest \
--set loadtest.locust_host=http://locust-plugins-sample-apiserver.${LOADTEST_NAMESPACE}.svc.cluster.local:8000 \
--set loadtest.locust_locustfile_configmap=loadtest-locustfile \
--set loadtest.locust_lib_configmap=loadtest-lib \
--set=sample_apiserver.enable=true # <---- set false if you use in prod
# minikube
kubectl get all -n locust-plugins
NAME READY STATUS RESTARTS AGE
pod/locust-plugins-grafana-56f865cfbc-7rng2 1/1 Running 0 13m
pod/locust-plugins-master-5fd7f85fd-bjgfv 1/1 Running 0 13m
pod/locust-plugins-sample-apiserver-696c9bc8b9-82z4l 1/1 Running 0 13m
pod/locust-plugins-sample-apiserver-696c9bc8b9-8zlw8 1/1 Running 0 13m
pod/locust-plugins-sample-apiserver-696c9bc8b9-qcmmn 1/1 Running 0 13m
pod/locust-plugins-timescaledb-59dd579b44-fx75n 1/1 Running 0 13m
pod/locust-plugins-worker-6c4bd49c85-26b45 1/1 Running 0 13m
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
service/locust-plugins ClusterIP 10.101.64.100 <none> 5557/TCP,5558/TCP,8089/TCP 13m
service/locust-plugins-grafana LoadBalancer 10.111.48.148 <pending> 4000:32370/TCP 13m
service/locust-plugins-sample-apiserver LoadBalancer 10.100.110.40 <pending> 8000:32286/TCP 13m
service/locust-plugins-timescaledb LoadBalancer 10.103.216.24 <pending> 5432:31502/TCP 13m
NAME READY UP-TO-DATE AVAILABLE AGE
deployment.apps/locust-plugins-grafana 1/1 1 1 13m
deployment.apps/locust-plugins-master 1/1 1 1 13m
deployment.apps/locust-plugins-sample-apiserver 3/3 3 3 13m
deployment.apps/locust-plugins-timescaledb 1/1 1 1 13m
deployment.apps/locust-plugins-worker 1/1 1 1 13m
NAME DESIRED CURRENT READY AGE
replicaset.apps/locust-plugins-grafana-56f865cfbc 1 1 1 13m
replicaset.apps/locust-plugins-master-5fd7f85fd 1 1 1 13m
replicaset.apps/locust-plugins-sample-apiserver-696c9bc8b9 3 3 3 13m
replicaset.apps/locust-plugins-timescaledb-59dd579b44 1 1 1 13m
replicaset.apps/locust-plugins-worker-6c4bd49c85 1 1 1 13m
kubectl -n locust-plugins port-forward svc/locust-plugins-grafana 3000:3000
- http://localhost:3000
kubectl -n locust-plugins port-forward service/locust-plugins 8089:8089
- http://localhost:8089
Name | Url | |
---|---|---|
kimsoungryoul | kimsoungryoul@gmail.com |