ifupdown is actually behaving correctly in this case. It's likely that cloud-initramfs-tools should be marking the interface "iface foo inet[6] manual" in every case, since that's the indicator that seems to prevent ifdown from downing the interface.
When I had it do that, what I then found was that we had gotten to "reached shutdown target", and the system was then having timeouts in systemd watchdogs. Looking at it with systemd's debug shell, /media/root-ro (the iscsi volume) has been unmounted, and /media/root-rw (the overlayfs) is still mounted.
Interestingly, the last few things are:
[ OK ] Unmounted /media/root-rw.
[ OK ] Reached target Unmount All Filesystems.
[ OK ] Stopped target Local File Systems (Pre).
Stopped Monitoring of LVM2 mirrors, snapshots etc. using dmeventd or progress polling...
[ OK ] Stopped Remount Root and Kernel File Systems
[ OK ] Stopped Create Static Device Nodes in /dev.
[ OK ] Reached target Shutdown
5 seconds later is the "connection 1:0: ping timeout of 5 secs expired, ....
and / is still (or is that "again") mounted on overlayfs rw,relatime,lowerdir=/media/root-ro,upperdir=/media/root-rw//overlay,workdir=/media/root-rw//overlay-workdir
And then there is the collection of "INFO: task systemd:1 blocked for more than 120 seconds." log entries on the console.
ifupdown is actually behaving correctly in this case. It's likely that cloud-initramfs -tools should be marking the interface "iface foo inet[6] manual" in every case, since that's the indicator that seems to prevent ifdown from downing the interface.
When I had it do that, what I then found was that we had gotten to "reached shutdown target", and the system was then having timeouts in systemd watchdogs. Looking at it with systemd's debug shell, /media/root-ro (the iscsi volume) has been unmounted, and /media/root-rw (the overlayfs) is still mounted.
Interestingly, the last few things are:
[ OK ] Unmounted /media/root-rw.
[ OK ] Reached target Unmount All Filesystems.
[ OK ] Stopped target Local File Systems (Pre).
Stopped Monitoring of LVM2 mirrors, snapshots etc. using dmeventd or progress polling...
[ OK ] Stopped Remount Root and Kernel File Systems
[ OK ] Stopped Create Static Device Nodes in /dev.
[ OK ] Reached target Shutdown
5 seconds later is the "connection 1:0: ping timeout of 5 secs expired, .... lowerdir= /media/ root-ro, upperdir= /media/ root-rw/ /overlay, workdir= /media/ root-rw/ /overlay- workdir
and / is still (or is that "again") mounted on overlayfs rw,relatime,
And then there is the collection of "INFO: task systemd:1 blocked for more than 120 seconds." log entries on the console.