Changes from 1.8.218 to 1.8.212
External Volume Validation changes
Relaxed name validation
As there are some external volume providers which require options in the volume name, the strict validation of the name on the external volume is now removed.
As the uniqueness check is based on the volume name, this may lead to some inconsistencies, for the sake of uniqueness, the following volumes are distinct:
"volumes": [
{
"external": {
"name": "name=volumename,option1=value",
},
}
],
"volumes": [
{
"external": {
"name": "option1=value,name=volumename",
},
}
],
Optional uniqueness check
Previously, Marathon would validate that an external volume with the same name is only used once across all apps. This was due to the initial implementation being focused on Rexray+EBS. However, multiple external volume providers now
allow shared access to mounted volumes, so we introduced a way to disable the uniqueness check:
A new field, container.volumes[n].external.shared
which defaults to false
. If set to true, the same volume name can be used
by multiple containers. The shared
flag has to be set to true
on all external volumes with the same name, otherwise a conflict is reported on the volume without the shared=true
flag.
"container": {
"type": "MESOS",
"volumes": [
{
"external": {
"size": 5,
"name": "volumename",
"provider": "dvdi",
"shared": "true",
"options": {
"dvdi/driver": "pxd",
"dvdi/shared": "true"
}
},
"mode": "RW",
"containerPath": "/mnt/nginx"
}
],
}