You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: articles/operator-service-manager/best-practices-onboard-deploy.md
+14-11Lines changed: 14 additions & 11 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -40,7 +40,7 @@ Network Function Definition Group (NFDG) represents the smallest component that
40
40
41
41
For Containerized Network Function Definition Versions (CNF NFDVs), the `networkFunctionApplications` list can only contain helm packages. It's reasonable to include multiple helm packages if they're always deployed and deleted together.
42
42
43
-
For Virtualized Network Function Definition Versions (VNF NFDVs), the `networkFunctionApplications` list must contain at least one `VhdImageFile` and one ARM template. The ARM template should deploy a single VM. To deploy multiple VMs for a single VNF, make sure to use separate ARM templates for each VM.
43
+
For Virtualized Network Function Definition Versions (VNF NFDVs), the `networkFunctionApplications` list must contain at least one `VhdImageFile` and one ARM template. The ARM template should deploy a single virtual machine (VM). To deploy multiple VMs for a single VNF, make sure to use separate ARM templates for each VM.
44
44
45
45
The ARM template can only deploy Resource Manager resources from the following resource providers:
46
46
@@ -53,7 +53,7 @@ The ARM template can only deploy Resource Manager resources from the following r
53
53
- Microsoft.ManagedIdentity
54
54
55
55
>[!NOTE]
56
-
> For ARM templates containing anything beyond the preceding list, all PUT calls and Re-PUT on the VNF will result in validation error.
56
+
> For ARM templates containing anything beyond the preceding list, all PUT calls and Re-PUT on the VNF result in a validation error.
57
57
58
58
### Common use cases that trigger Network Function Design Version minor or major version update
59
59
@@ -81,7 +81,7 @@ These five components form a single NSDG. A single NSDG can have multiple NSDVs.
81
81
82
82
### Common use cases that trigger Network Service Design Version minor or major version update
83
83
84
-
- Creating or deleting CGSes.
84
+
- Creating or deleting CGSs.
85
85
- Changes in the NF ARM template associated with one of the NFs being deployed.
86
86
- Changes in the infrastructure ARM template, for example, AKS/NAKS or VM.
87
87
@@ -90,7 +90,7 @@ These five components form a single NSDG. A single NSDG can have multiple NSDVs.
90
90
91
91
## Configuration Group Schema considerations
92
92
93
-
We recommend that you always start with a single CGS for the entire NF. If there are site-specific or instance-specific parameters, we still recommend that you keep them in a single CGS. We recommend splitting into multiple CGSes when there are multiple components (rarely NFs, more commonly, infrastructure) or configurations that are shared across multiple NFs. The number of CGSes defines the number of CGVs.
93
+
We recommend that you always start with a single CGS for the entire NF. If there are site-specific or instance-specific parameters, we still recommend that you keep them in a single CGS. We recommend splitting into multiple CGSs when there are multiple components (rarely NFs, more commonly, infrastructure) or configurations that are shared across multiple NFs. The number of CGSs defines the number of CGVs.
94
94
95
95
### Scenario
96
96
@@ -103,7 +103,7 @@ In this scenario, we recommend that you use a single global CGS to expose the co
103
103
104
104
- CGS should only have parameters that are used by NFs (day 0/N configuration) or shared components.
105
105
- Parameters that are rarely configured should have default values defined.
106
-
- If multiple CGSes are used, we recommend little to no overlap between the parameters. If overlap is required, make sure the parameter names are clearly distinguishable between the CGSes.
106
+
- If multiple CGSs are used, we recommend little to no overlap between the parameters. If overlap is required, make sure the parameter names are clearly distinguishable between the CGSs.
107
107
- What can be defined via API (Azure Operator Nexus, Azure Operator Service Manager) should be considered for CGS. As opposed to, for example, defining those configuration values via CloudInit files.
108
108
- When unsure, a good starting point is to expose the parameter and have a reasonable default specified in the CGS. The following example shows the sample CGS and corresponding CGV payloads.
109
109
- A single user-assigned managed identity should be used in all the NF ARM templates and should be exposed via CGS.
@@ -174,10 +174,10 @@ Resources breakdown:
174
174
175
175
-**NFDG**: If components can be used independently, two NFDGs, one per component. If components are always deployed together, then a single NFDG.
176
176
-**NFDV**: As needed based on the use cases mentioned in the preceding "Common use cases" sections that trigger NFDV minor or major version updates.
177
-
-**NSDG**: Single. Combines the NFs and the K8s cluster definitions.
177
+
-**NSDG**: Single. Combines the NFs and the Kubernetes cluster definitions.
178
178
-**NSDV**: As needed based on the use cases mentioned in the preceding "Common use cases" sections that trigger NSDV minor or major version updates.
179
179
-**CGS**: Single. We recommend that CGS has subsections for each component and infrastructure being deployed for easier management, and includes the versions for NFDs.
180
-
-**CGV**: Single based on the number of CGSes.
180
+
-**CGV**: Single based on the number of CGSs.
181
181
-**SNS**: Single per NSDV.
182
182
183
183
### Scenario: Multiple network functions
@@ -190,13 +190,13 @@ Resources breakdown:
190
190
- NFDG for all shared components.
191
191
- NFDG for every independent component or NF.
192
192
-**NFDV**: Multiple per each NFDG per use case mentioned in the preceding "Common use cases" sections that trigger NFDV minor or major version updates.
193
-
-**NSDG**: Single. Combines all NFs, shared and independent components, and infrastructure (K8s cluster or any supporting VMs).
193
+
-**NSDG**: Single. Combines all NFs, shared and independent components, and infrastructure (Kubernetes cluster or any supporting VMs).
194
194
-**NSDV**: As needed based on the use cases mentioned in the preceding "Common use cases" sections that trigger NSDV minor or major version updates.
195
195
-**CGS**:
196
196
- Single. Global for all components that have shared configuration values.
197
197
- NF CGS per NF, including the version of the NFD.
198
-
- Depending on the total number of parameters, consider combining all the CGSes into a single CGS.
199
-
-**CGV**: Equal to the number of CGSes.
198
+
- Depending on the total number of parameters, consider combining all the CGSs into a single CGS.
199
+
-**CGV**: Equal to the number of CGSs.
200
200
-**SNS**: Single per NSDV.
201
201
202
202
## Software upgrade considerations
@@ -218,6 +218,9 @@ For VNFs:
218
218
## High availability and disaster recovery considerations
219
219
220
220
Azure Operator Service Manager is a regional service deployed across availability zones in regions that support them. For all regions where Azure Operator Service Manager is available, see [Azure products by region](https://azure.microsoft.com/explore/global-infrastructure/products-by-region/?products=operator-service-manager,azure-network-function-manager®ions=all). For the list of Azure regions that have availability zones, see [Choose the right Azure region for you](https://azure.microsoft.com/explore/global-infrastructure/geographies/#geographies).
221
+
222
+
Consider the following high-availability and disaster recovery requirements:
223
+
221
224
- To provide geo-redundancy, make sure you have a publisher in every region where you're planning to deploy NFs. Consider using pipelines to make sure publisher artifacts and resources are kept in sync across the regions.
222
225
- The publisher name must be unique per region per Microsoft Entra tenant.
223
226
@@ -242,7 +245,7 @@ Azure Operator Service Manager is a regional service deployed across availabilit
242
245
243
246
During installation and upgrade by default, atomic and wait options are set to `true`, and the operation timeout is set to `27 minutes`. During onboarding, we recommend that you set the atomic flag to `false` to prevent the Helm rollback upon failure. The optimal way to accomplish that is in the ARM template of the NF.
0 commit comments