title: How to change a Kubernetes hostpath-provisioner mount path?
body: <p>With the storage add-on for MicroK8s, Persistent Volume Claims are by default given storage under <code>/var/snap/microk8s/common/default-storage</code> on the host system.  How can that be changed?</p>
  
  <p>Viewing the declaration for the <code>hostpath-provisioner</code> pod, shows that there is an environment setting called <code>PV_DIR</code> pointing to <code>/var/snap/microk8s/common/default-storage</code> - seems like what I'd like to change, but how can that be done?</p>
  
  <p>Not sure if I'm asking a MicroK8s specific question or if this is something that applies to Kubernetes in general?</p>
  
  <pre><code>$ microk8s.kubectl describe -n kube-system pod/hostpath-provisioner-7b9cb5cdb4-q5jh9
  
  Name:         hostpath-provisioner-7b9cb5cdb4-q5jh9
  Namespace:    kube-system
  Priority:     0
  Node:         ...
  Start Time:   ...
  Labels:       k8s-app=hostpath-provisioner
                pod-template-hash=7b9cb5cdb4
  Annotations:  &lt;none&gt;
  Status:       Running
  IP:           ...
  IPs:
    IP:           ...
  Controlled By:  ReplicaSet/hostpath-provisioner-7b9cb5cdb4
  Containers:
    hostpath-provisioner:
      Container ID:   containerd://0b74a5aa06bfed0a66dbbead6306a0bc0fd7e46ec312befb3d97da32ff50968a
      Image:          cdkbot/hostpath-provisioner-amd64:1.0.0
      Image ID:       docker.io/cdkbot/hostpath-provisioner-amd64@sha256:339f78eabc68ffb1656d584e41f121cb4d2b667565428c8dde836caf5b8a0228
      Port:           &lt;none&gt;
      Host Port:      &lt;none&gt;
      State:          Running
        Started:      ...
      Last State:     Terminated
        Reason:       Unknown
        Exit Code:    255
        Started:      ...
        Finished:     ...
      Ready:          True
      Restart Count:  3
      Environment:
        NODE_NAME:   (v1:spec.nodeName)
        PV_DIR:     /var/snap/microk8s/common/default-storage
      Mounts:
        /var/run/secrets/kubernetes.io/serviceaccount from microk8s-hostpath-token-nsxbp (ro)
        /var/snap/microk8s/common/default-storage from pv-volume (rw)
  Conditions:
    Type              Status
    Initialized       True 
    Ready             True 
    ContainersReady   True 
    PodScheduled      True 
  Volumes:
    pv-volume:
      Type:          HostPath (bare host directory volume)
      Path:          /var/snap/microk8s/common/default-storage
      HostPathType:  
    microk8s-hostpath-token-nsxbp:
      Type:        Secret (a volume populated by a Secret)
      SecretName:  microk8s-hostpath-token-nsxbp
      Optional:    false
  QoS Class:       BestEffort
  Node-Selectors:  &lt;none&gt;
  Tolerations:     node.kubernetes.io/not-ready:NoExecute for 300s
                   node.kubernetes.io/unreachable:NoExecute for 300s
  Events:          &lt;none&gt;
  </code></pre>