日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

如何為已有自定義鏡像安裝NVMe驅動?

當您的ECS實例需要通過已有的但未安裝NVMe(Non-Volatile Memory Express)驅動的自定義鏡像部署業務,并計劃通過NVMe協議來增強存儲性能時,您可以按照本文操作為已有的自定義鏡像安裝NVMe驅動,才能確保ECS實例正常啟動、業務穩定運行。

非易失性存儲器標準接口NVMe是一種專為固態存儲(如基于閃存的SSD)設計的高速接口協議,相比SCSI、virtio-blk等傳統驅動協議,它具有速度更快、傳輸帶寬更高的特點。關于NVMe的更多介紹,請參見NVMe協議介紹

操作場景

您可能在以下場景中會涉及已有自定義鏡像未安裝NVMe驅動的情況,需要按照本文操作:

  • 您是本地制作的自定義鏡像,在導入阿里云時通過鏡像檢測功能發現鏡像未安裝NVMe驅動。

  • 在購買支持NVMe協議的ECS實例規格時,無法選到自定義鏡像,可能因為鏡像與實例規格的NVMe屬性不匹配。

    說明

操作步驟

  1. 通過已有自定義鏡像創建一臺ECS實例,用于中轉自定義鏡像的數據。

    具體操作,請參見使用自定義鏡像創建實例

    重要

    創建的中轉實例會產生費用,待新的自定義鏡像創建完成后,建議您及時釋放實例,避免持續產生費用。

  2. 遠程連接新建ECS實例。

    具體操作,請參見連接方式概述

  3. 查看新建ECS實例是否包含NVMe驅動,并安裝NVMe驅動。

    云助手自動配置

    云助手提供了ecs_nvme_config插件,可以幫助您快速完成NVMe驅動配置,但是有操作系統限制。

    ecs_nvme_config插件支持的操作系統情況

    • ecs_nvme_config插件支持的操作系統:

      • Alibaba Cloud Linux

      • Anolis OS

      • CentOS/CentOS Stream

      • Debian

      • Ubuntu

      • OpenSUSE

      • SUSE Linux Enterprise Server

      • Red Hat Enterprise Linux

      • Fedora

      • Rocky Linux

      • AlmaLinux

    • 不支持ecs_nvme_config插件的操作系統版本信息:

      • CentOS/Red Hat Enterprise Linux:低于6.6的操作系統版本

      • Debian:低于9的操作系統版本

      • Ubuntu:低于16的操作系統版本

      • OpenSUSE:42操作系統版本

      • SUSE Linux Enterprise Server:低于11.4的操作系統版本

    1. 運行以下命令,檢查實例內是否已安裝云助手Agent,并檢查客戶端內是否提供了ecs_nvme_config插件。

      acs-plugin-manager --list

      image

      • 如果您運行命令后沒有返回云助手相關信息,則需要先在實例內安裝云助手Agent。具體操作,請參見安裝云助手Agent

      • 如果返回了云助手插件列表且存在ecs_nvme_config插件,請繼續下一步操作。

    2. 使用ecs_nvme_config插件,完成NVMe相關的配置。

      1. 運行以下命令,使用ecs_nvme_config插件檢查當前實例內是否有NVMe模塊,以及是否可以配置NVMe模塊。

        sudo acs-plugin-manager --exec --plugin ecs_nvme_config --params --check
        • 如果返回結果中存在如下提示信息,則表示實例中已安裝NVMe驅動,您無需進行NVMe相關的配置,可直接創建自定義鏡像。

          [SUCCESS]  Summary: Your image can Runnig on nvme instance
        • 如果返回結果中存在類似如下[ERROR]提示信息,則需要繼續執行下一步操作。

          [ERROR]  1.initrd/initramfs not has nvme module, Please run acs-plugin-manager --exec --plugin ecs_nvme_config --params -f/--fix to enable nvme;
      2. 根據檢查結果中的提示信息,配置NVMe驅動以及相關參數信息。

        sudo acs-plugin-manager --exec --plugin ecs_nvme_config --params --fix
      3. 完成配置后,運行以下命令,重啟實例。

        sudo reboot
      4. 重啟實例后,重新檢查NVMe模塊是否配置成功。

        sudo acs-plugin-manager --exec --plugin ecs_nvme_config --params --check

        配置成功的返回示例如下:

        [OK]  1.initrd/initramfs already contain nvme module;
        
        [OK]  2.fstab file looks fine and does not contain any device names;
        
        [OK]  3.The nvme parameters already included.
        
        [SUCCESS]  Summary: Your image can Runnig on nvme instance

    手動配置(CentOS/Alibaba Cloud Linux系列

    1. 運行以下命令,查看系統內核是否已經加載了NVMe驅動。

      cat /boot/config-`uname -r` | grep -i nvme | grep -v "^#"

      image

      • 如果返回結果CONFIG_BLK_DEV_NVME=y,則表示該操作系統可以直接在支持NVMe協議的實例規格族上啟動,可以直接執行步驟ⅳ

      • 如果返回結果CONFIG_BLK_DEV_NVME=m,需要依次完成以下操作。

    2. 運行以下命令,查看initramfs中是否包含NVMe驅動。

      sudo lsinitrd /boot/initramfs-`uname -r`.img | grep -i nvme | awk '{print $NF}'

      image

      • 如果返回如圖所示的結果,則表示該操作系統可以直接在支持NVMe協議的實例規格族上啟動,可以直接執行步驟ⅳ

      • 如果沒有返回如圖所示的結果,需要依次完成以下操作。

    3. 依次運行以下命令,使initramfs支持NVMe驅動。

      mkdir -p /etc/dracut.conf.d
      echo 'add_drivers+=" nvme nvme-core "' | sudo tee /etc/dracut.conf.d/nvme.conf > /dev/null
      sudo dracut -v -f
      說明

      如果您的操作系統沒有安裝dracut工具,您需要先運行sudo yum -y install dracut安裝dracut工具。

    4. 在GRUB中添加NVMe相關的io_timeout參數。

      說明
      • 在GRUB中添加NVMe相關的io_timeout參數主要是為了應對Linux系統中與NVMe設備相關的超時錯誤問題。將超時值設為最大,系統在處理NVMe設備的I/O請求時不會因超時問題而導致故障。

      • 大部分Linux發行版本中io_timeout參數默認配置為30秒。在新版本的內核中,需要將io_timeout參數設置為最大值4,294,967,295秒,低內核版本中需要設置為255秒。

      1. 運行以下命令,打開grub文件。

        sudo vi /etc/default/grub
      2. i鍵進入編輯模式,在GRUB_CMDLINE_LINUX=一行中,添加nvme_core.io_timeout=4294967295 nvme_core.admin_timeout=4294967295參數信息。

        添加參數后,文件內容如下圖所示:

        image

        說明

        如果配置文件中默認已存在相同的參數信息,則無需再次添加。

      3. Esc鍵退出編輯模式,輸入:wq并按Enter鍵,保存退出文件。

    5. 運行以下命令,使配置的GRUB生效。

      根據ECS實例的啟動模式不同,選擇以下適用于您的命令:

      • BIOS(Legacy)啟動模式

        sudo grub2-mkconfig -o /boot/grub2/grub.cfg
      • UEFI啟動模式

        sudo grub2-mkconfig -o /boot/efi/EFI/centos/grub.cfg
        說明

        關于ECS實例啟動模式的更多說明,請參見ECS實例啟動模式最佳實踐

    6. 重新運行以下命令,查看是否有NVMe相關的返回信息。

      sudo lsinitrd /boot/initramfs-`uname -r`.img | grep -i nvme | awk '{print $NF}'

      如果有類似于如下圖所示的返回結果,則表示已配置完成,該操作系統可以直接在支持NVMe協議的實例規格族上啟動。

      image

    手動配置(Ubuntu/Debian系列)

    1. (可選)運行以下命令,查看initrd中包含的NVMe驅動。

      lsinitramfs /boot/initrd.img-`uname -r` | grep -i nvme

      返回結果如下所示,Ubuntu系列操作系統的initrd中默認已經加載了NVMe驅動。image

    2. 在GRUB中添加NVMe相關的io_timeout參數。

      說明
      • 在GRUB中添加NVMe相關的io_timeout參數主要是為了應對Linux系統中與NVMe設備相關的超時錯誤問題。將超時值設為最大,系統在處理NVMe設備的I/O請求時不會因超時問題而導致故障。

      • 大部分Linux發行版本中io_timeout參數默認配置為30秒。在新版本的內核中,需要將io_timeout參數設置為最大值4,294,967,295秒,低內核版本中需要設置為255秒。

      1. 運行以下命令,打開/etc/default/grub文件。

        sudo vi /etc/default/grub
      2. i鍵進入編輯模式,在GRUB_CMDLINE_LINUX=一行中,添加nvme_core.multipath=n nvme_core.io_timeout=4294967295 nvme_core.admin_timeout=4294967295參數信息。

        添加參數后,文件內容如下圖所示:image

        說明

        如果配置文件中默認已存在相同的參數信息,則無需再次添加。

      3. Esc鍵退出編輯模式,輸入:wq并按Enter鍵,保存退出文件。

    3. 運行以下命令,使配置的GRUB生效。

      根據ECS實例的啟動模式不同,選擇以下適用于您的命令:

      • 不區分啟動模式(該命令僅適用于Ubuntu系統)

        sudo update-grub2
      • BIOS(Legacy)啟動模式

        sudo grub-mkconfig -o /boot/grub/grub.cfg
      • UEFI啟動模式

        sudo grub-mkconfig -o /boot/efi/EFI/debian/grub.cfg
      說明

      關于ECS實例啟動模式的更多說明,請參見ECS實例啟動模式最佳實踐

  4. 通過ECS實例創建新的自定義鏡像,新建的自定義鏡像已包含NVMe驅動。

    具體操作,請參見使用實例創建自定義鏡像

  5. 修改新自定義鏡像的NVMe驅動屬性為支持

    具體操作,請參見修改鏡像的屬性和標簽

  6. (可選)通過新建已支持NVMe的自定義鏡像重新部署業務,例如創建ECS實例。

    具體操作,請參見使用自定義鏡像創建實例。在創建過程中,ECS實例規格請選擇支持NVMe協議的實例規格。

    說明

    業務部署完成后,建議您及時刪除舊自定義鏡像,避免資源浪費。具體操作,請參見刪除自定義鏡像

相關文檔