在 macOS 掛載 OpenStack Swift — NetDrive 磁碟機設定

閱讀時間 6 分鐘 provider-guide openstack macos
Robin
RobinDeveloper Advocate
使用 NetDrive 3.18+ 將 OpenStack Swift 物件儲存掛載為原生 macOS 磁碟區。逐步說明 Keystone v2/v3 驗證設定與 Finder 整合。

某資料科學團隊在自建的 OpenStack 叢集上管理 60 TB 的模型訓練資料,他們在 macOS 上需要的東西跟 Linux 上一樣:一個直接指向 Swift 的檔案系統路徑,讓 Python 腳本可以直接參照 /Volumes/swift-data/,不需要任何額外的抽象層。NetDrive 自 3.1 版起就支援 OpenStack Swift,在 macOS 14 Sonoma 或更新版本上,整個設定過程不到五分鐘。

NetDrive drive manager showing Google Drive, S3 and pCloud mounted as drive lettersMounted clouds appearing as native drives in Windows File Explorer

直接在 macOS Finder 中掛載 OpenStack Swift

NetDrive 讓 Google Drive、OneDrive、S3、SFTP、WebDAV 等在 Windows 與 macOS 上顯示為原生磁碟機 — 不需同步,也不需完整下載。

  • 將 Swift 容器以原生 /Volumes/ 項目顯示在 Finder 中
  • 支援 Keystone v2 與 v3 驗證
  • 原生 Apple Silicon 支援 — macOS 14 Sonoma 及更新版本
WindowsmacOS
下載 macOS 版 NetDrive →

免費試用。提供終身與訂閱方案。

你需要準備的憑證

開啟 NetDrive 之前,請先向你的 OpenStack 管理員或 Horizon 儀表板取得以下資訊:

  • Auth URL — Keystone 身分識別端點,例如 https://keystone.example.org:5000/v3。請務必包含版本路徑(/v2.0/v3),完全依照管理員提供的內容輸入;NetDrive 會原樣使用。
  • Username 和 Password — 你的 OpenStack 使用者憑證。部分部署會發放應用程式憑證而非使用者密碼;兩種形式都可以填入 NetDrive 的憑證欄位。
  • Project / Tenant Name — 擁有目標容器的 OpenStack 專案(Keystone v3)或租戶(Keystone v2)。即使你是叢集上唯一的使用者,這個欄位仍為必填。
  • Region — 若叢集為多地區部署,請填寫地區名稱(例如 RegionOne)。單一地區部署可留空。
  • Container Name — 要掛載為磁碟機根目錄的特定 Swift 容器。留空則以帳戶層級掛載,會在 Finder 中將所有容器顯示為頂層資料夾;填入名稱則可直接指向單一容器。

系統預設使用 HTTPS,也強烈建議保持使用 HTTPS — Swift 驗證權杖絕不應透過明文 HTTP 傳輸。

OpenStack Swift logo — object storage component of the OpenStack private cloud platform

macOS 版本注意事項: OpenStack Swift 支援自 NetDrive 3.1 版起就已存在。在 macOS 14 Sonoma 或更新版本上,你需要 NetDrive 3.18 或更高版本。若你仍在使用 macOS 13 Ventura,NetDrive 3.17 是最新的相容版本 — 以下的 Swift 設定步驟完全相同。

在 NetDrive 中新增 Swift 磁碟機

  1. 在你的 Mac 上開啟 NetDrive — 安裝後會常駐於選單列。
  2. 點選Add Drive(磁碟機管理視窗中的 + 按鈕)。
  3. 從提供者清單中選擇OpenStack Swift
  4. 填寫憑證欄位:Auth URLUsernamePasswordProject/Tenant Name。如適用,請一併填寫 RegionContainer Name
  5. 為磁碟機命名 — 這會成為 Finder 中 /Volumes/ 下顯示的磁碟區名稱。
  6. Mount Type 設為 Network Drive 以取得完整讀寫存取權,或設為 Read-only Drive 以避免此 Mac 對叢集執行寫入操作。
  7. 點選Mount

磁碟區會在幾秒內出現在 Finder 側邊欄中。參照 /Volumes/swift-data/ 的腳本可以立即執行 — 不需要修改任何路徑。

NetDrive drive manager on macOS showing multiple cloud providers including OpenStack Swift mounted as a native volume

在 Finder 中操作 Swift 檔案

掛載完成後,Swift 容器在 Finder 中的外觀與行為就跟本機磁碟機一樣。你可以在任何應用程式中直接開啟檔案 — 把 TIFF 拖進 Photoshop、在 VS Code 中開啟 JSON、用 QuickLook 預覽影片 — 儲存的變更會自動寫回物件儲存。NetDrive 是按需擷取檔案內容,並不會在掛載時就把整個容器下載到你的 Mac。

若容器內在扁平命名空間中有數萬個物件,第一次開啟時列表速度會較慢。如果遇到這種情況,在 Swift 端以前綴(prefix)整理物件會有明顯幫助 — NetDrive 會將前綴渲染為資料夾,並以漸進方式載入,而不是一次要求列出所有物件的完整清單。

Spotlight 搜尋可與已掛載的 NetDrive 磁碟區搭配使用。若你的團隊需要依檔名或中繼資料在 Swift 容器中尋找檔案,不需要任何額外設定即可使用此功能。

OpenStack Swift container content accessible as a native macOS volume in Finder, displayed alongside local drives

登入時自動掛載

若某台 Mac 會長時間保持開機,並作為通往 Swift 叢集的共用中繼站,可在磁碟機設定中將 Auto Mount 設為 On Login。這樣一來,每次有使用者登入時,磁碟區都會自動重新連線,不需要任何手動操作。

憑證會儲存在 macOS 鑰匙圈中,因此重新連線是無聲進行的,不需要輸入密碼。若你需要在任何使用者登入之前就掛載磁碟機 — 例如作為無頭檔案中繼站的 Mac mini — 請改為設定成 On Boot

NetDrive mount status indicator showing a connected and healthy OpenStack Swift volume on macOS

結語

在 macOS 上使用 NetDrive 掛載 OpenStack Swift,可以讓你獲得一個由私有雲支援的 /Volumes/ 項目 — 現有腳本不需要修改任何路徑、不需要額外管理常駐程式,並且對任何主流 OpenStack 發行版的 Keystone 驗證叢集,開箱即用 HTTPS 連線。

若同一叢集中的 Windows 工作站也需要相同的工作流程,Mount OpenStack Swift on Windows with NetDrive 涵蓋了相同的憑證設定,並改以磁碟機代號取代 Finder 磁碟區。若你的混合式基礎架構也包含 S3 相容的儲存服務,你可以透過同一套 NetDrive 安裝同時掛載兩者 — 詳見 Mount Amazon S3 on macOS with NetDrive

— Robin, NetDrive