Skip to content

Latest commit

 

History

History

small

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 

Setup

The described setup will work stable for setups with:

  • around 3500 updates/s for the ngsi-ld endpoint
  • ~7700 req/s for single entity retrieval requests for the ngsi-ld endpoint
  • depending on the type of query, between 3500 and 5000 req/s for queries on the ngsi-ld endpoint
  • around 3800-3900 single value updates/s for the v2 endpoint
  • ~6400 req/s for single entity retrieval requests for the v2 endpoint
  • depending on the type of query, between 1800 and 2200 req/s for queries on the v2 endpoint

Detailed reports can be found here:

Environment

Installation

⚠️ Be aware that mongo uses a node-affinity configuration in that config. Due to the resource requirements of the single instances, we select the nodes by the label "workload=mongo". You can set node labels via kubectl label nodes <NODE_NAME> workload=mongo on k8s or oc label node <NODE_NAME> workload=mongo in an openshift environment.

Add helm repos:

helm repo add fiware https://fiware.github.io/helm-charts
helm repo add bitnami https://charts.bitnami.com/bitnami
helm repo update

Install charts:

helm install mongo bitnami/mongodb -f config/mongo.yaml --namespace fiware
helm install orion-test fiware/orion -f config/orion.yaml --namespace fiware

Optimizations: To improve performance, you should set an index on the mongodb as following:

kubectl run --namespace fiware mongo-mongodb-client --rm --tty -i --restart='Never' --env="MONGODB_ROOT_PASSWORD=$MONGODB_ROOT_PASSWORD" --image docker.io/bitnami/mongodb:4.4.2-debian-10-r0 --command -- bash
mongo admin --host "mongo-mongodb-0.mongo-mongodb-headless.fiware.svc.cluster.local:27017,mongo-mongodb-1.mongo-mongodb-headless.fiware.svc.cluster.local:27017"
> use orion
> db.entities.createIndex({"_id.servicePath": 1, "_id.id": 1, "_id.type": 1});

Run test:

helm install orion-ldt ../../helm/orion-loadtest/ -n fiware -f ./testReports/orion-ld/small/reports/<ENDPOINT>/<SCENARIO>/test.yaml

Get the results:

kubectl proxy --port 8002

to see a local report go to http://localhost:8002/api/v1/namespaces/fiware/services/orion-ldt-orion-loadtest:8080/proxy/ or click this report link when running locally