What is operator storage
Juju creates a so-called operator pod for each deployed application. The operator pod is responsible for running the charm hooks for each deployed unit’s charm. Each charm needs persistent storage so that charm state, resources etc can be preserved if the pod restarts.
Operator storage is mandatory
You must create a Juju storage pool called
operator-storage with the provider type
If no such storage pool exists, you can’t deploy any Kubernetes charms.
As with charm storage, operator storage is set up by defining a Juju storage pool which maps to a Kubernetes storage class. For operators, a specially named operator-storage pool is used.
AWS using EBS volumes
juju create-storage-pool operator-storage kubernetes storage-class=juju-operator-storage storage-provisioner=kubernetes.io/aws-ebs parameters.type=gp2
GKE using Persistent Disk
juju create-storage-pool operator-storage kubernetes storage-class=juju-operator-storage storage-provisioner=kubernetes.io/gce-pd parameters.type=pd-standard
microk8s using built-in hostPath storage
juju create-storage-pool operator-storage kubernetes storage-class=microk8s-hostpath
Any storage provisioner may be used. The only requirement is that the storage pool be named operator-storage.