使用ONTAP儲存為 FCP 和 iSCSI 配置 Ubuntu 20.04
配置 Ubuntu 20.04 以實現多路徑,並使用ONTAP儲存的 FCP 和 iSCSI 協定操作的特定參數和設定。
|
|
Linux Host Utilities 軟體包不支援 Ubuntu 作業系統。 您不需要手動設定基於核心的虛擬機器 (KVM) 設定,因為 ONTAP LUN 會自動對應到虛擬機器管理程式。 |
步驟 1 :選擇性啟用 SAN 開機
您可以將主機設定為使用 SAN 開機,以簡化部署並改善擴充性。
使用"互通性對照表工具"驗證您的 Linux 作業系統,主機匯流排介面卡( HBA ), HBA 韌體, HBA 開機 BIOS 和 ONTAP 版本是否支援 SAN 開機。
-
在伺服器BIOS中為SAN開機LUN對應的連接埠啟用SAN開機。
如需如何啟用HBA BIOS的相關資訊、請參閱廠商專屬的文件。
-
重新啟動主機並驗證作業系統是否正常運作,以確認組態是否成功。
步驟 2:確認主機的多路徑配置
您可以使用 Ubuntu 20.04 的多路徑來管理ONTAP LUN。
為確保主機正確設定多重路徑,請確認 `/etc/multipath.conf`檔案已定義,且您已針對 ONTAP LUN 設定 NetApp 建議的設定。
-
確認 `/etc/multipath.conf`檔案已結束。如果檔案不存在,請建立空白的零位元組檔案:
touch /etc/multipath.conf -
第一次 `multipath.conf`建立檔案時,您可能需要啟用並啟動多重路徑服務,才能載入建議的設定:
systemctl enable multipathdsystemctl start multipathd -
每次引導主機時,空的 `/etc/multipath.conf`零位元組檔案會自動載入 NetApp 建議的主機多重路徑參數作為預設設定。您不需要變更 `/etc/multipath.conf`主機的檔案,因為作業系統會使用多重路徑參數進行編譯,以正確辨識及管理 ONTAP LUN 。
下表顯示 ONTAP LUN 的 Linux OS 原生編譯多重路徑參數設定。
顯示參數設定
參數 設定 DETECT(偵測)_prio
是的
開發損失_tmo
"無限遠"
容錯回復
立即
fast_io_f故障_tmo
5.
功能
"2 pg_init_retries 50"
Flip_on_last刪除
"是"
硬體處理常式
「0」
no_path_retry
佇列
path_checker_
"周"
path_grouping_policy
"群組by_prio"
path_selector
"服務時間0"
Polling_時間 間隔
5.
優先
「NetApp」ONTAP
產品
LUN
Retain附加的硬體處理常式
是的
RR_weight
"統一"
使用者易記名稱
否
廠商
NetApp
-
驗證 ONTAP LUN 的參數設定和路徑狀態:
multipath -ll預設多路徑參數支援ASA、 AFF和FAS配置。在這些配置中,單一ONTAP LUN 不應需要超過四條路徑。儲存故障時,路徑超過四條可能會導致問題。
以下輸出範例顯示 ASA , AFF 或 FAS 組態中 ONTAP LUN 的正確參數設定和路徑狀態。
ASA 組態ASA 組態可最佳化通往指定 LUN 的所有路徑,使其保持作用中。如此可同時透過所有路徑提供 I/O 作業、進而提升效能。
顯示範例
# multipath -ll 3600a098038314559533f524d6c652f62 dm-24 NETAPP,LUN C-Mode size=10G features='3 queue_if_no_path pg_init_retries 50' hwhandler='1 alua' wp=rw `-+- policy='service-time 0' prio=50 status=active |- 11:0:1:13 sdm 8:192 active ready running |- 11:0:3:13 sdah 66:16 active ready running |- 12:0:1:13 sdbc 67:96 active ready running `- 12:0:3:13 sdbx 68:176 active ready running
AFF 或 FAS 組態AFF 或 FAS 組態應該有兩個路徑群組,優先順序較高或較低。較高優先順序的主動 / 最佳化路徑由集合所在的控制器提供服務。較低優先順序的路徑是作用中的,但未最佳化,因為它們是由不同的控制器提供服務。非最佳化路徑只有在最佳化路徑無法使用時才會使用。
以下範例顯示 ONTAP LUN 的輸出,其中包含兩個主動 / 最佳化路徑和兩個主動 / 非最佳化路徑:
顯示範例
# multipath -ll 3600a098038314837352453694b542f4a dm-0 NETAPP,LUN C-Mode size=160G features='3 queue_if_no_path pg_init_retries 50' hwhandler='1 alua' wp=rw |-+- policy='service-time 0' prio=50 status=active | |- 14:0:3:0 sdbk 67:224 active ready running | `- 15:0:2:0 sdbl 67:240 active ready running `-+- policy='service-time 0' prio=10 status=enabled |- 14:0:0:0 sda 8:0 active ready running `- 15:0:1:0 sdv 65:80 active ready running
步驟 3:確認主機的 iSCSI 組態
請確保已為您的主機正確配置 iSCSI。
您可以在 iSCSI 主機上執行下列步驟。
-
確認已安裝 iSCSI 啟動器套件(open-iscsi):
$apt list |grep open-iscsi您應該會看到類似以下範例的輸出:
open-iscsi/noble-updates,noble-updates,now 2.1.9-3ubuntu5.4 amd64
-
驗證 iSCSI 發起程式節點名稱,該名稱位於
/etc/iscsi/initiatorname.iscsi檔案中:InitiatorName=iqn.YYYY-MM.com.<vendor>:<host_name> -
配置位於
/etc/iscsi/iscsid.conf檔案中的 iSCSI 會話逾時參數:node.session.timeo.replacement_timeout = 5iSCSI
replacement_timeout參數控制 iSCSI 層在逾時路徑或工作階段重新建立連線之前應等待多長時間,超過此時間後,對其執行的任何命令都會失敗。您應該在 iSCSI 組態檔中將replacement_timeout的值設為 5。 -
啟用 iSCSI 服務:
$systemctl enable iscsid -
啟動 iSCSI 服務:
$systemctl start iscsid -
確認 iSCSI 服務正在執行:
$systemctl status iscsid顯示範例
●iscsid.service - iSCSI initiator daemon (iscsid) Loaded: loaded (/usr/lib/systemd/system/iscsid.service; enabled; preset: disabled) Active: active (running) since Mon 2026-01-12 12:53:18 IST; 2 days ago TriggeredBy: ● iscsid.socket Docs: man:iscsid(8) Main PID: 1127419 (iscsid) Tasks: 2 (limit: 76557) Memory: 4.3M (peak: 8.8M) CPU: 1.657s CGroup: /system.slice/iscsid.service ├─1127418 /usr/sbin/iscsid └─1127419 /usr/sbin/iscsid -
探索 iSCSI 目標:
$iscsiadm --mode discovery --op update --type sendtargets --portal <target_IP>顯示範例
iscsiadm --mode discovery --op update --type sendtargets --portal 192.168.100.197 192.168.100.197:3260,1046 iqn.1992-08.com.netapp:sn.7cd154a7d35411f0a25ed039eaa95f59:vs.8 192.168.200.199:3260,1049 iqn.1992-08.com.netapp:sn.7cd154a7d35411f0a25ed039eaa95f59:vs.8 192.168.100.199:3260,1048 iqn.1992-08.com.netapp:sn.7cd154a7d35411f0a25ed039eaa95f59:vs.8 192.168.200.197:3260,1047 iqn.1992-08.com.netapp:sn.7cd154a7d35411f0a25ed039eaa95f59:vs.8
-
登入目標:
$iscsiadm --mode node -l all -
設定 iSCSI 在主機開機時自動登入:
$iscsiadm --mode node -T <target_name> -p <ip:port> -o update -n node.startup -v automatic您應該會看到類似以下範例的輸出:
iscsiadm --mode node -T iqn.1992-08.com.netapp:sn.7cd154a7d35411f0a25ed039eaa95f59:vs.8 -p 192.168.100.197:3260 -o update -n node.startup -v automatic
-
驗證 iSCSI 工作階段:
$iscsiadm --mode session顯示範例
iscsiadm --mode session tcp: [1] 192.168.200.197:3260,1047 iqn.1992-08.com.netapp:sn.7cd154a7d35411f0a25ed039eaa95f59:vs.8 (non-flash) tcp: [2] 192.168.100.197:3260,1046 iqn.1992-08.com.netapp:sn.7cd154a7d35411f0a25ed039eaa95f59:vs.8 (non-flash) tcp: [3] 192.168.100.199:3260,1048 iqn.1992-08.com.netapp:sn.7cd154a7d35411f0a25ed039eaa95f59:vs.8 (non-flash) tcp: [4] 192.168.200.199:3260,1049 iqn.1992-08.com.netapp:sn.7cd154a7d35411f0a25ed039eaa95f59:vs.8 (non-flash)
步驟 4 :選擇性地將裝置排除在多重路徑之外
如果需要,您可以將不需要的裝置的 WWID 新增至檔案的「黑名單」區段,以排除裝置的多重路徑 `multipath.conf`功能。
-
判斷 WWID :
/lib/udev/scsi_id -gud /dev/sda「 SDA 」是您要新增至黑名單的本機 SCSI 磁碟。
例如 WWID
360030057024d0730239134810c0cb833。 -
將 WWID 新增至「黑名單」區:
blacklist { wwid 360030057024d0730239134810c0cb833 devnode "^(ram|raw|loop|fd|md|dm-|sr|scd|st)[0-9]*" devnode "^hd[a-z]" devnode "^cciss.*" }
步驟 5 :自訂 ONTAP LUN 的多重路徑參數
如果您的主機已連接至其他廠商的 LUN ,而且任何多重路徑參數設定都會被覆寫,則您需要在稍後的檔案中新增特定套用至 ONTAP LUN 的節點來修正這些設定 multipath.conf。如果您不這麼做, ONTAP LUN 可能無法如預期般運作。
請檢查您的 `/etc/multipath.conf`檔案,尤其是在預設值區段中,以瞭解可能會覆寫的設定多重路徑參數的預設設定。
|
|
您不應覆寫 ONTAP LUN 的建議參數設定。這些設定是主機組態最佳效能所必需的。如需詳細資訊,請聯絡 NetApp 支援,您的作業系統廠商或兩者。 |
下列範例說明如何修正被覆寫的預設值。在此範例中,檔案會 multipath.conf`定義與 ONTAP LUN 不相容的值 `path_checker, no_path_retry`而且您無法移除這些參數,因為 ONTAP 儲存陣列仍連接至主機。而是修正和 `no_path_retry`的值 `path_checker,方法是將裝置節新增至 `multipath.conf`特定適用於 ONTAP LUN 的檔案。
顯示範例
defaults {
path_checker readsector0
no_path_retry fail
}
devices {
device {
vendor "NETAPP"
product "LUN"
no_path_retry queue
path_checker tur
}
}
步驟 6 :檢閱已知問題
沒有已知問題。
接下來呢?
-
了解 Ubuntu Linux 虛擬化 (KVM)
Ubuntu Linux 可以作為 KVM 主機。這樣,您就可以使用基於 Linux 核心的虛擬機器 (KVM) 技術在單一實體伺服器上執行多個虛擬機器。KVM 主機不需要對ONTAP LUN 進行明確主機設定設定。