在 Ubuntu 或 CentOS 上安裝 CPFS-POSIX 用戶端並掛載 CPFS 檔案系統。
前提條件
已建立檔案系統。具體操作,請參見建立檔案系統。
已為檔案系統添加 POSIX 掛載目標。具體操作,請參見添加POSIX用戶端掛載點。
已建立一台或多台運行 Ubuntu 或 CentOS 的Elastic Compute Service執行個體,且核心版本符合下表要求,同時至少具備 2 個 CPU 核和 4 GiB 記憶體。具體操作,請參見建立ECS執行個體。
作業系統類型
發行版
核心版本
RHEL 或 CentOS
8.4
4.18.0-305.19.1.el8_4
8.3
4.18.0-240.22.1.el8_3
8.2
4.18.0-193.28.1.el8_2
8.1
4.18.0-147.8.1.el8_1
8.0
4.18.0-80.11.2.el8_0
7.9
3.10.0-1160.42.2.el7
7.8
3.10.0-1127.19.1.el7
7.7
3.10.0-1062.18.1.el7
7.6
3.10.0-957.54.1.el7
7.5
3.10.0-862.14.4.el7
7.4
3.10.0-693.2.2.el7
7.3
3.10.0-514.26.2.el7
7.2
3.10.0-514.26.2.el7
Ubuntu
20.04.3 LTS
5.4.0-86-generic
重要如果當前核心版本不在支援列表中,請改用 CPFS-NFS 用戶端掛載檔案系統。具體操作,請參見CPFS-NFS用戶端掛載檔案系統(推薦)。
CentOS Linux已宣布停止維護(End of Life,EOL)。阿里雲將同步停止對 CentOS Linux公用鏡像的支援。為避免業務中斷,請及時遷移到受支援的作業系統。具體操作,請參見作業系統遷移。
CPFS-POSIX 掛載原理
本文中的目標ECS均指掛載並訪問 CPFS 檔案系統的計算節點。
CPFS 相容 POSIX 介面,通過在 Ubuntu 或 CentOS 上安裝 CPFS-POSIX 用戶端後即可掛載使用。如需通過 NFS 協議訪問 CPFS,請參見通過 CPFS-NFS 用戶端掛載檔案系統(推薦)。
添加 POSIX 掛載目標後,CPFS 會自動建立 3 個控制節點:<FSID>-<GENID>-qr-001、<FSID>-<GENID>-qr-002 和 <FSID>-<GENID>-qr-003。列表中的第一個控制節點(<FSID>-<GENID>-qr-001)為預設的 CPFS-POSIX 用戶端安裝節點。
步驟一:準備環境
在部署 CPFS-POSIX 用戶端前,需在每台目標ECS上安裝所需的核心軟體包。
Ubuntu
安裝軟體依賴包。
apt-get -y install linux-headers-`uname -r` cpp gcc binutils若返回
Unable to locate packages linux-headers,說明 apt 源中缺少對應版本的 linux-headers 包,可在Ubuntu 官網下載對應包並手動安裝。驗證 linux-headers 包版本與核心版本一致。
dpkg -l | grep linux-headers-`uname -r`
CentOS
安裝軟體依賴包。
yum -y install kernel-devel-`uname -r` cpp gcc gcc-c++ binutils若返回
No package kernel-devel available,說明 yum 源中缺少對應版本的 kernel-devel 包。執行 uname -r確認核心版本,然後在CentOS 官網下載對應包並手動安裝。查看當前核心版本。
uname -r驗證 kernel-devel 包版本與核心版本一致。
rpm -qa | grep kernel-devel-`uname -r`
步驟二:配置目標ECS安全性群組
CPFS-POSIX 用戶端需要通過網路存取控制節點。將控制節點的安全性群組添加到每台目標ECS執行個體。
擷取 CPFS-POSIX 控制節點的安全性群組 ID。
登入NAS 控制台。
在左側導航,選擇。
在頁面左上方,選擇目標檔案系統所在的資源群組和地區。

單擊目標檔案系統,進入詳情頁後單擊掛載使用。
在客戶端管理節點地區,單擊列表中第一個ECS執行個體,進入執行個體詳情頁。
在實例詳情頁面,單擊安全性群組頁簽,記錄該控制節點的安全性群組 ID/名稱。
控制節點安全性群組的名稱格式為:<FSID>-<GENID>-qr-sg。
其中,<FSID> 為 CPFS 檔案系統 ID;<GENID> 為掛載目標序號,每次建立 CPFS 掛載目標時遞增。
將控制節點安全性群組添加到目標ECS執行個體。
在左側導覽列,選擇執行個體與鏡像 > 執行個體。
在執行個體列表頁面,單擊待掛載的ECS執行個體 ID,選擇安全性群組頁簽,單擊更換安全性群組。
在更換安全性群組對話方塊的安全性群組下拉式清單中,選擇步驟 1中記錄的控制節點安全性群組(<FSID>-<GENID>-qr-sg),單擊確定。
步驟三:掛載檔案系統
串連到 CPFS-POSIX 用戶端安裝節點(即控制節點)。具體操作,請參見選擇ECS遠端連線方式。
可在客戶端管理節點地區查看用戶端管理節點列表,其中列表第一個ECS執行個體為預設安裝節點。更多資訊,請參見查看POSIX用戶端掛載點。
在控制節點上執行以下命令,將目標ECS加入用戶端叢集並安裝 CPFS-POSIX 用戶端。
cpfs add <目標ECS 1內網IP地址> <目標ECS 2內網IP地址> <目標ECS 3內網IP地址>樣本:
cpfs add 192.168.1.249 192.168.1.250 192.168.1.251cpfs add命令會在指定執行個體上安裝 CPFS-POSIX 用戶端並將其加入用戶端叢集,多個內網IP地址以空格分隔。每添加一台執行個體約耗時 2 分鐘,添加多台時建議通過screen或nohup在後台執行,避免因連線逾時中斷。說明請輸入目標ECS的內網IP地址,不要使用公網 IP。
各用戶端節點的主機名稱不能重複。
可同時添加一台或多台ECS執行個體,多個內網IP地址以空格分隔。
每添加一台ECS執行個體約耗時 2 分鐘。添加多台時,建議通過
screen或nohup在後台運行命令。
執行以下命令,確認目標ECS執行個體已出現在節點列表中。
執行命令
mmlscluster返回樣本
Node Daemon node name IP address Admin node name Designation --------------------------------------------------------------------------------------------------------- 1 cpfs-001cb78****154e3-000001-qr-001 10.0.2.41 cpfs-001cb78****154e3-000001-qr-001 quorum-manager-perfmon 2 cpfs-001cb78****154e3-000001-qr-002 10.0.2.43 cpfs-001cb78****154e3-000001-qr-002 quorum-manager-perfmon 3 cpfs-001cb78****154e3-000001-qr-003 10.0.2.42 cpfs-001cb78****154e3-000001-qr-003 quorum-manager-perfmon 4 iZbp11iqkys8rl5cwa4**** 10.0.2.44 iZbp11iqkys8rl5cwa4**** perfmon目標ECS執行個體以
perfmon節點形式出現(樣本中的節點 4)。標記為quorum-manager-perfmon的節點(節點 1-3)為控制節點。
可選:查詢預設掛載路徑。
加入用戶端叢集後,檔案系統會自動掛載到預設路徑
/cpfs/<FSID序號>。執行mmlsfs <FSID序號>-<GENID> -T命令可查詢該預設路徑。執行命令樣本
mmlsfs 001cb78****154e3-000001 -T返回樣本
flag value description ------------------- ------------------------ ----------------------------------- -T /cpfs/001cb78****154e3-000001 Default mount point
如需通過自訂路徑訪問檔案系統,執行
mount --bind命令:mount --bind /cpfs/001cb78****154e3-000001 /mnt/test其中,
/cpfs/001cb78****154e3-000001為檔案系統預設掛載路徑,/mnt/test為自訂訪問路徑。--bind選項將已掛載的目錄映射到新位置,資料不會複製。說明CPFS-POSIX 用戶端安裝節點不支援自訂掛載路徑。
不支援子目錄掛載。
掛載成功後,可像訪問本地目錄一樣訪問 CPFS 檔案系統。
常見問題
掛載CPFS檔案系統時,返回“unsupported OS for 'X86_64' architecture”錯誤該如何處理?
掛載CPFS檔案系統時,返回“make sure kernel-devel version is consistent with kernel”錯誤該如何處理?
掛載CPFS檔案系統時,返回“ssh: connect to host A port 22: Connection timed out”錯誤該如何處理?
掛載CPFS檔案系統時,返回“[FATAL] B:Could not connect to B via ssh”錯誤該如何處理?
更多掛載 CPFS 的常見問題及解決方案,請參見掛載訪問FAQ。