我使用下面的模板创建带有terraform的Azure中的VM。创建了数据磁盘,并将其用于提供阶段:
/dev/sdb1 6.9G 32M 6.5G 1% /mnt
/dev/sdc1 25G 3.7G 20G 16% /datadrive
tmpfs 341M 0 341M 0% /run/user/1000在重新启动VM之后,data_disk消失了,我在VM创建中做错了什么,我需要持久化data_disk。
/dev/sdb1 6.9G 32M 6.5G 1% /mnt
tmpfs 341M 0 341M 0% /run/user/1000terraform模板
resource "azurerm_managed_disk" "data-disk" {
name = "datadisk-${random_string.resource-id.result}"
location = data.azurerm_resource_group.azure-resource-rg.location
resource_group_name = data.azurerm_resource_group.azure-resource-rg.name
storage_account_type = "Standard_LRS"
create_option = "Empty"
disk_size_gb = "128"
}
# Create virtual machine
resource "azurerm_virtual_machine" "azure-vm" {
name = "${var.prefix}-${random_string.resource-id.result}"
location = (var.location)
(...)
storage_os_disk {
name = "${var.prefix}-${random_string.resource-id.result}-disk"
caching = "ReadWrite"
create_option = "FromImage"
managed_disk_type = "Premium_LRS"
}
storage_data_disk {
name = azurerm_managed_disk.data-disk.name
managed_disk_id = azurerm_managed_disk.data-disk.id
create_option = "Attach"
lun = 0
disk_size_gb = azurerm_managed_disk.data-disk.disk_size_gb
}
storage_image_reference {
publisher = (var.os-publisher)
offer = (var.os-offer)
sku = (var.os-sku)
version = (var.os-version)
}
(...)
}编辑
为装入数据磁盘而执行的脚本:
mountpoint /datadrive || echo -e "o\nn\np\n\n\n\n\nt\nfd\nw\n" | sudo fdisk "/dev/sdc"
sudo mkdir /datadrive
sudo mkfs -t ext4 /dev/sdc1
sudo mount /dev/sdc1 /datadrive
sudo -i blkid发布于 2020-05-08 02:29:36
要确保驱动器在重新启动后自动重新挂载,必须将其添加到/etc/fstab文件中。还强烈建议在/etc/fstab中使用UUID (通用唯一的UUID)来引用驱动器,而不仅仅是设备名称(例如,/dev/sdc1 1)。
若要通过sudo -i blkid查找新磁盘UUID,请将以下行添加到/etc/fstab文件的末尾:
UUID=33333333-3b3b-3c3c-3d3d-3e3e3e3e3e3e /datadrive ext4 defaults,nofail 1 2Note
不正确地编辑
/etc/fstab文件可能会导致无法引导的系统。如果不确定,请参考发行版的文档以获得有关如何正确编辑此文件的信息。还建议在编辑之前创建/etc/fstab文件的备份。
读取https://learn.microsoft.com/en-us/azure/virtual-machines/linux/attach-disk-portal#mount-the-disk
https://stackoverflow.com/questions/61665258
复制相似问题