Skip to content

Commit ebe3980

Browse files
committed
edit pass: best-practices-onboard-deploy
1 parent 3bdd3b0 commit ebe3980

File tree

1 file changed

+14
-11
lines changed

1 file changed

+14
-11
lines changed

articles/operator-service-manager/best-practices-onboard-deploy.md

Lines changed: 14 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ Network Function Definition Group (NFDG) represents the smallest component that
4040

4141
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.
4242

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.
4444

4545
The ARM template can only deploy Resource Manager resources from the following resource providers:
4646

@@ -53,7 +53,7 @@ The ARM template can only deploy Resource Manager resources from the following r
5353
- Microsoft.ManagedIdentity
5454

5555
>[!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.
5757
5858
### Common use cases that trigger Network Function Design Version minor or major version update
5959

@@ -81,7 +81,7 @@ These five components form a single NSDG. A single NSDG can have multiple NSDVs.
8181

8282
### Common use cases that trigger Network Service Design Version minor or major version update
8383

84-
- Creating or deleting CGSes.
84+
- Creating or deleting CGSs.
8585
- Changes in the NF ARM template associated with one of the NFs being deployed.
8686
- Changes in the infrastructure ARM template, for example, AKS/NAKS or VM.
8787

@@ -90,7 +90,7 @@ These five components form a single NSDG. A single NSDG can have multiple NSDVs.
9090
9191
## Configuration Group Schema considerations
9292

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.
9494

9595
### Scenario
9696

@@ -103,7 +103,7 @@ In this scenario, we recommend that you use a single global CGS to expose the co
103103

104104
- CGS should only have parameters that are used by NFs (day 0/N configuration) or shared components.
105105
- 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.
107107
- 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.
108108
- 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.
109109
- 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:
174174

175175
- **NFDG**: If components can be used independently, two NFDGs, one per component. If components are always deployed together, then a single NFDG.
176176
- **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.
178178
- **NSDV**: As needed based on the use cases mentioned in the preceding "Common use cases" sections that trigger NSDV minor or major version updates.
179179
- **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.
181181
- **SNS**: Single per NSDV.
182182

183183
### Scenario: Multiple network functions
@@ -190,13 +190,13 @@ Resources breakdown:
190190
- NFDG for all shared components.
191191
- NFDG for every independent component or NF.
192192
- **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).
194194
- **NSDV**: As needed based on the use cases mentioned in the preceding "Common use cases" sections that trigger NSDV minor or major version updates.
195195
- **CGS**:
196196
- Single. Global for all components that have shared configuration values.
197197
- 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.
200200
- **SNS**: Single per NSDV.
201201

202202
## Software upgrade considerations
@@ -218,6 +218,9 @@ For VNFs:
218218
## High availability and disaster recovery considerations
219219

220220
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&regions=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+
221224
- 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.
222225
- The publisher name must be unique per region per Microsoft Entra tenant.
223226

@@ -242,7 +245,7 @@ Azure Operator Service Manager is a regional service deployed across availabilit
242245

243246
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.
244247

245-
In the ARM template, add the following section:
248+
In the ARM template, add the following section:
246249

247250
<pre>
248251
"roleOverrideValues": [

0 commit comments

Comments
 (0)