在 AWS TNB 中更新網路執行個體 - AWS 電信網路建置器

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

在 AWS TNB 中更新網路執行個體

執行個體化網路執行個體之後,您可能需要更新基礎設施或應用程式。若要這麼做,請更新網路執行個體的網路套件和參數值,並部署更新操作以套用變更。

考量事項

  • 您可以更新處於 InstantiatedUpdated 狀態的網路執行個體。

  • 當您更新網路執行個體時,UpdateSolNetworkServiceAPI 會使用新的網路套件和參數值來更新網路執行個體的拓撲。

  • 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"

擴展屬性

您可以更新 EKSManagedNodeEKSSelfManagedNode 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_createpost_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
使用主控台更新網路執行個體
  1. 在 https://https://console.aws.amazon.com/tnb/ 開啟 AWS TNB 主控台。

  2. 在導覽窗格中,選擇網路

  3. 選取網路執行個體。只有在網路執行個體的狀態為 Instantiated或 時,您才能更新網路執行個體Updated

  4. 選擇動作更新

    更新執行個體頁面會顯示網路詳細資訊,以及目前基礎設施中的參數清單。

  5. 選擇新的網路套件。

    新網路套件中的參數會出現在更新後的參數區段中。

  6. 或者,更新更新參數區段中的參數值。如需您可以更新的參數值清單,請參閱 您可以更新的參數

  7. 選擇更新網路

    AWS TNB 會驗證請求並啟動部署。隨即出現部署狀態頁面。

  8. 使用重新整理圖示來追蹤網路執行個體的部署狀態。您也可以在部署任務區段中啟用自動重新整理,以追蹤每個任務的進度。

    當部署狀態變更為 時Completed,會更新網路執行個體。

    • 如果驗證失敗,網路執行個體會保持與請求更新之前相同的狀態 - InstantiatedUpdated

    • 如果更新失敗,網路執行個體狀態會顯示 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\"}}"