NVMe协议概述

当您的ECS实例需要通过NVMe协议来提升存储性能时,可以通过本文了解对ECS实例规格、镜像以及云盘的限制约束及相关操作,从而创建符合要求的ECS实例。

非易失性存储器标准接口NVMe(Non-Volatile Memory Express)是一种专为固态存储(如基于闪存的SSD)设计的高速接口协议,支持存储设备直接与CPU通信,无需经过传统存储接口和协议(如SATA、SAS)中必需的控制器,从而减少了数据传输过程中的延迟。当ECS实例基于NVMe协议挂载云盘时,允许云盘直接与ECS实例的CPU通信,从而大大减少了数据传输路径,显著降低了I/O访问的延迟时间。

使用限制

ECS实例使用NVMe协议时,对实例规格族、镜像以及云盘的要求如下:

资源

限制说明

实例规格族

实例规格族需要默认支持NVMe协议。

说明

您可以通过DescribeInstanceTypes接口查询实例规格族,再根据查询结果中的NvmeSupport参数确认实例规格族是否支持NVMe。

镜像

镜像需要包含NVMe驱动。

说明

云盘

仅支持ESSD云盘ESSD AutoPL云盘

说明
  • 支持NVMe协议的云盘被称为NVMe云盘。

  • 开启多重挂载功能的NVMe云盘被称为NVMe共享盘。NVMe共享盘支持挂载到多台ECS实例上,从而实现数据共享。更多信息,请参见云盘多重挂载功能

计费说明

NVMe协议不会产生额外费用,支持NVMe协议的相关资源仍保持各资源原有的计费方式。关于ECS资源计费的更多信息,请参见计费概述

相关操作

在使用NVMe协议提升ECS实例的存储性能时,可能涉及如下相关操作:

相关操作

说明

创建支持NVMe协议的ECS实例

自定义购买实例时,可以随实例一起创建ESSD云盘或ESSD AutoPL云盘。

单独购买ESSD云盘、ESSD AutoPL云盘或ESSD同城冗余云盘并挂载至ECS实例

  1. 创建空数据盘

    说明

    单独创建ESSD云盘或ESSD AutoPL云盘时,可选择开启多重挂载功能。更多信息,请参见云盘多重挂载功能

  2. 挂载数据盘

初始化NVMe云盘

随实例一起创建的或单独购买的NVMe云盘需要初始化才能使用。更多信息,请参见初始化数据盘

说明

初始化NVMe云盘时,云盘的设备名称和分区名称与其他云盘不同。更多信息,请参见NVMe云盘的设备名称

其他更多操作与云盘类似,请参见云盘基础操作

NVMe云盘的设备名称

当Linux实例基于NVMe协议挂载了ESSD云盘或ESSD AutoPL云盘时,云盘的设备名称和分区名称与其他云盘不同,您可以运行sudo fdisk -lu命令查看。

如下图所示表示该实例挂载了三块云盘:

  • 云盘的设备名称显示为/dev/nvmeXn1

    • 系统盘:/dev/nvme0n1

    • 数据盘:/dev/nvme1n1/dev/nvme2n1,以此类推。

  • 云盘的分区名称显示为<设备名称>p<分区号>,例如系统盘/dev/nvme0n1有3个分区,分区名称分别为/dev/nvme0n1p1/dev/nvme0n1p2/dev/nvme0n1p3

image