Estou provisionando um servidor Nova e volumes do Cinder usando um modelo de Heat.
Para identificar os volumes Cinder anexados ao meu servidor OpenStack, eu gostaria de usar os% sy_links /dev/disk/by-id/...
fornecidos por udev
. Infelizmente, estes parecem não ser confiáveis. Eu tenho os seguintes dispositivos conectados ao sistema:
# find -H /sys/class/block/* -name serial | while read x; do dev=${x%/*}; echo "$dev: $(cat $x)"; done
/sys/class/block/vda:
/sys/class/block/vdb: f78447c1-8da2-4a68-b
/sys/class/block/vdc: d85a0192-37cf-46f3-8
Portanto, deve haver links simbólicos em /dev/disk/by-id
para vdb
e vdc
. No entanto:
# ls -l /dev/disk/by-id
total 0
lrwxrwxrwx. 1 root root 9 Oct 11 16:44 virtio-d85a0192-37cf-46f3-8 -> ../../vdc
Se eu executar udevadm trigger
, o dispositivo será exibido:
# ls -l /dev/disk/by-id
total 0
lrwxrwxrwx. 1 root root 9 Oct 11 17:55 virtio-d85a0192-37cf-46f3-8 -> ../../vdc
lrwxrwxrwx. 1 root root 9 Oct 11 17:55 virtio-f78447c1-8da2-4a68-b -> ../../vdb
Mas gostaria que o dispositivo aparecesse de forma confiável na inicialização. Alguém já viu esse comportamento antes?