本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
在 AWS TNB 中更新網路執行個體
執行個體化網路執行個體之後,您可能需要更新基礎設施或應用程式。若要這麼做,請更新網路執行個體的網路套件和參數值,並部署更新操作以套用變更。
考量事項
-
您可以更新處於 Instantiated
或 Updated
狀態的網路執行個體。
-
當您更新網路執行個體時,UpdateSolNetworkService
API 會使用新的網路套件和參數值來更新網路執行個體的拓撲。
-
AWS TNB 會驗證網路執行個體中的 NSD 和 VNFD 參數數量不超過 200。強制執行此限制,以防止不良行為者傳遞影響服務的錯誤或巨型承載。
您可以更新的參數
您可以在更新執行個體化網路執行個體時更新下列參數:
參數 |
描述 |
範例:之前 |
範例: 之後 |
Amazon EKS 叢集版本
|
您可以將 Amazon EKS 叢集控制平面version 參數的值更新為下一個次要版本。您無法降級版本。工作者節點不會更新。
|
EKSCluster:
type: tosca.nodes.AWS.Compute.EKS
properties:
version: "1.28 "
|
EKSCluster:
type: tosca.nodes.AWS.Compute.EKS
properties:
version: "1.29 "
|
擴展屬性
|
您可以更新 EKSManagedNode 和 EKSSelfManagedNode TOSCA 節點的擴展屬性。
|
EKSNodeGroup01:
...
scaling:
properties:
desired_size: 1
min_size: 1
max_size: 1
|
EKSNodeGroup01:
...
scaling:
properties:
desired_size: 2
min_size: 0
max_size: 2
|
Amazon EBS CSI 外掛程式屬性
|
您可以在 Amazon EKS 叢集上啟用或停用 Amazon EBS CSI 外掛程式。您也可以變更外掛程式版本。
|
EKSCluster:
capabilities:
...
ebs_csi:
properties:
enabled: false
|
EKSCluster:
capabilities:
...
ebs_csi:
properties:
enabled: true
version: "v1.30.0-eksbuild.1 "
|
VNF
|
您可以參考 NSD 中的 VNFs VNFDeployment TOSCA 節點將其部署到 NSD 中建立的叢集。作為更新的一部分,您將能夠新增、更新和刪除網路的 VNFs。
|
vnfds:
- descriptor_id: "43c012fa-2616-41a8-a833-0dfd4c5a049e "
namespace: "vnf1 "
- descriptor_id: "64222f98-ecd6-4871-bf94-7354b53f3ee5 "
namespace: "vnf2 " // Deleted VNF
...
SampleVNF1HelmDeploy:
type: tosca.nodes.AWS.Deployment.VNFDeployment
requirements:
cluster: EKSCluster
vnfs:
- vnf1.SampleVNF1
- vnf2.SampleVNF2
|
vnfds:
- descriptor_id: "59f77222-79e9-4dc1-be53-5712ad06e31b "
namespace: "vnf1 " // Updated VNF
- descriptor_id: "b7e072dc-839d-4fac-916c-561a166da1fc "
namespace: "vnf3 " // Added VNFn
....
SampleVNF1HelmDeploy:
type: tosca.nodes.AWS.Deployment.VNFDeployment
requirements:
cluster: EKSCluster
vnfs:
- vnf1.SampleVNF1
- vnf3.SampleVNF3
|
勾點
|
若要在建立網路函數之前和之後執行生命週期操作,請將 pre_create 和 post_create 掛鉤新增至VNFDeployment 節點。
在此範例中,勾PreCreateHook 點會在 vnf3.SampleVNF3 執行個體化之前執行,而勾PostCreateHook 點會在 vnf3.SampleVNF3 執行個體化之後執行。
|
vnfds:
- descriptor_id: "43c012fa-2616-41a8-a833-0dfd4c5a049e "
namespace: "vnf1 "
- descriptor_id: "64222f98-ecd6-4871-bf94-7354b53f3ee5 "
namespace: "vnf2 "
...
SampleVNF1HelmDeploy:
type: tosca.nodes.AWS.Deployment.VNFDeployment
requirements:
cluster: EKSCluster
vnfs:
- vnf1.SampleVNF1
- vnf2.SampleVNF2 // Removed during update
|
vnfds:
- descriptor_id: "43c012fa-2616-41a8-a833-0dfd4c5a049e "
namespace: "vnf1 "
- descriptor_id: "b7e072dc-839d-4fac-916c-561a166da1fc "
namespace: "vnf3 "
....
SampleVNF1HelmDeploy:
type: tosca.nodes.AWS.Deployment.VNFDeployment
requirements:
cluster: EKSCluster
vnfs:
- vnf1.SampleVNF1 // No change to this function, as the namespace and uuid remain the same
- vnf3.SampleVNF3 // New VNF as the namespace, vnf3, was not previously present
interfaces:
Hook:
post_create: PostCreateHook
pre_create: PreCreateHook
|
勾點
|
若要在更新網路函數之前和之後執行生命週期操作,您可以將pre_update 勾點和post_update 勾點新增至VNFDeployment 節點。
在此範例中, PreUpdateHook 將在更新 vnf1.SampleVNF1 之前執行,PostUpdateHook 並在更新 之後執行vnf1.SampleVNF1 ,此vnf 套件由 uuid 為命名空間 vnf1 更新的 所指示。
|
vnfds:
- descriptor_id: "43c012fa-2616-41a8-a833-0dfd4c5a049e "
namespace: "vnf1 "
- descriptor_id: "64222f98-ecd6-4871-bf94-7354b53f3ee5 "
namespace: "vnf2 "
...
SampleVNF1HelmDeploy:
type: tosca.nodes.AWS.Deployment.VNFDeployment
requirements:
cluster: EKSCluster
vnfs:
- vnf1.SampleVNF1
- vnf2.SampleVNF2
|
vnfds:
- descriptor_id: "0ebe4e95-bd87-44bd-b8a1-918466606a14 "
namespace: "vnf1 "
- descriptor_id: "64222f98-ecd6-4871-bf94-7354b53f3ee5 "
namespace: "vnf2 "
...
SampleVNF1HelmDeploy:
type: tosca.nodes.AWS.Deployment.VNFDeployment
requirements:
cluster: EKSCluster
vnfs:
- vnf1.SampleVNF1 // A VNF update as the uuid changed for namespace "vnf1"
- vnf2.SampleVNF2 // No change to this function as namespace and uuid remain the same
interfaces:
Hook:
pre_update: PreUpdateHook
post_update: PostUpdateHook
|
更新網路執行個體
- Console
-
使用主控台更新網路執行個體
-
在 https://https://console.aws.amazon.com/tnb/ 開啟 AWS TNB 主控台。
-
在導覽窗格中,選擇網路。
-
選取網路執行個體。只有在網路執行個體的狀態為 Instantiated
或 時,您才能更新網路執行個體Updated
。
-
選擇動作和更新。
更新執行個體頁面會顯示網路詳細資訊,以及目前基礎設施中的參數清單。
-
選擇新的網路套件。
新網路套件中的參數會出現在更新後的參數區段中。
-
或者,更新更新參數區段中的參數值。如需您可以更新的參數值清單,請參閱 您可以更新的參數。
-
選擇更新網路。
AWS TNB 會驗證請求並啟動部署。隨即出現部署狀態頁面。
-
使用重新整理圖示來追蹤網路執行個體的部署狀態。您也可以在部署任務區段中啟用自動重新整理,以追蹤每個任務的進度。
當部署狀態變更為 時Completed
,會更新網路執行個體。
-
-
如果驗證失敗,網路執行個體會保持與請求更新之前相同的狀態 - Instantiated
或 Updated
。
-
如果更新失敗,網路執行個體狀態會顯示 Update failed
。選擇每個失敗任務的連結,以判斷原因。
-
如果更新成功,網路執行個體狀態會顯示 Updated
。
- AWS CLI
-
使用 CLI 更新網路執行個體
使用 update-sol-network-instance 命令搭配UPDATE_NS
更新類型來更新網路執行個體。
aws tnb update-sol-network-instance --ns-instance-id ^ni-[a-f0-9]{17}$
--update-type UPDATE_NS --update-ns "{\"nsdInfoId\":\"^np-[a-f0-9]{17}$
\", \"additionalParamsForNs\": {\"param1
\": \"value1
\"}}"