I need help. I have been stuck now for several weeks. I am building out a docker cluster I just need docker to install and start. I have 3 master+proxy nodes 3 workers (with a fourth built to add / remove).
This will be wrapped up as part of a demo environment so others can play with it.
But I have an issue … with the disk side of it. I can’t believe I am the first one to have this kind of design requirement of a high performance and NSPOF cluster that can scale.
The failure comes in the method to create https://docs.docker.com/storage/storagedriver/device-mapper-driver/
I am using 25Gb iSCSI to an Storage array. 1 x 1TB LUN all nodes see and can do read write to… and MPIO working fine;
[root@icpmaster01 ~]# multipath -l
mpathc (3600507680c808191e0000000000000f6) dm-3 IBM ,2145
size=1.0T features=‘1 queue_if_no_path’ hwhandler=‘0’ wp=rw
|-± policy=‘service-time 0’ prio=0 status=active
| - 35:0:0:0 sde 8:64 active undef unknown
-± policy=‘service-time 0’ prio=0 status=enabled
- 36:0:0:0 sdf 8:80 active undef unknown mpathb (36005076810810013d00000000000003a) dm-2 IBM ,2145 size=1.0T features='1 queue_if_no_path' hwhandler='0' wp=rw
-± policy=‘service-time 0’ prio=0 status=active
|- 33:0:0:0 sdc 8:32 active undef unknown
`- 34:0:0:0 sdd 8:48 active undef unknown
[root@icpmaster01 ~]#
Two parts to this:
- How to referance a large shared LUN that all cluster nodes can use, that has a uniform name. In this example I am refering to the common multipath name /dev/mapper/mpatha
Define drive by disk UUID for Docker use on nodes
vi /etc/docker/daemon.json
{
"storage-opts": [
"dm.directlvm_device=/dev/mapper/mpatha",
"dm.thinp_percent=95",
"dm.thinp_metapercent=1",
"dm.thinp_autoextend_threshold=80",
"dm.thinp_autoextend_percent=20",
"dm.directlvm_device_force=false"
]
}
- How can I add or use a second disk, such as in this example where I have a second 1TB LUN which is higher performance, or say, I want better performance than 1 lun could give me… Can I add this to the .jason file and how would that work?
Can anyone provide examples. All the examples I google and find are /dev/sdb etc… but that is not functional in NSPOF designs where you need mpio… and so /dev/mapper/mpath#