設定AWS後端的CVS
瞭Cloud Volumes Service 解如何使用所提供的範例組態、將AWS的NetApp功能(CVS)設定為Astra Trident安裝的後端。
AWS適用的支援磁碟區容量不低於100 GB。Cloud Volumes Service如果要求較小的磁碟區、Trident會自動建立100-GB磁碟區。 |
以設定及使用 "AWS 適用的 Cloud Volumes Service" 後端、您需要下列項目:
-
使用NetApp CVS設定的AWS帳戶
-
CVS帳戶的API區域、URL和金鑰
後端組態選項
如需後端組態選項、請參閱下表:
參數 | 說明 | 預設 |
---|---|---|
|
永遠為1 |
|
|
儲存驅動程式名稱 |
「AWs-CVS」 |
|
自訂名稱或儲存後端 |
驅動程式名稱+「_」+ API金鑰的一部分 |
|
CVS帳戶區域。您可以在CVS入口網站的「帳戶設定/API存取」中找到該值。 |
|
|
CVS帳戶API URL。您可以在CVS入口網站的「帳戶設定/API存取」中找到該值。 |
|
|
CVS帳戶API金鑰。您可以在CVS入口網站的「帳戶設定/API存取」中找到該值。 |
|
|
CVS帳戶秘密金鑰。您可以在CVS入口網站的「帳戶設定/API存取」中找到該值。 |
|
|
Proxy URL(如果需要代理伺服器才能連線至CVS帳戶)。Proxy伺服器可以是HTTP Proxy或HTTPS Proxy。對於HTTPS Proxy、會跳過憑證驗證、以允許在Proxy伺服器中使用自我簽署的憑證。不支援已啟用驗證的Proxy伺服器。 |
|
|
精細控制NFS掛載選項。 |
"nfsves=3" |
|
如果要求的磁碟區大小高於此值、則資源配置失敗 |
""(預設不強制執行) |
|
新磁碟區的CVS服務層級。這些值包括「標準」、「高級」和「極端」。 |
"標準" |
|
疑難排解時要使用的偵錯旗標。範例: |
null |
apiURL 每個都是唯一的 apiRegion 。例如us-west-2 apiRegion 擁有 https://cv.us-west-2.netapp.com:8080/v1/ apiURL 。同樣地、us-east-1 apiRegion 擁有 https://cds-aws-bundles.netapp.com:8080/v1/ apiURL 。請務必檢查CVS儀表板是否正確 apiRegion 和 apiURL 後端組態的參數。
|
每個後端都會在單一AWS區域中配置磁碟區。若要在其他區域建立磁碟區、您可以定義其他後端。
您可以在組態檔的特殊區段中指定下列選項、以控制預設的每個Volume佈建方式。請參閱下列組態範例。
參數 | 說明 | 預設 |
---|---|---|
|
新磁碟區的匯出規則 |
「0.00.0.0/0」 |
|
控制的可見度 |
"假" |
|
保留給快照的磁碟區百分比 |
""(接受CVS預設值為0) |
|
新磁碟區的大小 |
100公克 |
。 exportRule
值必須是以逗號分隔的清單、以CIDR表示法列出所有的IPv4位址或IPv4子網路組合。
對於在CVS AWS後端上建立的所有磁碟區、Astra Trident會將儲存資源池上的所有標籤複製到資源配置時的儲存磁碟區。儲存管理員可以定義每個儲存資源池的標籤、並將儲存資源池中建立的所有磁碟區分組。這是根據後端組態中提供的一組可自訂標籤、方便區分磁碟區的方法。 |
範例1:最低組態
這是絕對最低的後端組態。
當您剛開始使用CVS AWS並試用資料時、這種組態是理想的選擇、但實際上您想要為您所配置的磁碟區提供額外的範圍。
{ "version": 1, "storageDriverName": "aws-cvs", "apiRegion": "us-east-1", "apiURL": "https://cds-aws-bundles.netapp.com:8080/v1", "apiKey": "znHczZsrrtHisIsAbOguSaPIKeyAZNchRAGzlzZE", "secretKey": "rR0rUmWXfNioN1KhtHisiSAnoTherboGuskey6pU" }
範例2:單一服務層級組態
此範例顯示後端檔案、可將相同層面套用至AWS use-east-1區域中所有由Astra Trident建立的儲存設備。此範例也會顯示的用途 proxyURL
在後端檔案中。
{ "version": 1, "storageDriverName": "aws-cvs", "backendName": "cvs-aws-us-east", "apiRegion": "us-east-1", "apiURL": "https://cds-aws-bundles.netapp.com:8080/v1", "apiKey": "znHczZsrrtHisIsAbOguSaPIKeyAZNchRAGzlzZE", "secretKey": "rR0rUmWXfNioN1KhtHisiSAnoTherboGuskey6pU", "proxyURL": "http://proxy-server-hostname/", "nfsMountOptions": "vers=3,proto=tcp,timeo=600", "limitVolumeSize": "50Gi", "serviceLevel": "premium", "defaults": { "snapshotDir": "true", "snapshotReserve": "5", "exportRule": "10.0.0.0/24,10.0.1.0/24,10.0.2.100", "size": "200Gi" } }
範例3:虛擬儲存池組態
此範例顯示使用虛擬儲存資源池設定的後端定義檔案、以及參照回溯的StorageClass。
在下圖所示的範例後端定義檔中、會針對所有設定的儲存資源池設定特定的預設值 snapshotReserve
5%和 exportRule
至0.00.0/0。虛擬儲存集區是在中定義 storage
區段。在此範例中、每個個別的儲存資源池都會自行設定 `serviceLevel`和某些資源池會覆寫預設值。
{ "version": 1, "storageDriverName": "aws-cvs", "apiRegion": "us-east-1", "apiURL": "https://cds-aws-bundles.netapp.com:8080/v1", "apiKey": "EnterYourAPIKeyHere***********************", "secretKey": "EnterYourSecretKeyHere******************", "nfsMountOptions": "vers=3,proto=tcp,timeo=600", "defaults": { "snapshotReserve": "5", "exportRule": "0.0.0.0/0" }, "labels": { "cloud": "aws" }, "region": "us-east-1", "storage": [ { "labels": { "performance": "extreme", "protection": "extra" }, "serviceLevel": "extreme", "defaults": { "snapshotDir": "true", "snapshotReserve": "10", "exportRule": "10.0.0.0/24" } }, { "labels": { "performance": "extreme", "protection": "standard" }, "serviceLevel": "extreme" }, { "labels": { "performance": "premium", "protection": "extra" }, "serviceLevel": "premium", "defaults": { "snapshotDir": "true", "snapshotReserve": "10" } }, { "labels": { "performance": "premium", "protection": "standard" }, "serviceLevel": "premium" }, { "labels": { "performance": "standard" }, "serviceLevel": "standard" } ] }
下列StorageClass定義係指上述儲存資源池。使用 parameters.selector
欄位中、您可以為每個StorageClass指定用於裝載Volume的虛擬集區。該磁碟區會在所選的資源池中定義各個層面。
第一個StorageClass (cvs-extreme-extra-protection
)對應至第一個虛擬儲存資源池。這是唯一提供極致效能、快照保留率為10%的資源池。最後一個StorageClass (cvs-extra-protection
)撥出提供快照保留10%的任何儲存資源池。Astra Trident決定選取哪個虛擬儲存池、並確保符合快照保留需求。
apiVersion: storage.k8s.io/v1 kind: StorageClass metadata: name: cvs-extreme-extra-protection provisioner: netapp.io/trident parameters: selector: "performance=extreme; protection=extra" allowVolumeExpansion: true --- apiVersion: storage.k8s.io/v1 kind: StorageClass metadata: name: cvs-extreme-standard-protection provisioner: netapp.io/trident parameters: selector: "performance=extreme; protection=standard" allowVolumeExpansion: true --- apiVersion: storage.k8s.io/v1 kind: StorageClass metadata: name: cvs-premium-extra-protection provisioner: netapp.io/trident parameters: selector: "performance=premium; protection=extra" allowVolumeExpansion: true --- apiVersion: storage.k8s.io/v1 kind: StorageClass metadata: name: cvs-premium provisioner: netapp.io/trident parameters: selector: "performance=premium; protection=standard" allowVolumeExpansion: true --- apiVersion: storage.k8s.io/v1 kind: StorageClass metadata: name: cvs-standard provisioner: netapp.io/trident parameters: selector: "performance=standard" allowVolumeExpansion: true --- apiVersion: storage.k8s.io/v1 kind: StorageClass metadata: name: cvs-extra-protection provisioner: netapp.io/trident parameters: selector: "protection=extra" allowVolumeExpansion: true
接下來呢?
建立後端組態檔之後、請執行下列命令:
tridentctl create backend -f <backend-file>
如果後端建立失敗、表示後端組態有問題。您可以執行下列命令來檢視記錄、以判斷原因:
tridentctl logs
識別並修正組態檔的問題之後、您可以再次執行create命令。