Find file History

Kubernetes DigitalOcean provisioner


You should NOT use this provisioner for new clusters!

It is recommended to switch to the official DigitalOcean CSI driver.

The provisioner will be updated on a best-effort basis, but eventually it will be removed (k8s ~1.13-1.15).


This is an simple provisioner for DigitalOcean Block Storage.


  1. Get a DigitalOcean access-token here.
    base64 the token and insert it into manifests/digitalocean-secret.yaml.
    Create the secret: kubectl create -f manifests/digitalocean-secret.yaml
  2. Deploy the RBAC policies: kubectl create -f manifests/rbac
  3. Deploy the provisioner: kubectl create -f manifests/digitalocean-provisioner.yaml
  4. Adjust the hostPath in manifests/digitalocean-flexplugin-deploy.yaml
    Deploy the flex plugin "installer": kubectl create -f manifests/digitalocean-flexplugin-deploy.yaml
  5. Modify the zone in manifests/sc.yaml
    Deploy the default StorageClass: kubectl create -f manifests/sc.yaml
  6. (optional) Try it out with the example pod and PVC
    kubectl create -f examples/pvc.yaml
    kubectl create -f examples/pod-application.yaml


  • Support multi zones
  • Rewrite flexvolume plugin in Go
  • Prevent k8s from scheduling more than 5 disks to a single droplet
  • Improve documentation