Bosh cheatsheet
BOSH is a project that unifies release engineering, deployment, and lifecycle management of small and large-scale cloud software.
Check your environment:
$ bosh env
Set your deployment environment:
$ export BOSH_DEPLOYMENT=foo
if have multiple deployments in same
dir
better to use -d<deployment-name>
since many commands are bound to this variable.
To recreate your environment (virtualbox), remove the line that start with
current_manifest
from the file state.json
:
$ sed -i "" '/current_manifest_sha/d' state.json
Deploy your manifest:
$ bosh deploy deployments/foo.yml
Check your instances:
$ bosh instances
To check processes within instances:
$ bosh instances --ps
this is the output of
monit summary
To ssh into the instance of your deployment:
$ bosh ssh
If you have multiple instances:
$ bosh ssh worker/C17C59B3-FE07-4BAE-BD51-398010295BAD
To login without the uuid
:
$ bosh ssh worker/0
Show all your deployments:
$ bosh deployments
Follow logs via ssh:
$ bosh logs -f
Get logs only for a specifying job
(/var/vcap/jobs/<job name>
):
$ bosh logs -f --job foo
Within an instance:
# tail -f /var/vcap/sys/log/{*.log,*/*.log}
View a BOSH director's Cloud Config:
$ bosh cloud-config
Update params in default config:
$ bosh cloud-config > cloud.yml
Do you changes and then update the config:
$ bosh update-cloud-config cloud.yml
Update the running manifest:
$ bosh -d <your-deployment> manifest > manifest.yml
Do your changes and then re-deploy:
$ bosh -d <your-deployment> deploy manifest.yml
List available stemcells:
$ bosh stemcells
Get recent tasks
$ bosh tasks --recent
Debug output for a task:
$ bosh task <id> --debug
🔗Bosh-lite
To add more cpu, memory to the VM within virtualbox, edit virtualbox/cpi.yml
:
- cpus: 2
- memory: 4096
- ephemeral_disk: 16_384
+ cpus: 6
+ memory: 16_384
+ ephemeral_disk: 51_200
To suspend (prevent bosh not starting when rebooting):
#!/bin/sh
VBoxManage controlvm $(jq -r '.current_vm_cid' state.json) savestate
To start:
#!/bin/sh
VBoxManage startvm $(jq -r '.current_vm_cid' state.json) --type headless
🔗Delete every orphaned disk
bosh disks --orphaned | awk 'NR>0 {print $1}' | xargs -L1 bosh delete-disk -n
# or
bosh disks --orphaned | awk '$1 ~ /^disk-/ {print $1}' | xargs -L1 bosh delete-disk -n
To clean all including orphaned disks:
bosh clean-up --all