阿裏雲文件存儲SMB協議服務及其申請和使用指南
阿裏雲於2016年發布了支持NFS網絡文件係統訪問協議的阿裏雲文件存儲。2017年3月,又增加了SMB文件係統訪問協議的支持,正式對外公測。本文簡單描述了SMB文件存儲訪問協議以及阿裏雲SMB協議公測功能,並簡單介紹了該服務的使用場景,以及公測申請和使用流程。
一、SMB文件係統訪問協議簡介
網絡文件係統NAS(NAS-Network Area Storage),將本地的存儲空間共享給其他主機使用, 通過 C/S 架構實現文件級別的共享,多個客戶端計算機可以並發訪問同一個文件係統。常見的 NAS 訪問協議有NFS 和SMB/CIFS。
NFS: 全稱Network File System, 是最初由Sun Microsystems公司開發,並於1984年發布的分布式文件係統協議。其功能旨在允許客戶端主機可以像訪問本地存儲一樣通過網絡訪問服務器端文件。NFS 是一個基於開放網絡運算遠程過程調用(ONC RPC)協議之上的開放、標準的RFC協議,任何人或組織都可以依據標準實現它。NFS是在UNIX及類UNIIX係統中最常用的網絡文件訪問協議,但是Windows客戶端對NFS協議的支持不太好。
SMB全稱Server Message Block,又稱CIFS(Common Internet File System, 主要指SMB2之前的SMB協議),是一種用來訪問網絡中比如文件,打印機和其他共享網絡資源的應用層通信協議。 它起源於80年代由IBM開發的將DOS本地文件訪問轉化為網絡文件係統的協議,後來由微軟將其和局域網管理器結合發展起來,被廣泛應用於微軟的Windows操作係統中作為網絡資源共享通信協議。後來微軟又在這個基礎上引入了SMB2協議,以及後來的SMB 2.1, SMB 3.0, SMB 3.02, SMB 3.1.1版本。相對於NFS,SMB文件係統訪問協議更加適合於Windows客戶端,各個版本的Windows對SMB協議的支持更加完善。
二、阿裏雲文件存儲SMB協議服務介紹
阿裏雲文件存儲服務NAS(阿裏雲NAS)是阿裏雲在2016年正式推出的公有雲上的網絡文件存儲實現。阿裏雲NAS主要麵向阿裏雲 ECS 實例、HPC、Docker、彈性Web和BatchCompute 等計算節點提供文件存儲服務。通過標準的文件訪問協議,用戶無需對現有應用做任何修改,即可在雲上使用具備無限容量及性能擴展、單一命名空間、多共享、高可靠和高可用等特性的分布式文件係統。阿裏雲NAS目前已經正式支持的網絡文件係統協議包括NFS V3/V4以及SMB。阿裏雲NAS使用的一些典型的商業場景主要包括網站內容服務、企業數據共享應用、多媒體信息工作流處理以及大數據分析等等。
用戶創建NAS文件係統實例和掛載點後,即可在 ECS、HPC、Docker、彈性Web和BatchCompute等計算節點內通過標準網絡文件係統協議如NFS/SMB掛載文件係統,然後使用標準的係統文件接口對文件係統進行訪問。用戶在這個地域(Region)中所有的數據中心(Zone)裏部署的計算節點都可以同時掛載同一個文件係統,共享文件和目錄。這些計算節點可以通過多個不同私有網絡(VPC)和經典網絡(Classic Network)來共享訪問同一個文件係統。下圖給出了一個共享文件係統在華東區域被4個ECS實例通過兩個不同的VPC以及經典網絡同時訪問的例子。
阿裏雲NAS共享訪問示例:一個共享文件係統在華東區域被4個ECS實例通過兩個不同的VPC以及經典網絡同時訪問
為了豐富文件係統的協議支持和滿足客戶的兼容性需求,阿裏雲文件存儲在今年3月推出SMB(Server Message Block)文件係統訪問協議的支持,並開始公測。與NFS相比,SMB文件係統訪問協議更加適合於Windows客戶端,各個版本的Windows對SMB協議的支持更加完善,絕大多數Windows應用程序不經修改即可通過SMB協議訪問阿裏雲文件存儲服務。因此,阿裏雲建議應用集中運行在Windows客戶端的用戶優先考慮使用SMB文件係統訪問協議。阿裏雲是目前市場上唯一一個全麵支持NFS和SMB協議的公有雲廠商。
阿裏雲NAS SMB協議支持公測目前在上海區域(華東2)開始公測(https://www.aliyun.com/product/nas ),有意使用SMB文件係統的用戶可以開始提出公測申請。在5月下旬,我們會在杭州區域(華東1)、深圳區域(華南區)以及華北區域開始SMB公測服務,在其他區域也會陸續開通。另外,該服務會在今年的秋天開始正式商業化。
公測期間主要功能如下:
- 1. 支持SMB 2.0及以上的SMB協議版本,對應支持Windows Vista / Windows Server 2008及以上的各Windows版本,不支持Windows XP / Windows Server 2003及以下的各Windows版本。做出這一選擇的主要原因是SMB 1.0與SMB 2.0 及以後的版本相比,由於協議設計的巨大差異在性能和功能上有嚴重的不足,同時隻支持SMB1.0或更早協議版本的Windows產品都已經完全退出微軟支持的生命周期。在這裏我們用SMB指代阿裏雲NAS支持SMB 2.0及以上的各個SMB協議版本。
- 2. 文件係統容量和性能線性擴展,單一命名空間;單文件係統最大容量10PB,最大文件個數10億。
- 3. 支持專有網絡和經典網絡環境中的安全訪問,控製保障用戶數據的私密性:提供掛載點權限組;控製台訪問(管控API)支持RAM。
- 4. 訪問方式: 每個掛載點隻提供一個share, 統一命名為"myshare"。用戶用"\\mount_point\myshare"來訪問這個SMB share。用戶的多個虛擬機可以在阿裏雲的經典網絡或VPC網絡中同時訪問同一個SMB文件係統。
- 5. 與NFS文件係統基於同一個分布式高可用的底層文件係統,提供一致的SLA保證。文件數量和長度的支持限製也與NFS一致。
目前公測階段不支持的功能如下:
- 1. 不支持Linux客戶端訪問
- 2. 不支持用戶用NFS和SMB訪問同一個文件係統, 不支持通過廣域網直接訪問SMB文件係統
- 3. 隻提供在文件係統級的讀寫權限控製,不提供文件/目錄級別的ACL權限控製
- 4. 不支持文件擴展屬性(Extended attributes)以及基於Oplocks和Lease的客戶端緩存
- 5. 不支持Sparse files,文件壓縮,網卡狀態查詢, 重解析點(Reparse Point)等IOCTL/FSCTL操作。
- 6. 不支持交換數據流(Alternate Data Streams)
- 7. 不支持SMB Direct, SMB Multichannel, SMB Directory Leasing, Persistent File Handle等SMB 3.0及以上版本的一些協議功能。
三、SMB協議NAS服務的幾個典型應用場景
1. Web內容發布和管理
Windows Server目前仍然是非常流行的網站建構平台。到2017年2月止,全球仍然有超過43%站點的Web Server采用微軟IIS (來自Netcraft February 2017 Web Server Survey),很多網站和博客係統也是基於內容管理係統例如WordPress、Joomla等和IIS在Windows平台一起實現的。在阿裏雲現有的用戶中,有很高比例的用戶選擇用阿裏雲ECS提供的獨享Windows虛擬機來提供網站服務。通過將網站內容資源集中存儲在一個高可靠,高吞吐,按量付費的阿裏雲 SMB share上,IIS可以象訪問本地文件係統一樣訪問阿裏雲NAS上的數據,從而讓用戶的網站可以實現存儲和計算服務的分離,同時計算資源和存儲資源都可以支持按需彈性擴容, 通過阿裏雲提供的負載均衡服務由多個虛擬機來共同承載一個彈性容錯的網站架構。一個簡單的示意圖如下:
2. 現有的Windows應用直接上雲
很多用戶在Windows平台上有大量程序和數據的曆史積澱,特別是很多定製的Windows程序如企業管理信息係統,ERP和CRM係統等往往都有很長的軟件生命周期。這類應用在運行時往往依賴於大規模的本地文件係統或者是on-premises的SAN或者NAS,遷移這類應用通常是用戶的業務全麵遷移上雲時麵臨的難題。通過阿裏雲NAS的SMB支持,這類Windows應用可以不需修改直接上雲運行,同時數據的可靠性和性能得到很高的保證。舉例來說,很多醫學機構運行多年的專用醫學影像存檔與通信係統(Picture archiving and communication system,PACS)使用on-premises的NAS來存儲醫學影像,醫生通過辦公室或者診室的Windows客戶端從NAS來提取和分析這些影像。阿裏雲NAS的SMB支持這樣的係統前後端直接上雲。
3. 企業級文件共享和虛擬桌麵服務
隨著越來越多的企業上雲,雲環境需要提供高性能高可用的文件共享服務來替代傳統企業中的文件服務器。對於Windows環境占主流的虛擬桌麵而言,SMB的支持更是至關重要,一些典型的應用場景如下:
- 企業傳統的文件共享服務,例如文檔發布。
- 發布和管理RemoteApp 程序。
- 用戶的個人桌麵配置信息可以通過NAS提供給不同的虛擬機,從而實現用戶桌麵的自由遷移。
- 管理員可以通過阿裏雲NAS創建企業級或部門級的共享文件係統,不同的用戶在這個文件係統中擁有自己的個人目錄,支持通過不同的虛擬桌麵訪問和共享個人的數據及程序。
- Windows Hyper-V可以直接掛載SMB share上的磁盤鏡像文件(.VHD)。
下圖示意了虛擬Windows桌麵環境通過阿裏雲NAS共享文件數據的場景。
4. 媒體信息處理
很多流行的視頻音頻處理應用目前還隻能在Windows和Mac OS X上運行,阿裏雲NAS對SMB的支持使這些應用可以方便地直接上雲。用戶可以通過阿裏雲ECS來按需擴展計算能力,批量處理共享在阿裏雲NAS上的視頻音頻文件。
5. 數據備份
最近的Windows版本自帶的備份程序如Windows Server 2008 和2012中的Windows Server Backup可以按照用戶設置進行周期性的自動目錄備份,並將備份的內容保存在SMB share上。用戶也可以使用第三方備份應用如Acronis Backup甚至是rsync來將數據文件備份到阿裏雲NAS的SMB share上。下圖給出了不同用戶/程序/服務的數據從ECS雲盤或者其它NAS share由用戶Windows虛擬機備份到NAS周期備份到SMB share的流程。
四、申請SMB文件係統公測流程
由於SMB文件係統目前還在公測階段,所以如果想參加SMB文件係統的公測,必須首先申請公測,如下步驟。
1. 申請SMB文件係統公測可以從阿裏雲首頁的文件存儲導航進入,如下圖所示,選擇文件存儲。

2. 然後,在文件存儲頁麵點擊“立即申請公測”或者“管理控製台”進入NAS管理控製台。

3. 在NAS管理控製台中,選擇“申請”申請SMB文件係統協議試用,申請後等待阿裏雲審批。申請後,你也可以在同一頁麵點擊“查詢申請狀態”查詢申請審核情況。

4. 阿裏雲通過你的申請後,你會收到通知,也可以通過“查詢申請狀態”查到你的申請審核通過情況,如下圖。

申請審核通過,你就可以創建文件係統了。
五、創建文件係統流程
創建文件係統的步驟如下:
- 如上麵的1、2步驟登錄NAS管理控製台, 點擊右上方的創建文件係統按鈕
- 選擇地域、可用區和類型後,創建文件係統。文件係統容量上限都為 1PB(性能型)或者10PB(容量型),按實際使用量付費;每個賬戶最多可以創建 10 個文件係統。
創建文件係統時的可選項如下:
a. 存儲類型:性能型或者容量型。目前是支持容量型,後續我們會推出容量型。

b. 協議類型:NFS(適合Linux ECS文件共享)或者SMB(適合Windows ECS文件共享),選擇SMB協議。 注意,目前SMB協議隻支持容量型存儲類型。

3. 創建文件係統後,新創建的文件係統就會出現在文件係統列表中。

六、添加掛載點
文件係統實例創建完成後,您需要為文件係統添加掛載點,用於計算節點(ECS 實例、HPC 或 Docker)掛載文件係統。
NAS 目前支持兩種類型的掛載點:VPC 類型和經典網絡類型。
1. 添加 VPC 類型掛載點
首先點擊實例列表右側的 添加掛載點,在彈出的對話框的掛載點類型處選擇 專有網絡 ,並選擇該掛載點對應的 VPC ID 和子網 ID,然後在 權限組 下拉框中選擇該掛載點綁定的權限組。初次使用,您可以選擇 VPC 默認權限組,允許同一VPC 內的任何 IP 地址通過該掛載點訪問文件係統。
2. 添加經典網絡類型掛載點
目前經典網絡類型掛載點支持 ECS 實例, Batch computer以及HPC掛載
首先點擊實例列表右側的 添加掛載點,在彈出的對話框的掛載點類型處選擇 經典網絡 ,然後在 權限組 下拉框中選擇該掛載點綁定的權限組。
出於安全原因,NAS 沒有提供經典網絡類型的默認權限組,因此初次使用時您需要 進入權限組頁麵創建一個經典網絡類型權限組,並向權限組添加合適的規則(權限組使用介紹)。
3. 查看掛載點信息
創建掛載點後,點擊實例列表右側的管理按鈕,可以查看到創建的掛載點信息
七、掛載文件係統流程
1. 前提條件
對於 ECS實例 來說,能否通過一個掛載點訪問文件係統取決於以下的條件:
- 若掛載點類型是 VPC 類型的,則隻有同一 VPC 內的 ECS 實例能夠掛載,並且掛載點所綁定的權限組中有一條規則的授權地址能夠與 ECS 實例的 VPC IP 地址匹配。
- 若掛載點類型是經典網絡類型的,則隻有屬於同一賬號的 ECS 實例能夠掛載,並且掛載點所綁定的權限組中有一條規則的授權地址能夠與 ECS 實例的內網 IP 地址匹配。
點擊此查看 權限組使用介紹。
2. SMB掛載步驟
- Windows 命令行格式
net use <掛載目標盤符> \\<掛載點域名>\myshare
- 說明
- 掛載目標盤符: 在當前 windows 機器上要掛載的目標盤符。
- 掛載點域名:指創建文件係統和掛載點時,自動生成的掛載點域名。
- myshare:固定 SMB share 名字, 不能改變。
- 示例
掛載 SMB 文件係統到盤符 Z: C:> net use z: \\014544bbf6-wdt41.cn-hangzhou.nas.aliyuncs.com\myshare
如果需要在需要在用戶重新登錄後保持映射,加上/persistent:yes選項。
注意,如果15分鍾內在文件係統上沒有操作,連接會斷開,但是一旦有操作,連接自動重連。
- 圖形化界麵掛載
選擇圖形化界麵掛載,在文件瀏覽器選擇計算機,點擊右鍵,在下拉菜單中選擇“映射網絡驅動器”。然後,選擇盤符,輸入SMB掛載地址。如果需要在用戶重新登錄後保持映射,選擇相應的選項。
注意,如果15分鍾內在文件係統上沒有操作,連接會斷開,但是一旦有操作,連接自動重連。
- 瀏覽器訪問方式
直接在文件瀏覽器地址欄輸入:\\<掛載點域名>\myshare
3. 查看掛載信息
掛載完成後,您可以在 Windows 命令行中輸入以下命令,查看您已掛載的文件係統:
C:>net use
最後更新:2017-05-22 22:01:45