AWS NVMe 驅動程式 - Amazon Elastic Compute Cloud

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

AWS NVMe 驅動程式

Amazon EBS 磁碟區和執行個體存放區磁碟區會公開為 Nitro 型執行個體上的 NVMe 區塊裝置。若要將 Amazon EBS 功能的效能和功能完全用於公開為 NVMe 區塊裝置的磁碟區,執行個體必須安裝 AWS NVMe 驅動程式。所有目前世代的 AWS Windows AMIs 預設都安裝了 AWS NVMe 驅動程式。

如需 EBS 和 NVMe 的詳細資訊,請參閱 Amazon EBS 使用者指南NVMe中的 Amazon Word 和 Word。 EBS 如需 SSD 執行個體存放區和 NVMe 的詳細資訊,請參閱 SSD 執行個體的 EC2 執行個體存放磁碟區

下列 AMIs 包含必要的 NVMe 驅動程式:

  • Amazon Linux 2

  • Amazon Linux AMI 2018.03

  • Ubuntu 14.04 或更新版本 (帶 linux-aws 核心)

    注意

    AWS Graviton 型執行個體類型需要具有核心的 Ubuntu 18.04 linux-aws 或更新版本

  • Red Hat Enterprise Linux 7.4 或更新版本

  • SUSE Linux Enterprise Server 12 SP2 或更新版本

  • CentOS 7.4.1708 或更新版本

  • FreeBSD 11.1 或更新版本

  • Debian GNU/Linux 9 或更新版本

確認您的執行個體具有 NVMe 驅動程式

您可以使用下列命令來確認您的執行個體具有 NVMe 驅動程式。

  • Amazon Linux、RHEL、CentOS 和 SUSE Linux Enterprise Server

    $ modinfo nvme

    如果執行個體具有 NVMe 驅動程式,則命令會傳回驅動程式的相關資訊。

  • Amazon Linux 2 和 Ubuntu

    $ ls /sys/module/ | grep nvme

    如果執行個體具有 NVMe 驅動程式,則 命令會傳回已安裝的驅動程式。

更新 NVMe 驅動程式

如果您的執行個體具有 NVMe 驅動程式,您可以使用下列程序將驅動程式更新至最新版本。

  1. 連線到您的 執行個體。

  2. 更新套件快取,以取得如下的必要套件更新。

    • 若是 Amazon Linux 2、Amazon Linux、CentOS 與 Red Hat Enterprise Linux:

      [ec2-user ~]$ sudo yum update -y
    • 若是 Ubuntu 和 Debian:

      [ec2-user ~]$ sudo apt-get update -y
  3. Ubuntu 16.04 及更新版本包含 linux-aws套件,其中包含 Nitro 型執行個體所需的 NVMe 和 ENA 驅動程式。升級 linux-aws 套件以接收如下的最新版本:

    [ec2-user ~]$ sudo apt-get install --only-upgrade -y linux-aws

    若要 Ubuntu 14.04,您可以安裝如下的最新 linux-aws 套件:

    [ec2-user ~]$ sudo apt-get install linux-aws
  4. 將執行個體重新開機以載入最新的核心版本。

    sudo reboot
  5. 重新開機後,請重新連線至您的執行個體。

PowerShell

如果您未使用 Amazon 提供的最新 AWS Windows AMIs,請使用下列程序安裝目前的 AWS NVMe 驅動程式。您應該在方便重新啟動執行個體時,執行這項更新。安裝指令碼會重新啟動您的執行個體,或是您必須重新啟動,以作為最後一個步驟。

先決條件

PowerShell 3.0 或更新版本

若要下載並安裝最新的 AWS NVMe 驅動程式
  1. 我們建議您建立 AMI 作為備份,如下所示,以防您需要復原變更。

    1. 停止執行個體時,在任何執行個體存放區磁碟區的資料都會清除。在停止執行個體之前,請確認您已將執行個體存放磁碟區所需的任何資料複製到持久性儲存體,例如 Amazon EBS 或 Amazon S3。

    2. 在導覽窗格中,選擇 Instances (執行個體)。

    3. 選取需要升級驅動程式的執行個體,並依序選取 Instance state (執行個體狀態)Stop instance (停止執行個體)

    4. 停止執行個體後,請選取執行個體,依序選取 Actions (動作)Image and templates (映像和範本),然後選取 Create image (建立映像)

    5. 選擇 Instance state (執行個體狀態)Start instance (啟動執行個體)

  2. 連線到您的執行個體,並以本機管理員登入。

  3. 使用下列其中一個選項下載驅動程式並解壓縮至您的執行個體:

    • 使用瀏覽器:

      1. 將最新的驅動程式套件下載到執行個體。

      2. 將 zip 封存檔解壓縮。

    • 使用 PowerShell:

      Invoke-WebRequest https://s3.amazonaws.com/ec2-windows-drivers-downloads/NVMe/Latest/AWSNVMe.zip -outfile $env:USERPROFILE\nvme_driver.zip Expand-Archive $env:userprofile\nvme_driver.zip -DestinationPath $env:userprofile\nvme_driver
      注意

      如果您在下載檔案時收到錯誤,且您正在使用 Windows Server 2016 或更早版本,可能需要為 TLS 終端機啟用 PowerShell 1.2。您可以使用下列命令為目前的 TLS 工作階段啟用 PowerShell 1.2,然後再試一次:

      [Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12
  4. nvme_driver目錄 () 執行 install.ps1 PowerShell 指令碼,將驅動程式安裝到您的執行個體.\install.ps1。如果發生錯誤,請確定您使用 PowerShell 3.0 或更新版本。

    1. (選用) 從 AWS NVMe 版本 開始1.5.0,Windows Server 2016 及更新版本支援小型電腦系統介面 (SCSI) 持久性保留。此功能新增了對具有共用 Amazon EBS 儲存體的 Windows Server 容錯移轉叢集的支援。依預設,安裝期間系統不會啟用此功能。

      您可以在執行 install.ps1 指令碼以安裝驅動程式時啟用此功能,方法是將 EnableSCSIPersistentReservations 參數指定為 $true 值。

      PS C:\> .\install.ps1 -EnableSCSIPersistentReservations $true

      您可以在執行 install.ps1 指令碼以安裝驅動程式時停用此功能,方法是將 EnableSCSIPersistentReservations 參數指定為 $false 值。

      PS C:\> .\install.ps1 -EnableSCSIPersistentReservations $false
    2. 從 AWS NVMe 開始1.5.0install.ps1指令碼一律使用驅動程式安裝ebsnvme-id工具。

      (選用) 對於版本 1.4.01.4.11.4.2install.ps1 指令碼允許您指定 ebsnvme-id 工具是否應與驅動程式一起安裝。

      1. 若要安裝 ebsnvme-id 工具,請指定 InstallEBSNVMeIdTool ‘Yes’

      2. 如果您不想安裝工具,請指定 InstallEBSNVMeIdTool ‘No’

        如果您未指定 InstallEBSNVMeIdTool,並且工具已存在於 C:\ProgramData\Amazon\Tools,則套件預設會升級此工具。如果工具不存在,install.ps1 預設不會升級此工具。

        如果您不想將工具安裝為套件的一部分,而且想要稍後安裝它,則可以在驅動程式套件中找到最新版本或工具。或者,您可以從 Amazon S3 下載版本 1.0.0

        下載 ebsnvme-id 工具。

  5. 如果安裝程式並未重新啟動您的執行個體,請重新啟動執行個體。

Distributor

您可以使用 Distributor,即 的功能 AWS Systems Manager,一次性安裝 NVMe 驅動程式套件,或透過排定的更新進行安裝。

安裝最新的 AWS NVMe 驅動程式
  1. 如需如何使用 Distributor 安裝 NVMe 驅動程式套件的指示,請參閱 Amazon EC2 Systems Manager 使用者指南中的安裝或更新套件中的程序。

  2. 針對安裝類型,選取解除安裝並重新安裝

  3. 針對名稱,選擇 AWSNVMe

  4. (選用) 對於其他引數,您可以透過指定值來自訂安裝。必須使用有效的 JSON 語法格式化值。如需如何傳遞aws configure套件其他引數的範例,請參閱 Amazon EC2 Systems Manager 文件

    1. 從 AWS NVMe 開始1.5.0,驅動程式支援 Windows Server 2016 及更新版本的 SCSI 持久性保留。依預設,安裝期間系統不會啟用此功能。

      • 若要啟用此功能,請指定 {"SSM_EnableSCSIPersistentReservations": "true"}

      • 如果您不想啟用此功能,請指定 {"SSM_EnableSCSIPersistentReservations": "false"}

    2. 從 AWS NVMe 開始1.5.0install.ps1指令碼將一律安裝ebsnvme-id工具。

      (選用) 對於版本 1.4.01.4.11.4.2install.ps1 指令碼允許您指定 ebsnvme-id 工具是否應與驅動程式一起安裝。

      • 若要安裝 ebsnvme-id 工具,請指定 {"SSM_InstallEBSNVMeIdTool": "Yes"}

      • 如果您不想安裝工具,請指定 {"SSM_InstallEBSNVMeIdTool": "No"}

        如果您未針對 Additional Arguments (其他引數) 指定 SSM_InstallEBSNVMeIdTool,並且工具已存在於 C:\ProgramData\Amazon\Tools,則套件預設會升級此工具。如果工具不存在,套件預設不會升級此工具。

        如果您不想將工具安裝為套件的一部分,而且想要稍後安裝它,則可以在驅動程式套件中找到最新版本的工具。或者,您可以從 Amazon S3 下載版本 1.0.0

        下載 ebsnvme-id 工具。

  5. 如果安裝程式並未重新啟動您的執行個體,請重新啟動執行個體。

設定 Windows 執行個體的 SCSI 持續性保留

已安裝 After AWS NVMe 驅動程式版本 1.5.0或更新版本,您可以使用 Windows Server 2016 及更新版本的 Windows 登錄檔啟用或停用 SCSI 持續性保留。您必須重新啟動這些登錄檔的執行個體,變更才會生效。

您可以使用下列命令來啟用 SCSI 持久性保留,將 EnableSCSIPersistentReservations 設定為 的值1

PS C:\> $registryPath = "HKLM:\SYSTEM\CurrentControlSet\Services\AWSNVMe\Parameters\Device" Set-ItemProperty -Path $registryPath -Name EnableSCSIPersistentReservations -Value 1

您可以使用下列命令來停用 SCSI 持久性保留,將 EnableSCSIPersistentReservations 設定為 的值0

PS C:\> $registryPath = "HKLM:\SYSTEM\CurrentControlSet\Services\AWSNVMe\Parameters\Device" Set-ItemProperty -Path $registryPath -Name EnableSCSIPersistentReservations -Value 0