建立與管理重複的 File Storage for Classic 卷
從快照建立一個複製的檔案儲存卷,並具備可繼承且可自訂的容量與效能選項。 重複項目可以是依賴型或獨立型。
您可以建立現有 IBM Cloud® File Storage for Classic 的重複項目。 依預設,重複磁區會繼承原始磁區的容量及效能選項。 不過,這兩個屬性都可以變更。 副本具有資料的副本,直到用來建立它的 Snapshot 的復原點為止。 重複磁區可以相依於原始磁區,也可以獨立於原始磁區。
如果您是 IBM Cloud® Kubernetes Service 的「專用」帳戶使用者,請參閱 IBM Cloud Kubernetes Service 文件中您用於複製磁區的選項。
因為重複磁區的基礎是時間點 Snapshot 中的資料,所以原始磁區上需要有 Snapshot 空間,您才能建立重複磁區。 如需 Snapshot 以及如何訂購 Snapshot 空間的相關資訊,請參閱 Snapshot 文件。
重複磁區的類型
獨立副本
無論是主卷還是副本卷,皆可建立獨立的複本。 新的重複磁區會建立在與原始磁區相同的資料中心內。 若您從複本卷建立複本,該複本卷將建立在與該複本相同的数据中心中。
獨立重複磁區的一般用途
- 金級副本。 將儲存卷用作「黃金副本」,您可據此建立多個實例,以滿足各種用途。
- 重新整理資料。 請建立生產環境資料的副本,並將其掛載至非生產環境以進行測試。
- 開發與測試。 一次最多可同時建立磁區的四個重複磁區,以建立重複資料來進行開發及測試。
相依重複項
相依重複磁區是使用主要磁區中的 Snapshot 來建立。 抄本磁區無法用來建立或更新相依重複磁區。
相依重複磁區的一般用途
- 災難回復測試。 建立來源磁區的副本,並將它與抄本進行比較。 透過將複本與抄本進行比較,您可以驗證正在抄寫的資料是否完整,且在發生災難時可以使用,而不會岔斷抄寫。
- 從 Snapshot 還原。 從 Snapshot 還原具有特定檔案和日期之原始磁區上的資料,而不使用 Snapshot 還原功能來改寫整個原始磁區。
- 重新整理資料。 請建立生產環境資料的副本,並將其掛載至非生產環境以進行測試。
- 開發與測試。 一次最多可同時建立磁區的四個重複磁區,以建立重複資料來進行開發及測試。
在控制台中從特定卷建立副本
-
移至您的 File Storage for Classic 清單。 從基礎架構
>經典基礎架構選單中,點選儲存> File Storage for Classic。
-
找到並按一下磁區名稱。
-
按一下 動作
> 複製共用。
-
選取重複項是相依或獨立。
-
選擇 Snapshot 選項。
- 立即建立最新資料的 Snapshot。
- 使用先前取得的最後一個 Snapshot。
-
位置和 IOPS 設定檔仍與原始磁區相同。
-
您可以選擇以每小時或每月計費的方式為該複製卷進行配置。 會自動選取原始磁區的計費類型,您可以變更它 (如果想要的話)。
-
如果您願意,可以為新卷指定不同的 IOPS 或 IOPS 層級。 依預設,會設定原始磁區的 IOPS 指定。 會顯示可用的效能與大小組合。
- 如果您的原始磁區是 0.25 IOPS 的「耐久性」層級,則無法進行新的選擇。
- 如果您的原始磁區是 2、4 或 10 IOPS 的「耐久性」層級,則可以將新磁區移到這些層級之間的任何位置。
-
您可以更新新磁區的大小,讓它大於原始磁區。 依預設,會設定原始磁區的大小。
File Storage for Classic 可以調整為磁區原始大小的 10 倍。
-
您可以更新新磁區的 Snapshot 空間,以新增更多、更少 Snapshot 空間,或不新增 Snapshot 空間。 依預設,會設定原始磁區的 Snapshot 空間。
-
勾選方框以確認您已閱讀並同意條款,然後按一下 建立 以下訂單。
按一下 建立之後,會出現訂單確認視窗。 當您關閉視窗時,會回到資源清單。 您可以回到 File Storage for Classic 共用的清單,以按一下新佈建的副本。 共用詳細資料區段會顯示諸如「重複類型」、母項共用詳細資料頁面的鏈結,以及用來建立重複項目的 Snapshot 名稱等資訊。
透過命令列介面建立複本
開始之前,請決定您要使用的 CLI 用戶端。
- 您可以安裝 IBM Cloud CLI,並使用
ibmcloud plugin install sl來安裝 SL 外掛程式。 如需相關資訊,請參閱 使用外掛程式延伸 IBM Cloud CLI。 - 或者,您可以安裝 SLCLI。
從 IBMCLOUD CLI 建立重複項目
您可以使用 ibmcloud sl file volume-duplicate 指令來建立檔案共用的副本。 下列範例會建立檔案共用 560382016 的獨立副本。
ibmcloud sl file volume-duplicate 560382016
This action will incur charges on your account. Continue?> y
OK
Order 110554892 was placed.
> Storage as a Service
> File Storage
> 500 GBs
> 4 IOPS per GB
> 500 GB (Snapshot Space)
You may run 'ibmcloud sl file volume-list --order 110554892' to find this file volume after it is ready.
您的新副本已在幾分鐘內備妥。
$ ibmcloud sl file volume-list --order 110554892
id username datacenter storage_type capacity_gb bytes_used IOPs ip_addr lunId active_transactions rep_partner_count notes
560391190 SL02SEV1414935_269 dal09 endurance_file_storage 500 - - fsf-dal0902b-fz.service.softlayer.com - 1 0 -
如果您有特定的快照,而該快照持有您要用來建立複製磁碟區的資料,請使用 --origin-snapshot-id 選項指定該快照的 ID。
當您想要建立磁區的相依副本時,請搭配使用指令與 --dependent-duplicate 選項。 請參閱下列範例。
$ ibmcloud sl file volume-duplicate 560391190 --dependent-duplicate
This action will incur charges on your account. Continue?> y
OK
Order 110553472 was placed.
> Storage as a Service
> File Storage
> 500 GBs
> 4 IOPS per GB
> 500 GB (Snapshot Space)
You may run 'ibmcloud sl file volume-list --order 110553472' to find this file volume after it is ready.
如需此指令可用的所有參數的相關資訊,請參閱 ibmcloud sl file volume-duplicate。
透過 SLCLI 建立副本
若要建立 獨立複製 File Storage for Classic 磁區,您可以使用下列指令。
$ slcli file volume-duplicate --help
Usage: slcli file volume-duplicate [OPTIONS] ORIGIN_VOLUME_ID
Options:
-o, --origin-snapshot-id INTEGER
ID of an origin volume snapshot to use for
duplcation.
-c, --duplicate-size INTEGER Size of duplicate file volume in GB. ***If
no size is specified, the size of the origin
volume will be used.***
Minimum: [the size
of the origin volume]
-i, --duplicate-iops INTEGER Performance Storage IOPS, between 100 and
6000 in multiples of 100 [only used for
performance volumes] ***If no IOPS value is
specified, the IOPS value of the origin
volume will be used.***
Requirements: [If
IOPS/GB for the origin volume is less than
0.3, IOPS/GB for the duplicate must also be
less than 0.3. If IOPS/GB for the origin
volume is greater than or equal to 0.3,
IOPS/GB for the duplicate must also be
greater than or equal to 0.3.]
-t, --duplicate-tier [0.25|2|4|10]
Endurance Storage Tier (IOPS per GB) [only
used for endurance volumes] ***If no tier is
specified, the tier of the origin volume
will be used.***
Requirements: [If IOPS/GB
for the origin volume is 0.25, IOPS/GB for
the duplicate must also be 0.25. If IOPS/GB
for the origin volume is greater than 0.25,
IOPS/GB for the duplicate must also be
greater than 0.25.]
-s, --duplicate-snapshot-size INTEGER
The size of snapshot space to order for the
duplicate. ***If no snapshot space size is
specified, the snapshot space size of the
origin file volume will be used.***
Input
"0" for this parameter to order a duplicate
volume with no snapshot space.
--billing [hourly|monthly] Optional parameter for Billing rate (default
to monthly)
-h, --help Show this message and exit.
也可以使用 --dependent-duplicate TRUE 選項從 CLI 訂購 相依重複 磁區。
slcli file volume-duplicate --dependent-duplicate TRUE <primary-vol-id>
如需可用指令選項的相關資訊,請參閱 file volume-duplicate。
建立與 API 的重複共用
若要使用 API 訂購 獨立複製 Block Storage for Classic 磁區,您可以發出 POST /SoftLayer_Product_Order/placeOrder 呼叫。 下列 REST API 範例會建立耐久性 (IOPS 層級) 磁區的獨立副本。
- URL
https://USERNAME:APIKEY@api.softlayer.com/rest/v3.1/SoftLayer_Product_Order/placeOrder- 類型
- POST
要求內文
{
"parameters":[{
"complexType": "SoftLayer_Container_Product_Order_Network_Storage_AsAService",
"packageId": 531,
"duplicateOriginVolumeId":<PrimaryId>,
"isDependentDuplicateFlag": 1,
"prices": [{"id": 12207}, {"id": 10723}, {"id": 10413}, {"id": 15749}, {"id":14043}],
"quantity": 1,
"location": 2,
"volumeSize":23
}]
}
如果您有特定的快照,而該快照持有您要用來建立複製磁碟區的資料,請在 duplicateOriginSnapshotId 屬性中指定該快照的 ID。
若要訂購效能 (自訂 IOPS) 磁區的 相依副本,請發出類似於下列 REST API 範例的 POST /SoftLayer_Product_Order/placeOrder 呼叫。
- URL
https://USERNAME:APIKEY@api.softlayer.com/rest/v3.1/SoftLayer_Product_Order/placeOrder- 類型
- POST
要求內文
{
"parameters":[{
"complexType": "SoftLayer_Container_Product_Order_Network_Storage_AsAService",
"packageId": 531,
"duplicateOriginVolumeId":<PrimaryId>,
"isDependentDuplicateFlag": 1,
"prices": [{"id": 15751}, {"id": 19487}, {"id": 18983}, {"id": 15749}, {"id":14043}],
"quantity": 1,
"iops":456,
"location": 2,
"volumeSize":23
}]
}
如果您有特定的快照,而該快照持有您要用來建立複製磁碟區的資料,請在 duplicateOriginSnapshotId 屬性中指定該快照的 ID。
如需 API 和選項的相關資訊,請參閱 API 參考資料。 尋找 SoftLayer_Container_Product_Order_Network_Storage_AsAService 資料類型。
管理重複磁區
只要佈建磁區,主機就可以存取所有重複磁區來進行讀取和寫入作業。
不過,在完成從原始複製到複製的資料複製,且複製磁區完全獨立之前,不容許獨立複製磁區的 Snapshot 及抄寫。 視資料大小而定,分隔處理程序可能需要數小時。 完成後,該副本即可被管理,並作為獨立的卷使用。
當資料正從原始卷複製到獨立副本時,您會看到詳細資訊頁面的狀態指示器顯示複製作業正在進行中。 在此期間,您可以連接至主機,並讀取及寫入磁區,但無法從原始檔案共用建立 Snapshot 排程或重新整理資料。 當分離程序完成後,新卷將與原始卷相互獨立,並可照常透過快照和複寫進行管理。 在轉換完成之後,可以使用母磁區中的 Snapshot 來手動重新整理獨立副本。
相依 重複項不會執行分隔處理程序,且可以隨時手動重新整理。 刷新過程可以透過 CLI、API 或在控制台中啟動。 稍後,如果您想要將相依副本轉換為獨立磁區,則也可以使用使用者介面、API 或 CLI 來起始該處理程序。
相依重複磁區會鎖定原始 Snapshot,因此當相依重複磁區存在時,無法刪除 Snapshot。
在控制台中更新父卷的副本數據
隨著時間過去及主要磁區變更,可以使用這些變更來更新重複磁區,以透過重新整理動作反映現行狀態。 重新整理包括取得主要磁區的 Snapshot,然後使用該 Snapshot 中的資料來更新重複磁區。
如果重複磁區是獨立的,您可以停止執行中的重新整理作業,並啟動新的重新整理作業。
-
移至您的 File Storage for Classic 清單。 從基礎架構
>經典基礎架構選單中,點選儲存> File Storage for Classic。
-
找出重複的磁區,然後按一下其名稱以檢視磁區詳細資料。
-
按一下 動作
> 還原母項 Snapshot。
-
從 Snapshot 清單中,選取保留您要還原至重複磁區之資料的母項 Snapshot。 如果您要重新整理的重複磁區是獨立磁區,您可以停止執行中作業,並強制啟動新的還原。 如果您要強制停止現行重新整理處理程序,請先勾選此方框,然後再繼續。
從 Snapshot 還原資料會導致遺失自建立所選取 Snapshot 以來所建立或修改的任何資料。 在刷新交易期間,重複的卷會被停用,並須在刷新完成後重新掛載。
-
請按「是」以開始重新整理。 刷新過程可能需要一段時間才能完成。 狀態列顯示複製到磁區的資料百分比。 若要查看更新的狀態,請重新整理瀏覽器中的頁面。
在控制台中將從屬卷轉換為獨立副本
- 移至您的 File Storage for Classic 清單。 從基礎架構
>經典基礎架構選單中,點選儲存> File Storage for Classic。
- 找出重複的磁區,然後按一下其名稱以檢視磁區詳細資料。
- 按一下 動作
> 轉換相依副本。
- 勾選方框以確認您要繼續進行轉換。
- 按一下是。
轉換過程可能需要一些時間才能完成。 磁區越大,轉換它所花費的時間越長。 您可以在磁區詳細資料頁面上的 重複轉換狀態 標頭下檢視處理程序的狀態。
從 CLI 更新母項磁區中的重複項資料
隨著時間過去及主要磁區變更,可以使用這些變更來更新重複磁區,以透過重新整理動作反映現行狀態。 重新整理涉及 取得主要磁區的 Snapshot,然後使用該 Snapshot 來更新重複磁區。
重新整理不會在主要磁區上造成關閉時間。 然而,在刷新交易期間,該重複卷無法使用,必須待刷新完成後才可重新掛載。
重新整理處理程序可能很耗時。 如果您發現要複製到獨立重複磁區的新資料,您可以發出 file volume-refresh 指令並搭配 --force-refresh 選項,以停止所有進行中及擱置中的重新整理交易,並起始新的重新整理。
強制重新整理處理程序僅在獨立磁區上運作。
從 IBMCLOUD CLI 重新整理相依副本上的資料
您可以使用 ibmcloud sl file volume-refresh 指令,以母磁區 Snapshot 中的資料來更新重複磁區上的資料。 下列範例顯示如何手動建立母磁區 560391190 的 Snapshot,然後使用新的 Snapshot 560391944 來重新整理檔案共用 560391814 上的資料。
$ ibmcloud sl file snapshot-create 560391190
OK
New snapshot 560391944 was created.
$ ibmcloud sl file volume-refresh 560391814 560391944
OK
如需此指令可用的所有參數的相關資訊,請參閱 ibmcloud sl file volume-refresh。
重新整理 SLCLI 中相依複本的資料
可透過以下指令啟動重新整理。
slcli file volume-refresh <duplicate-vol-id> <primary-snapshot-id>
如需可用指令選項的相關資訊,請參閱 slcli file volume-refresh。
從 CLI 將相依磁區轉換為獨立副本
如果您未來想要使用相依磁區作為獨立式磁區,則可以從 CLI 將它轉換為正常且獨立的 File Storage for Classic 磁區。
從 IBMCLOUD CLI 轉換相依磁區
使用 ibmcloud sl file volume-convert 指令,將相依副本轉換為獨立檔案共用。 下列範例顯示如何將檔案共用 560391814 轉換為獨立磁區。
$ ibmcloud sl file volume-convert 560391814
OK
轉換過程可能需要一些時間才能完成。 磁區越大,轉換它所花費的時間越長。
如需此指令可用的所有參數的相關資訊,請參閱 ibmcloud sl file volume-convert。
從 SLCLI 轉換相依磁區
請使用下列指令。
slcli file volume-convert <dependent-vol-id>
轉換過程可能需要一些時間才能完成。 磁區越大,轉換它所花費的時間越長。 請使用下列指令來檢查進度。
slcli file duplicate-convert-status <dependent-vol-id>
下列範例顯示您可以預期的輸出。
slcli file duplicate-convert-status 370597202
Username Active Conversion Start Timestamp Completed Percentage
SL02SEVC307608_74 2022-06-13 14:59:17 90
如需可用指令選項的相關資訊,請參閱 file duplicate-convert-status。
使用 API 從母項磁區更新重複磁區上的資料
隨著時間過去及主要磁區變更,可以使用這些變更來更新重複磁區,以透過重新整理動作反映現行狀態。 重新整理包括取得主要磁區的 Snapshot,然後使用該 Snapshot 中的資料來更新重複磁區。
重新整理不會在主要磁區上造成關閉時間。 然而,在刷新交易期間,重複的卷會被停用,並須在刷新完成後重新掛載。
重新整理處理程序可能很耗時。 在執行中重新整理完成之前,您可能會發現您有想要新增至重複項目的新資料。 如果是這種情況,您可以對 refreshDuplicate 進行第二次呼叫,並將第二個 forceRefresh 參數指定為 true,以停止所有進行中及擱置中的重新整理交易,並起始新的重新整理。 如果第二個參數設為 false 或未指定,則在另一個重新整理已在進行中,則呼叫會失敗。
強制重新整理處理程序僅在獨立磁區上運作。
REST API 範例
- URL
https://USERNAME:APIKEY@api.softlayer.com/rest/v3.1/SoftLayer_Network_Storage/duplicateVolumeId/refreshDuplicate- 類型
- POST
要求內文
{
"parameters": [primaryVolumeSnapshotId, true OR false]
}
SOAP API 範例
- URL
https://api.softlayer.com/soap/v3.1/SoftLayer_Network_Storage- 類型
- POST
要求內文
<?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://api.service.softlayer.com/soap/v3.1/">
<SOAP-ENV:Header>
<ns1:authenticate>
<username>USERNAME</username>
<apiKey>APIKEY</apiKey>
</ns1:authenticate>
<ns2:SoftLayer_Network_StorageInitParameters>
<id>duplicate Volume Id</id>
</ns2:SoftLayer_Network_StorageInitParameters>
</SOAP-ENV:Header>
<SOAP-ENV:Body>
<ns1:refreshDuplicate>
<snapshotId xsi:type="int">primary Volume Snapshot Id</snapshotId>
<forceRefresh xsi:type="boolean">true</forceRefresh> <-- (remove this tag for normal refresh)
</ns1:refreshDuplicate>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
如需 API 和選項的相關資訊,請參閱 API 參考資料 和 SoftLayer_Network_Storage::refreshDuplicate。
使用 API 將相依磁區轉換為獨立副本
如果未來要使用相依磁區作為獨立式磁區,您可以使用 API 將它轉換為正常且獨立的 IBM Cloud® Block Storage for Classic 磁區。 請參閱以下使用 REST API 的範例。
- URL
https://USERNAME:APIKEY@api.softlayer.com/rest/v3.1/SoftLayer_Network_Storage/<storageId>/convertCloneDependentToIndependent- 類型
- POST
- 要求內文
- 空白
如需 API 和選項的相關資訊,請參閱 API 參考資料。
取消具有相依重複項的儲存磁區
取消具有作用中相依磁區的母磁區需要先取消相依重複磁區。