Rally for ECK

Hi,

Can anyone please help me the Rally yaml files ? Need to run some benchmark on my existing ECK cluster.

Also, please guide for any documentation of Rally on ECK.

Thanks in advance.
Kailas

Hello!

Here is an example yaml job to help you get started:

  
apiVersion: batch/v1
kind: Job
metadata:
  name: bench
  namespace: bench
spec:
  template:
    spec:
      containers:
      - name: esrally
        image: elastic/rally:1.2.1
        resources:
          requests:
            memory: <MEM>Gi
            cpu: <CPU>
        command: 
        - sh
        - -c
        - |
          sed -i "s;/rally/.rally/benchmarks;/mnt/elastic-internal/rally-benchmarks;g" /rally/.rally/rally.ini;
          ELASTIC_PASS=$(cat /mnt/elastic-internal/elastic-user-secret/elastic)
          CLIENT_OPTIONS="use_ssl:true,verify_certs:false,basic_auth_user:'elastic',basic_auth_password:'$ELASTIC_PASS'"
          esrally --track=<TRACK> --challenge=<CHALLENGE> --track-params="<TRACKPARAMS>" --pipeline=benchmark-only --target-hosts=bench-es-http --client-options=$CLIENT_OPTIONS
        volumeMounts:
        - name: elastic-user-secret
          mountPath: "/mnt/elastic-internal/elastic-user-secret"
          readOnly: true
        - name: rally-benchmarks
          mountPath: "/mnt/elastic-internal/rally-benchmarks"         
      volumes:
      - name: elastic-user-secret
        secret:
          secretName: bench-es-elastic-user
      - name: rally-benchmarks
        emptyDir:
          medium: "Memory"
      restartPolicy: Never

Basically, you probably want to ensure:

  • rally is running in your k8s cluster as a Pod
  • it can connect to Elasticsearch (here we use the existing es-bench-http service of an Elasticsearch cluster named es-bench) with the cluster password and the elastic user