配置ZOS對象存儲
更新時間 2025-01-03 17:52:17
最近更新時間: 2025-01-03 17:52:17
分享文章
對象存儲(CT-ZOS,Zettabyte Object Storage)是天翼云為客戶提供的一種海量、彈性、高可靠、高性價比的存儲產品,是專門針對云計算、大數據和非結構化數據的海量存儲形態,通過S3協議和標準的服務接口,提供非結構化數據(圖片、音視頻、文本等格式文件)的無限存儲服務。您可以通過為函數計算配置ZOS掛載,讓函數使用ZOS可以實現類似本地文件系統的操作體驗,從而簡化資源訪問和數據處理流程。
使用限制
- 函數計算在同一地域下的一個函數最多支持配置5個ZOS掛載點和5個NAS掛載點。
- NAS掛載點和ZOS掛載點設置的函數運行環境中的本地目錄不能沖突。
前提條件
對象存儲 (CT-ZOS,Zettabyte Object Storage)
- 開通ZOS服務。
- 控制臺創建存儲空間。
函數計算
- 創建函數。
- 啟用ZOS掛載功能時,需要傳遞對象存儲的AK/SK。
操作步驟
步驟一:配置ZOS掛載
- 登錄函數計算控制臺,在左側導航欄,單擊函數。
- 在函數頁面,點擊目標函數,進入目標函數詳情頁。
- 在目標函數詳情頁的上方導航欄,點擊配置。
- 在左側導航欄,點擊存儲選項卡,在ZOS對象存儲區域單擊編輯,在編輯面板中配置以下參數,然后單擊部署。
| 配置項 | 說明 | 示例 |
|---|---|---|
| 掛載ZOS對象存儲 | 點擊字段下方按鈕,將展示配置內容,表示開啟ZOS配置。 | 開啟 |
| AK | ZOS服務的Access Key,可通過ZOS控制臺查看。 | - |
| SK | ZOS服務的Secret Key,可通過ZOS控制臺查看。 | - |
| ZOS掛載點 | 填寫ZOS掛載點的相關信息。 | - |
| Bucket | 選擇已創建的ZOS Bucket。 | ctZOS-bucket |
| Bucket子目錄 | 設置Bucket中的子目錄,必須為絕對路徑。留空或設置為/表示掛載Bucket的根目錄。 | /files |
| ZOS訪問地址 | 選擇Bucket后,默認選擇該Bucket對應的訪問地址。目前僅支持配置默認地址,即與函數計算的函數相同地域的Bucket的ZOS內網Endpoint。 | 默認地址 |
| 函數本地目錄 | 設置函數運行環境中的本地目錄,必須為/home、/mnt或/data的子目錄。 | /mnt/ZOS |
| 函數本地目錄權限 | 選擇Bucket掛載到函數運行環境中的本地目錄后,該目錄的訪問權限。支持設置為只讀或讀寫權限。 | 讀寫 |
說明設置的函數本地目錄不需要您手動創建,直接使用就可以。
步驟二:訪問ZOS掛載的目錄文件
完成ZOS掛載配置后,您可以通過以下步驟訪問ZOS掛載的目錄下的文件內容,即可以用訪問本地文件的方式訪問ZOS掛載目錄下的文件。
- 在函數詳情頁面,單擊代碼頁簽,在代碼編輯器中編寫代碼,然后單擊部署代碼。
本文以Python函數代碼為例,示例代碼如下。
import os
def handler(event, context):
# 掛載目錄
mount_path = '/mnt/ZOS'
# 列出掛載目錄中的文件
files = os.listdir(mount_path)
print("Files in ZOS mount:", files)
# 讀取掛載目錄中的某個文件
file_path = os.path.join(mount_path, 'ctZOS.txt')
if os.path.exists(file_path):
with open(file_path, 'r') as file:
content = file.read()
print("Content of ctZOS.txt:", content)
else:
print("ctZOS.txt does not exist.")
# 向掛載目錄中寫入文件
write_path = os.path.join(mount_path, 'output.txt')
with open(write_path, 'w') as file:
file.write("Hello, ZOS mount!")
print("Wrote to output.txt in ZOS mount.")
return "Finish ZOS Mount"
說明在上述代碼中的'ctZOS.txt'需要修改為您掛載的ZOS目錄下實際存在的文件名稱。
- 代碼部署成功后,單擊測試頁簽,進行函數測試。
執行完成后,您可以在測試頁簽的下方查看執行結果。在日志輸出頁簽下可以看到讀取的ZOS目錄下 ctZOS.txt文件的內容,同時在ZOS控制臺對應的掛載目錄下可以看到寫入的 output.txt文件內容。