本文汇总了使用块存储时的常见问题。
- 存储容量单位包SCU问题
- ESSD云盘问题
- 一般性问题
- 性能测试问题
- SSD云盘问题
- 挂载和卸载云盘问题
- 独立云盘问题
- 云盘快照问题
- 重新初始化云盘问题
- 扩容云盘问题
- 分区操作问题
- 回滚云盘问题
- 其他问题
什么是存储容量单位包SCU?
存储容量单位包SCU(Storage Capacity Unit)是一种预付费存储售卖形态,可以抵扣云盘等部分存储产品的按量付费账单。相比于随包年包月ECS实例购买云盘的模式,存储容量单位包SCU与按量付费云盘的组合使用,兼具性价比与资源使用的灵活性。更多详情,请参见存储容量单位包概述。
哪些块存储产品可以使用存储容量单位包SCU?
- 支持抵扣的块存储产品包括ESSD云盘、SSD云盘、高效云盘和普通云盘;不支持抵扣本地盘。
- 支持抵扣的NAS产品包括容量型NAS和性能型NAS;不支持抵扣极速型NAS和低频型NAS。
- 支持抵扣快照。
- 支持抵扣的OSS产品包括标准型OSS、低频型OSS和归档型OSS。
存储容量单位包SCU可以单独使用吗?
不可以。SCU必须匹配按量付费的云盘,抵扣按量付费账单,方可发挥作用。
存储容量单位包SCU的抵扣规则是什么?
SCU按照一定的折扣系数抵扣云盘的按量付费账单。更多详情,请参见存储容量单位包抵扣规则。
SCU如何计费?
SCU按照容量定价,不同地域的价格不同。有关不同地域下SCU的价格列表,请参见块存储定价页面。
SCU可以退款吗?
什么是ESSD云盘?
ESSD云盘,又称增强型(Enhanced)SSD云盘,是阿里云推出的超高性能云盘产品。ESSD云盘结合25GE网络和RDMA技术,为您提供单盘高达100万的随机读写能力和更低的单路时延能力。更多详情,请参见ESSD云盘。
ESSD云盘提供的产品规格有哪些?
ESSD云盘按照性能级别分为不同的规格。最新的ESSD云盘性能详情,请参见ESSD云盘。
性能级别 | ESSD云盘容量范围(GiB) | 最大IOPS | 最大吞吐量(MB/s) |
---|---|---|---|
PL0 | 40~32,768 | 10,000 | 180 |
PL1 | 20~32,768 | 50,000 | 350 |
PL2 | 461~32,768 | 100,000 | 750 |
PL3 | 1,261~32,768 | 1,000,000 | 4,000 |
相比SSD云盘或者高效云盘,ESSD云盘有哪些异同?
ESSD云盘的性能指标与产品规格是如何计算的?
ESSD云盘的性能与容量线性相关,容量越大性能越高,相比SSD云盘有大幅的性能提升。更多详情,请参见ESSD云盘。
如何测试ESSD云盘的性能?
您可以通过FIO工具压测ESSD云盘性能。具体操作,请参见压测ESSD云盘IOPS性能。
ESSD云盘性能和实例性能有什么关系?
部分实例维度的存储I/O性能和实例规格成正比线性关系。例如,云服务器ECS存储增强型实例g6se的存储I/O性能跟实例规格成线性关系,同一类型的实例规格等级越高可获得的存储IOPS和吞吐量越高。
当您创建某个规格的g6se实例并挂载ESSD云盘时:
- 如果ESSD云盘的性能总和不超过实例规格族所对应的存储I/O能力,实际存储性能以ESSD云盘性能为准。
- 如果ESSD云盘的性能总和超过了实例规格族所对应的存储I/O能力,实际存储性能以该实例规格对应的存储I/O能力为准。
例如,当您创建了ecs.g6se.xlarge 16GiB规格实例后,该实例最大存储IOPS为6万。如果挂载了1块存储I/O能力为2TiB的ESSD云盘(单盘IOPS为101800),该实例最大存储IOPS只能为6万,而无法达到2TiB ESSD云盘的101800IOPS。
云服务器ECS存储增强型实例g6se的规格及性能请参见实例规格族。
ESSD云盘如何计费?
支持包年包月和按量付费。具体价格请参见价格详情页。
ESSD云盘能挂载到哪些实例规格族上?
ESSD云盘支持的实例规格族,请参见实例规格族。
可以使用什么工具测试块存储性能?
请参见测试块存储性能。
为什么用FIO测试性能时,会导致实例宕机?
FIO测试工具支持裸盘分区、文件系统两种方式测试I/O性能。如果您直接测试裸盘分区,会破坏裸盘分区中的文件系统元数据,导致无法访问该裸盘分区中的文件,甚至导致实例宕机。使用FIO的文件系统测试性能方式时,不存在上述问题。
如何根据应用需求选择可用区?
按量付费的云盘只能挂载到同一可用区的ECS实例上。
- 针对高可用性应用,建议您在不同可用区中创建多块数据盘,并挂载到对应可用区中的ECS实例上。
- 针对低网络延时应用,建议您在同一可用区中创建数据盘,并挂载到该可用区中的ECS实例上。
关于云盘的常用操作有哪些?
关于云盘的常见操作,请参见云盘概述的相关操作章节。
怎样可以查看块存储的使用情况和剩余空间?
您可以登录ECS实例,在实例内部查看块存储的使用情况和剩余空间。ECS管理控制台和ECS API暂时无法查看该类信息。
我可以压缩云盘的容量吗?
阿里云不支持缩容云盘空间。如果您购买的云盘空间较大需要减小容量,建议您先创建并挂载一个合适容量的新云盘,拷贝旧盘所需数据到新盘上,再释放旧盘。
如何提前释放包年包月云盘?
什么是I/O优化?我能将存量的ECS实例升级为I/O优化的实例吗?
I/O优化为实例与云盘之间提供更好的网络能力,可保证SSD云盘存储性能的发挥。对于I/O优化的实例,挂载SSD云盘时能够获得SSD云盘的全部存储性能。
已购买的存量ECS实例支持通过ModifyInstanceSpec和ModifyPrepayInstanceSpec将非I/O优化的实例转换为I/O优化实例。
SSD云盘具备怎样的I/O性能?
请参见块存储性能。
SSD云盘适用于哪些应用场景?
SSD云盘具有高性能、高可靠性等特点,适合数据可靠性要求高的I/O密集型应用,如MySQL、SQL Server、Oracle、PostgreSQL等中小型关系数据库场景。同时适用对数据可靠性要求高的中小型开发测试环境。
是否支持将原普通云盘更换成SSD云盘?
由于SSD云盘采用全SSD的存储介质实现,不支持将存量的普通云盘直接更换为SSD云盘。
如何购买SSD云盘,I/O优化的实例及SSD云盘的价格是多少?
请参见SSD云盘及I/O优化实例的价格详情页。
购买SSD云盘后是否支持升级?
支持升级和扩容。详情请参见扩容概述。
使用了I/O优化实例和SSD云盘之后,Linux系统在分区挂载的时候为什么报错?
SSD云盘在Linux系统内挂载点显示为/dev/vd*,与常见的挂载点/dev/xvd*有所区别。建议您按照/dev/vd*挂载点格式填写挂载命令。
普通云盘和SSD云盘添加挂载信息时需要注意什么?
Linux系统添加数据盘时,在格式化数据盘编辑分区信息时,/dev/xvdb1是普通云盘的挂载点,如果您使用的是高效云盘、SSD云盘和ESSD云盘,挂载点为/dev/vdb1。如果添加了错误的信息,使用mount -a
命令将无法挂载。解决方法如下:
- 运行
fdisk -l
查看具体的数据盘信息。 - 查看
/etc/fstab
里面添加的信息是否对应。说明 不要重复添加挂载信息,否则会导致实例开机重复挂载,系统无法启动。 - 使用vim修改
/etc/fstab
文件。 - 将错误的信息注释或者删除,添加对应的挂载信息。
- 运行
mount -a
测试是否能挂载成功。
常规的操作流程请参见分区格式化数据盘(Linux)。
什么是设备名(挂载点)?
设备名(挂载点)是云服务器ECS上云盘在磁盘控制器总线上的位置。所选配的设备名,在Linux操作系统下与磁盘设备号对应,在Windows操作系统下与磁盘管理器中的磁盘顺序一致。
什么是独立云盘?
独立云盘,即单独购买的按量付费数据盘,而不是随实例创建的数据盘。它可以在同一个可用区内的不同ECS实例之间自由挂载和卸载,但不能跨地域、跨可用区挂载。独立云盘必须挂载到实例上,并分区格式化,才能使用。详情请参见创建云盘。
一块云盘可以挂载到多台ECS实例上吗?
不能。一块云盘只能挂载到同一可用区的一台实例,不支持跨可用区挂载。
购买了按量付费云盘并挂载到ECS实例后,还需要执行挂载分区的操作吗?
单独购买了按量付费数据盘之后,您需要将该数据盘挂载到实例上,并分区格式化。详情请参见分区格式化数据盘(Linux)和分区格式化数据盘(Windows)。
为Linux实例购买了数据盘,但是系统中看不到怎么办?
如果是单独购买的按量付费数据盘,您需要分区格式化、挂载后才能使用和看到空间。详情请参见分区格式化数据盘(Linux)和挂载数据盘。
一台实例能挂载多少块云盘?
作数据盘用时,一台ECS实例最多挂载16块数据盘。更多信息,请参见块存储使用限制。
为什么挂载云盘时找不到我想挂载的实例?
请确保您的实例没有被释放,并且实例和云盘处于同一个地域的同一个可用区。
云盘和实例在不同的可用区,可以挂载吗?
不可以。您只能在同一可用区内的不同ECS实例间自由挂载和卸载按量付费云盘。
卸载云盘(数据盘)时,云盘数据会丢吗?
- 在Windows操作系统下,为了保证数据完整性,强烈建议您暂停对该云盘的所有文件系统的读写操作,否则未完成读写的数据会丢失。
- 在Linux操作系统下,您需要登录实例中对该云盘执行umount命令,命令执行成功后再进入控制台卸载云盘。
系统盘能够卸载吗?
支持卸载。详情请参见卸载或挂载系统盘。
单独购买的按量付费数据盘如何收费?
按量付费数据盘按小时为计费单位出账,如果您的账号余额不足,按量付费数据盘的服务会被停止。
为什么我单独创建的云盘和我的实例一起释放了?
云盘可以设置是否随实例自动释放。您可以通过控制台或API开启或关闭随实例释放功能。详情请参见释放云盘。
单独购买的按量付费数据盘能够挂载到包年包月ECS实例上吗?
可以。
包年包月ECS实例上的数据盘能卸载吗?
包年包月ECS实例不支持直接卸载数据盘。数据盘到期时间和实例一致,随实例一起释放。如果想要释放数据盘,您可以先将包年包月数据盘转换为按量付费数据盘,再卸载并释放数据盘。如何转换云盘的计费方式,请参见转换云盘计费方式。
我已经操作过续费变配,在续费变配期内是否还能将包年包月云盘转为按量付费云盘?
不能。您可以等到续费变配期结束后,再选择续费变配,转化为按量付费云盘。
删除云盘的时候,快照会被保留吗?
手动快照不会被删除。自动快照是否会被删除,取决于您是否设置了自动快照随磁盘释放。详情请参见设置自动快照随云盘释放。
为什么我的云盘没有自动快照了?
可以使用快照单独创建云盘吗?
可以。在单独创建按量付费云盘时,选择已有的快照创建即可。详情请参见使用快照创建云盘。
数据盘挂载问题导致数据无法访问,应该如何排查?
- 找到数据所在的云盘,并确认数据盘是否挂载在对应的ECS实例。
- 在控制台查看。详情请参见查看云盘监控信息。
- 在实例内部,使用
fdisk -l
命令查看数据盘的分区信息是否正常,并使用df -h
和mount | grep "<devpath>"
命令查看挂载情况。
- 用cat命令查看/etc/fstab文件,是否将两块云盘挂载到同一目录。
- 如果挂载在同一目录,先挂载的云盘会被后挂载的云盘替换,导致数据无法访问。建议将其中一块云盘挂载到另外一个目录下。
- 如果没有挂载在同一个目录下,但挂载信息仍显示在同一目录,使用ll命令查看挂载的两个目录是否存在连接。如果存在连接,建议用mkdir命令新建一个目录挂载,并测试能否访问数据。
重启Linux系统ECS实例后数据丢失怎么办?
- 问题现象: 重启实例后发现某一目录(例如/alidata)所有数据丢失。
- 问题原因: 运行
df -h
查看,发现没有挂载数据盘分区。 - 解决方法: 本方法以I/O优化实例为例。如果是非I/O优化实例,云盘分区格式为/dev/xvd*1,请您根据实际情况操作。
- 运行
fdisk -l
命令查看未挂载的数据盘分区。 - 运行
mount /dev/vdb1 /alidata
挂载数据盘分区。 - 运行
df -h
查看是否成功挂载数据盘分区。 - (可选)在/etc/fstab中设置开机自动挂载,避免下次出现同样问题。
- 运行
重新初始化云盘时,我的快照会丢失吗?
不会,手动快照和自动快照都不会丢失。
重启Linux系统ECS实例或者重新初始化系统盘后数据盘不见了怎么办?
- 问题现象:Linux实例重启或初始化系统之后,再登录实例运行
df -h
查看云盘挂载,发现数据不见了。 - 问题原因:
- 重启实例:如果重启实例前,您没有将挂载信息写入到/etc/fstab中,重启实例之后实例不会自动挂载数据盘。
- 重新初始化系统盘:初始化系统盘会重置/etc/fstab文件,重新初始化系统盘后实例不会自动挂载数据盘。
- 解决方案:
- 运行
mount /dev/xvdb1
命令重新挂载数据盘。 - 运行mount命令查看数据盘分区/dev/xvdb1的文件格式。
- 假设您查看到/dev/xvdb1分区使用的是ext3文件系统,执行以下命令将数据盘挂载信息写入到/etc/fstab文件中。
echo '/dev/xvdb1 /data ext3 defaults 0 0' >> /etc/fstab
- 在控制台重启ECS实例。
- 运行
Linux系统ECS实例重新初始化系统盘后如何重新挂载数据盘?
- 运行
mount
查看数据盘挂载信息。返回结果中没有/dev/vdb1的信息。
- 运行
fdisk -l
查看数据盘分区信息。 - 运行
cat /etc/fstab
查看数据盘分区/dev/vdb1原有的挂载点名称。 - 运行
mkdir /InitTest
重新创建数据盘分区的挂载点。新建的挂载点名称必须与重新初始化系统盘之前/dev/vdb1的挂载点名称保持一致。
- 运行
mount /dev/vdb1 /InitTest
重新挂载数据盘分区。 - 运行
df -h
查看挂载结果。 - 按以下步骤检测数据盘/dev/vdb1是否能自动挂载。
- 运行
umount /dev/vdb1
卸载/dev/vdb1。 - 运行
mount
查看挂载信息。如果卸载成功,返回结果中不会有/dev/vdb1的信息。
- 运行
mount -a
自动挂载/dev/vdb1。 - 运行
mount
查看挂载信息。如果自动挂载成功,返回结果中会有/dev/vdb1的信息。
- 运行
更换系统盘时,我的快照会丢失吗?
历史系统盘的手动快照仍旧保留,如果自动快照设置了自动快照随磁盘释放则会被删除。
更换系统盘应该注意什么问题?
更换系统盘之前建议您创建快照备份数据,并且您需要确保系统盘有1GiB以上的预留空间。否则更换系统盘后,实例可能无法正常启动。
系统盘价格请参见云服务器ECS详细价格总览。
如何扩容系统盘?
您可以通过控制台或者调用ResizeDisk扩容系统盘。
系统盘扩容之后是否支持再缩容?
不支持。建议您合理选择扩容范围。
所有块存储都支持系统盘扩容吗?有地域限制吗?
高效云盘、SSD云盘、ESSD云盘支持系统盘扩容。所有的地域都支持扩容系统盘。
包年包月和按量付费的ECS实例都支持扩容系统盘吗?
包年包月和按量付费的ECS实例都支持扩容系统盘。
系统盘的容量范围是多少?最大能扩容到多少?
容量范围随实例使用的镜像变化。详情请参见扩容概述。
云服务器ECS续费变配后,不支持更换系统盘时指定系统盘容量吗?
包年包月ECS实例完成续费降配操作后,只有进入新计费周期后才能扩容系统盘,当前计费周期内不支持扩容系统盘。
如何利用快照创建云盘实现无损扩容数据盘?
- 为当源数据盘创建快照。详情请参见创建一个云盘快照。
- 前往云盘购买页,选择和ECS实例相同的地域及可用区,并选择用快照创建磁盘,选择上一步生成的快照。
- 在ECS控制台,将新建数据盘挂载到同一台ECS实例上。
- 登录ECS实例,运行mount命令挂载新建云盘。有关如何挂载根据快照创建的云盘,请参见使用快照创建云盘。
- 抽检查看新建数据盘中的文件是否和源数据盘一致。
- 确认数据一致后,使用fdisk删除原有的分区表,然后再使用fdisk、mkfs.ext3等命令重新对数据盘执行分区格式化操作,使新建数据盘的可用空间变为扩容之后的大小。详情请参见扩展分区和文件系统_Linux数据盘。
- 运行
cp -R
命令将新建数据盘中的数据全部拷回源数据盘。您可以加上--preserve=all参数,保留文件的属性。
- 运行umount命令卸载新建数据盘。
- 在ECS控制台从实例上卸载并释放新建数据盘。
为什么Linux系统ECS实例扩容云盘提示Bad magic number in super-block while trying to open /dev/xvdb1?
- 问题现象:
e2fsck -f /dev/xvdb
扩容格式化云盘时提示报错Bad magic number in super-block while trying to open /dev/xvdb1 - 问题原因:可能是由于没有云盘分区导致。
- 解决方案:分别运行
e2fsck -f /dev/xvdb
和resize2fs /dev/xvdb
实现扩容。然后使用mount命令挂载云盘。
数据盘能否再次划分出一个分区用作数据存储?
支持。您可以根据需求对数据盘划分多个分区,建议您使用系统自带的工具进行分区操作。
划分了多个分区的云盘,创建的快照是针对单分区还是所有分区的?
所有分区。快照备份了整块云盘的数据,而不是该云盘的某几个分区。
云盘二次分区有哪些注意事项?
出于数据安全考虑,您需要提前创建快照备份云盘数据,发生操作失误时可以及时回滚云盘。详情请参见创建快照和使用快照回滚云盘。
写入数据与分区格式化有什么关系?
一块新云盘或新云盘分区在正常使用前,必须经过初始化,并将数据结构记录到云盘上。格式化的目的是建立文件系统。因此,在云盘上建立文件系统意味着对云盘有写入数据操作。不同的文件系统在格式化时写入的文件大小不同:
- Windows系统格式化(分为快速和正常格式化):
- 快速格式化:只是为分区分配文件系统,并重写目录表。快速格式化占用的实际空间相对较少。
- 正常格式化:不但完成快速格式化工作,还逐扇区扫描分区以确定和标记坏扇区,填充云盘空块,相当于写了云盘全盘的数据量。此时,第一份全量快照会近似于云盘容量。
- Linux系统格式化:格式化云盘后,在实例没有写入业务数据前,第一份快照的容量大小与云盘文件系统格式有关。
数据盘进行二次分区后,此时回滚快照后,数据盘是几个分区?
快照回滚是回滚到快照时间点,如果该时间点尚未进行二次分区,则没有多个分区。
回滚云盘时为什么报错“执行回滚磁盘需要停止实例,并且确保当前磁盘没有创建中的快照和没有更换过操作系统。”?
- 问题现象:回滚云盘时,报错“执行回滚云盘需要停止实例,并且确保当前云盘没有创建中的快照和没有更换过操作系统。”
- 问题原因:通常是由于云盘属性或云盘状态不符等原因导致。
- 解决方案:您可以根据实例状态和相关快照任务排查故障。
- 检查实例是否已经正常停止。
只有已停止的实例才能进行云盘回滚操作。您可以在控制台的实例列表页查看实例状态。
- 检查相关快照所关联的实例是否更换过系统盘。
如果更换了操作系统,实例的系统盘会随新镜像自动重新创建,系统盘ID会改变。所以,实例原有的快照将无法再用于回滚。但您可以基于相关快照创建自定义镜像,然后再通过更换系统盘方式指定该自定义镜像,将实例切换到相应的快照状态。详情请参见使用快照创建自定义镜像和更换操作系统(非公共镜像)。
- 检查相关快照归属的云盘是否有正在创建快照。
为保障数据一致性,如果快照归属云盘有正在进行的快照任务,将不允许进行回滚操作。您可以在实例详情页的快照页签中,查看是否存在进度不是100%,状态处于未完成的快照任务。
如果您需要强制终止相关快照任务以便尽快进行云盘回滚操作,可以勾选相应快照,并单击删除快照终止快照任务。
- 检查实例是否已经正常停止。
如何转移Linux实例系统盘中的数据?
购买Linux系统的云服务器ECS时,未挂载数据盘,使用一段时间后,系统盘空间使用率接近100%,无法满足业务需求。此时您可以新购并挂载一块数据盘,使用mv命令转移系统盘中的数据到新购的数据盘。更多详情,请参见如何迁移Linux实例系统盘中的数据。
如何跨ECS实例拷贝数据?
- Linux实例之间数据拷贝
- lrzsz方式
登录实例,安装lrzsz,然后执行rz上传,sz下载。
您也可以先用sz下载到本地,再rz上传到另一台实例上。
- FTP方式
使用sftp工具,建议用root账号登录进行下载和上传。
- wget命令
把文件或者文件夹压缩后,放在Web目录下生成一个下载URL,在另一台实例上用wget命令进行下载 。
- lrzsz方式
- Linux与Windows之间数据拷贝
建议在Linux实例上使用sftp,先下载到本地,然后使用FTP上传到Windows实例。
- Windows之间数据拷贝
- 使用FTP的方式
Windows安装FTP服务的教程请参见手动搭建FTP站点(Windows)。
- 两台实例都登录阿里旺旺进行传输
- 使用FTP的方式