Issue with duplicate volumes being created using external EFS driver on Rancher 1.2.1

We are using an external Docker EFS volume driver to setup shared storage for our containers.

We recently moved from Rancher 1.1.4 to 1.2.1 and now I find that the volume is mounted successfully when I create a new stack. However if I upgrade the stack (create another container on the same host) or delete and re-create the stack, then I see following exceptions in the rancher server logs.

2016-12-21 23:41:01,882 ERROR [:] [] [] [] [ecutorService-8] [.e.s.i.ProcessInstanceDispatcherImpl] Unknown exception running process [instance.start:4594] on [149] java.lang.IllegalStateException: More than one volume exists for volume URI [efs:///var/lib/docker/volumes/efs/fromrancher_EFS] or name/externalId [fromrancher_EFS] and storage pool [7].

I can understand that since the volume is created per stack-it might be a problem if I delete and recreate that stack; though my assumption was that deleting the stack should also remove the persistent volume. But I don’t understand why Rancher would be creating 2 volumes if I upgrade the service.

Can someone please provide any pointers on using volumes with Rancher?

Thanks,
Anil

1 Like