建立與管理重複的 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 還原功能來改寫整個原始磁區。
  • 重新整理資料。 請建立生產環境資料的副本,並將其掛載至非生產環境以進行測試。
  • 開發與測試。 一次最多可同時建立磁區的四個重複磁區,以建立重複資料來進行開發及測試。

在控制台中從特定卷建立副本

  1. 移至您的 File Storage for Classic 清單。 從基礎架構VPC 圖示>經典基礎架構選單中,點選儲存> File Storage for Classic

  2. 找到並按一下磁區名稱。

  3. 按一下 動作 「動作」圖示 > 複製共用

  4. 選取重複項是相依或獨立。

  5. 選擇 Snapshot 選項。

    • 立即建立最新資料的 Snapshot。
    • 使用先前取得的最後一個 Snapshot。
  6. 位置和 IOPS 設定檔仍與原始磁區相同。

  7. 您可以選擇以每小時或每月計費的方式為該複製卷進行配置。 會自動選取原始磁區的計費類型,您可以變更它 (如果想要的話)。

  8. 如果您願意,可以為新卷指定不同的 IOPS 或 IOPS 層級。 依預設,會設定原始磁區的 IOPS 指定。 會顯示可用的效能與大小組合。

    • 如果您的原始磁區是 0.25 IOPS 的「耐久性」層級,則無法進行新的選擇。
    • 如果您的原始磁區是 2、4 或 10 IOPS 的「耐久性」層級,則可以將新磁區移到這些層級之間的任何位置。
  9. 您可以更新新磁區的大小,讓它大於原始磁區。 依預設,會設定原始磁區的大小。

    File Storage for Classic 可以調整為磁區原始大小的 10 倍。

  10. 您可以更新新磁區的 Snapshot 空間,以新增更多、更少 Snapshot 空間,或不新增 Snapshot 空間。 依預設,會設定原始磁區的 Snapshot 空間。

  11. 勾選方框以確認您已閱讀並同意條款,然後按一下 建立 以下訂單。

按一下 建立之後,會出現訂單確認視窗。 當您關閉視窗時,會回到資源清單。 您可以回到 File Storage for Classic 共用的清單,以按一下新佈建的副本。 共用詳細資料區段會顯示諸如「重複類型」、母項共用詳細資料頁面的鏈結,以及用來建立重複項目的 Snapshot 名稱等資訊。

透過命令列介面建立複本

開始之前,請決定您要使用的 CLI 用戶端。

從 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 中的資料來更新重複磁區。

如果重複磁區是獨立的,您可以停止執行中的重新整理作業,並啟動新的重新整理作業。

  1. 移至您的 File Storage for Classic 清單。 從基礎架構VPC 圖示>經典基礎架構選單中,點選儲存> File Storage for Classic

  2. 找出重複的磁區,然後按一下其名稱以檢視磁區詳細資料。

  3. 按一下 動作 「動作」圖示 > 還原母項 Snapshot

  4. 從 Snapshot 清單中,選取保留您要還原至重複磁區之資料的母項 Snapshot。 如果您要重新整理的重複磁區是獨立磁區,您可以停止執行中作業,並強制啟動新的還原。 如果您要強制停止現行重新整理處理程序,請先勾選此方框,然後再繼續。

    從 Snapshot 還原資料會導致遺失自建立所選取 Snapshot 以來所建立或修改的任何資料。 在刷新交易期間,重複的卷會被停用,並須在刷新完成後重新掛載。

  5. 請按「」以開始重新整理。 刷新過程可能需要一段時間才能完成。 狀態列顯示複製到磁區的資料百分比。 若要查看更新的狀態,請重新整理瀏覽器中的頁面。

在控制台中將從屬卷轉換為獨立副本

  1. 移至您的 File Storage for Classic 清單。 從基礎架構VPC 圖示>經典基礎架構選單中,點選儲存> File Storage for Classic
  2. 找出重複的磁區,然後按一下其名稱以檢視磁區詳細資料。
  3. 按一下 動作 「動作」圖示 > 轉換相依副本
  4. 勾選方框以確認您要繼續進行轉換。
  5. 按一下

轉換過程可能需要一些時間才能完成。 磁區越大,轉換它所花費的時間越長。 您可以在磁區詳細資料頁面上的 重複轉換狀態 標頭下檢視處理程序的狀態。

從 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 參考資料

取消具有相依重複項的儲存磁區

取消具有作用中相依磁區的母磁區需要先取消相依重複磁區。