如何使用 Ansible playbook 在 Linux VM 上可靠地分区和挂载 Azure 托管磁盘的文件系统?
我可以创建一个 Azure 托管磁盘azure_rm_manageddisk
并将其分配给 VM 实例。当我尝试使用磁盘时,我的问题就开始了。我只是不知道如何可靠地针对正确的托管磁盘进行分区和文件系统安装。
似乎也azure_rm_manageddisk
没有返回可以从操作系统端引用的磁盘的可靠、明确的 id。azure_rm_manageddisk_info
我认为磁盘甚至blkid
在分区之前都不会出现。
微软已经记录了
默认情况下,当你创建 VM 时,Azure 会为你提供一个 OS 磁盘 (/dev/sda) 和一个临时磁盘 (/dev/sdb)。您添加的所有其他磁盘都显示为 /dev/sdc、/dev/sdd、/dev/sde 等。
(来源:https ://docs.microsoft.com/en-us/azure/virtual-machines/linux/optimization )
但这似乎并不可靠。我想我在创建后看到我的 VM 的设置与此不同,并且在重新启动后肯定会发生变化。所以不相信/dev/sdc
我的看法。如果块设备文件不稳定,重新运行剧本可能会造成各种破坏。实际上,我已经设法使我的根分区在/media/my_data_disk_mount
.
这只是我必须手动处理的事情吗?似乎很奇怪。这是很常见的事情。
还有/dev/disk/azure/resource
例如,但这似乎也导致了混乱的结果。
(来源:https ://docs.microsoft.com/en-us/azure/virtual-machines/troubleshooting/troubleshoot-device-names-problems )
也许与 LUN 编号有关?