apiVersion: v1
kind: ConfigMap
metadata:
name: locustfile
data:
locustfile.py: |-
import uuid
from datetime import datetime
from locust import HttpLocust, TaskSet, task
class MetricsTaskSet(TaskSet):
_deviceid = None
def on_start(self):
self.client.verify = False
self._deviceid = str(uuid.uuid4())
@task(1)
def test_stuff(self):
self.client.get("/api/stuff")
class MetricsLocust(HttpLocust):
task_set = MetricsTaskSet
---
kind: Service
apiVersion: v1
metadata:
name: locust-master
labels:
name: locust
role: master
spec:
ports:
- port: 8089
targetPort: loc-master-web
protocol: TCP
name: loc-master-web
- port: 5557
targetPort: loc-master-p1
protocol: TCP
name: loc-master-p1
- port: 5558
targetPort: loc-master-p2
protocol: TCP
name: loc-master-p2
selector:
name: locust
role: master
type: LoadBalancer
---
kind: ReplicationController
apiVersion: v1
metadata:
name: locust-master
labels:
name: locust
role: master
spec:
replicas: 1
selector:
name: locust
role: master
template:
metadata:
labels:
name: locust
role: master
spec:
containers:
- name: locust
image: sergef/docker-library-locust:latest
volumeMounts:
- name: locustfile
mountPath: /tests
env:
- name: LOCUST_FILE
value: /tests/locustfile.py
- name: LOCUST_MODE
value: master
- name: TARGET_HOST
value: https://some.host
ports:
- name: loc-master-web
containerPort: 8089
protocol: TCP
- name: loc-master-p1
containerPort: 5557
protocol: TCP
- name: loc-master-p2
containerPort: 5558
protocol: TCP
volumes:
- name: locustfile
configMap:
name: locustfile
---
kind: ReplicationController
apiVersion: v1
metadata:
name: locust-worker
labels:
name: locust
role: worker
spec:
replicas: 10
selector:
name: locust
role: worker
template:
metadata:
labels:
name: locust
role: worker
spec:
containers:
- name: locust
image: sergef/docker-library-locust:latest
volumeMounts:
- name: locustfile
mountPath: /tests
env:
- name: LOCUST_FILE
value: /tests/locustfile.py
- name: LOCUST_MODE
value: worker
- name: LOCUST_MASTER
value: locust-master
- name: TARGET_HOST
value: https://some.host
volumes:
- name: locustfile
configMap:
name: locustfile
-
Notifications
You must be signed in to change notification settings - Fork 0
sergef/docker-library-locust
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
About
Locust Docker image and kubernetes configuration
Topics
Resources
Stars
Watchers
Forks
Releases
No releases published
Packages 0
No packages published