zoukankan      html  css  js  c++  java
  • Azure: 给 ubuntu 虚机挂载数据盘

    在 azure 上创建的虚机默认会分配两个磁盘,分别是系统盘和一个临时磁盘。如果我们要在系统中安装使用 mysql 等软件,需要再创建并挂载单独的数据盘用来保存数据库文件。这是因为临时磁盘被定义为:用于临时数据处理的操作。特点是性能好(SSD),但是空间有限且存放在上面的数据没有保障(在一些情况下数据会被清空)。因此临时磁盘绝对不能用来存放重要数据。同时应用程序的数据最好也不要放在系统盘中,以便于迁移、备份和扩容。本文将介绍如何为 Azure 中的 Ubuntu 虚机添加数据磁盘,并完成相应的配置。

    为什么需要单独的过程添加磁盘?

    当我们从 portal 上创建虚机时,并未提供添加数据磁盘的相关选项。所以创建的主机只包含默认的两块磁盘:OS 盘和临时磁盘:

    并且我们能在 portal 上看到的只有一个系统盘,Azure 对用户隐藏了临时磁盘相关的配置。

    接下来我们将介绍如何为虚拟主机添加数据盘。

    检查虚机是否支持

    首先需要确认的是你创建的虚机是否支持添加数据磁盘,这个问题其实也可以忽略。因为现在最便宜的虚机都能支持添加两块数据磁盘。更贵的虚机会支持添加更多的数据盘,所以这里注意一下就可以了。可以在虚机的 size 中进行查看:

    不敢相信,Azure 在一些区域中推出了每个月只要 5.95 刀的虚机,太感人了!

    标准磁盘与托管磁盘

    标准磁盘是 Azure 早期推出的虚拟机磁盘类型,需要显式的创建一个 Azure Storage Account,这个帐户用于存储虚拟机磁盘的虚拟硬盘 (VHD) 文件。 VHD 文件作为页 Blob 存储在 Azure Storage Account 中:

    托管磁盘是新的磁盘类型,最显著的特征是 Azure 会在后台管理相关的 Storage Account,这样用户配置起来就简单很多。同时扩展起来也比较容易。当然还有很多细节上的提升,感兴趣的同学可以参考其官方文档。

    虚机使用的磁盘类型是在创建虚机配置时确定的,现在的默认值就是托管磁盘:

    本文 demo 中的磁盘类型都选择托管磁盘。

    为虚机添加数据磁盘

    好的,终于进入正题了! 在虚机的 disks 配置中点击 "Add data disk" 按钮开始添加磁盘,然后打开下拉列表并点击 "Create disk" 按钮:

    填写磁盘的名称和一些基本的配置:

    是否选择 SSD 取决于你的使用场景(SSD 还是比较贵的),默认的大小是 1 T。设置完成后点 "Create" 就可以了。最后保存磁盘配置,就可以登录到系统中查看新添加的磁盘了。

    现在登录到系统中查看磁盘情况:

    /dev/sdc 就是新磁盘。

    查看一下当前系统中的磁盘及挂载情况:

    $ df -h

    默认情况下,OS 磁盘标记为“/dev/sda”。分区名称为 /dev/sda1,挂载点为 /。
    临时磁盘标记为“/dev/sdb”。分区名称为 /dev/sdb1,挂载点为 /mnt。

    下面我们就对新添加的磁盘分区并挂载到系统中。

    挂载数据磁盘

    先使用 fdisk 命令对磁盘进行分区:

    (echo n; echo p; echo 1; echo ; echo ; echo w) | sudo fdisk /dev/sdc

    然后使用 mkfs 命令将文件系统写入分区:

    sudo mkfs -t ext4 /dev/sdc1

    最后把新的磁盘分区挂载到 /mydata 装载新磁盘使其在操作系统中可访问:

    sudo mkdir /mydata && sudo mount /dev/sdc1 /mydata

    再使用 df 命令查看结果:

    $ df -h

    磁盘分区已经挂载到了目录 /mydata。

    最后设置开机时挂载

    使用 blkid 实用工具获取磁盘的 UUID:

    $ sudo -i blkid

    输出的内容类似下面:

    /dev/sdc1: UUID="ed129dcb-b234-4fdf-877d-9ac359e1b544" TYPE="ext4" PARTUUID="6b476db1-01"

    在 /etc/fstab 文件中添加类似于以下内容的行:

    UUID=ed129dcb-b234-4fdf-877d-9ac359e1b544 /mydata  ext4    defaults,nofail,barrier=0   1  2

    保存文件就大功告成了,以后再开机时就会自动完成磁盘的挂载。到这里我们已经完成了添加数据磁盘的所有配置。

  • 相关阅读:
    LintCode "Maximum Gap"
    LintCode "Wood Cut"
    LintCode "Expression Evaluation"
    LintCode "Find Peak Element II"
    LintCode "Remove Node in Binary Search Tree"
    LintCode "Delete Digits"
    LintCode "Binary Representation"
    LeetCode "Game of Life"
    LintCode "Coins in a Line"
    LintCode "Word Break"
  • 原文地址:https://www.cnblogs.com/sparkdev/p/8108921.html
Copyright © 2011-2022 走看看