/gobonniego-release

GoBonnieGo BOSH Release (disk benchmarking tool)

Primary LanguageShellApache License 2.0Apache-2.0

gobonniego-release

GoBonnieGo BOSH Release (disk benchmarking tool)

Upload The Release

bosh upload-release --sha1=7cb7a231c4231ef5cacc4b89208e72f468afa2cc https://github.com/cunnie/gobonniego-release/releases/download/1.0.5/gobonniego-release-1.0.5.tgz

Example

On Google's Cloud, let's test a 256 GiB pd-standard disk.

First, let's create a Cloud Config that has the disk we want to test:

disk_types:
- name: pd-standard-256
  disk_size: 262_144
  cloud_properties:
    type: pd-standard

Next, let's upload our configuration to our BOSH Director:

bosh update-config --type=cloud --name=gobonniego gce-cc.yml

Create a BOSH deployment manifest (gobonniego.yml):

name: gobonniego

instance_groups:
- name: pd-standard-256
  lifecycle: errand
  instances: 1
  jobs:
  - name: gobonniego
    release: gobonniego
    properties:
      dir: /var/vcap/store/gobonniego
      args: -seconds 86400 -iops-duration 60 -json
  persistent_disk_type: pd-standard-256

Deploy our manifest:

bosh -d gobonniego deploy gobonniego.yml

Instruct BOSH to run the errand, specifying all output in JSON. Use jq to extract the output of the BOSH errand (which also happens to be JSON), and save that to a file:

bosh -e gce -d gobonniego run-errand pd-standard-256 --json |
  jq -r .Tables[].Rows[].stdout > gce_pd-standard-256.json

Look here for a real-world example of Cloud Configs and manifests used to benchmark many different kinds of disks.

Developer Notes

Developer notes, such as building and test a release, are available here.