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
# Basic concepts for Azure Operator Service Manager
12
-
Microsoft has developed many proven best practices for managing network functions (NFs) using Azure Operator Service Manager. This article provides basic guidelines that NF vendors, telco operators, and their partners can follow to optimize NF deployments. Consider these concepts when beginning the onboard and deployment planning process.
12
+
This article captures best practice recommendations to onboard and deploy network functions (NFs) with Azure Operator Service Manager. Following these basic guidelines, vendors, operators, and their partners can optimize network services deployed to Azure Operator Nexus. Consider these concepts at the beginning of any network function onboarding planning process.
13
13
14
14
## General considerations
15
15
We recommend that you first onboard and deploy your simplest NFs (one or two charts) by using the quickstarts to familiarize yourself with the overall flow. You can add necessary configuration details in subsequent iterations. As you go through the quickstarts, consider the following points:
@@ -23,9 +23,9 @@ We recommend that you first onboard and deploy your simplest NFs (one or two cha
23
23
## Publisher considerations
24
24
- We recommend that you create a single publisher per NF supplier, or per NF type per NF supplier, where the NF supplier may provide more than one NF type. This practice;
25
25
- Provides for the most optimal support, maintenance, and governance experience, by preventing proliferation of publishers. Especially during upgrade activities where the same action is often executed across many NFs.
26
-
- Lowers total operating costs by reducing the number of publisher backing resources, like ACR or Storage Accounts.
26
+
- Lowers total operating costs by reducing the number of publisher backing resources, like Azure Container Registry (ACR) or Storage Accounts.
27
27
- Simplifies the network service design (NSD), where it may consist of multiple NFs from multiple vendors.
28
-
- After you test and approve the desired set of Azure Operator Service Manager publisher resources for production use, we recommend marking the entire set as immutable. Marking the set as immutable helps prevent accidental changes and ensure a consistent deployment experience. Consider relying on immutability capabilities to distinguish between:
28
+
- After you test and approve the desired set of Azure Operator Service Manager publisher resources for production use, we recommend marking the entire set as immutable. Marking the set as immutable helps prevent accidental changes and ensures a consistent deployment experience. Immutability markings help distinguish between:
29
29
- Resources and artifacts used in production
30
30
- Resources and artifacts used for testing and development
31
31
@@ -49,7 +49,7 @@ The network function definition group (NFDG) represents the smallest component t
49
49
* For CNF NFDVs, the `networkFunctionApplications` list can contain only Helm packages.
50
50
* It's reasonable to include multiple Helm packages if they're always deployed and deleted together.
51
51
* For VNF NFDVs, the `networkFunctionApplications` list must contain at least one `VhdImageFile` value and one ARM template.
52
-
* To deploy multiple VMs for a single VNF, make sure to use a separate ARM template for each VM.
52
+
* To deploy multiple virtual machines (VMs) for a single VNF, make sure to use a separate ARM template for each VM.
53
53
54
54
The ARM template can deploy only Resource Manager resources from the following resource providers:
55
55
-`Microsoft.Compute`
@@ -63,14 +63,14 @@ The ARM template can deploy only Resource Manager resources from the following r
63
63
For ARM templates that contain anything beyond the preceding list, all `PUT` calls on the VNF result in a validation error.
64
64
65
65
### NFDV minor or major updates
66
-
The NFDV represents a release of the base NFDG and and is associated to a unique version. As the NF changes overtime, many NFDVs are use to capture capabilities, at any given point in time. Typical changes that trigger a new NFDV may include:
66
+
The NFDV represents a release of the base NFDG and is associated to a unique version. As the NF changes overtime, many NFDVs are use to capture capabilities, at any given point in time. Typical changes that trigger a new NFDV may include:
67
67
- Updating NF artifacts, such as new charts or image versions.
68
68
- Updating CGSs or configuration group values (CGVs) that change `deployParametersMappingRuleProfile`.
69
69
- Updating any default values hard-coded into the NFDV.
70
70
- Updating component enablement, to prevent them from being deployed via `applicationEnablement: Disabled`.
71
71
72
72
> [!NOTE]
73
-
> A minor or major NF release which doesn't expose new CGS parameters requires only updating the artifact manifest, pushing new images and charts, and bumping the NFDV.
73
+
> A NF release which doesn't expose new CGS parameters requires only updating the artifact manifest, pushing new images and charts, and bumping the NFDV.
74
74
75
75
## NSDG and NSDV considerations
76
76
A network service design group (NSDG) is a composite of one or more NFDGs and any infrastructure components deployed at the same time. These components might include clusters and VMs in Nexus Kubernetes or Azure Kubernetes Service (AKS). A site network service (SNS) refers to a single NSDV. Such a design provides a consistent and repeatable deployment of the network service to a site from a single SNS `PUT` call.
@@ -85,13 +85,13 @@ An example NSDG might consist of:
85
85
These five components form a single NSDG. A single NSDG can have multiple NSDVs.
86
86
87
87
### NSDV minor or major update
88
-
The NSDV represents a release of the base NSD and and is associated to a unique version. NSDV changes are less frequent then NFDV changes, and in some cases, a single NSDV supports the entire lifecycle of a site network service. However, the following service changes do require new a NSDV:
89
-
- Creating, deleting or adding values in CGSs.
88
+
The NSDV represents a release of the base NSD and is associated to a unique version. NSDV changes are less frequent than NFDV changes, and in some cases, a single NSDV supports the entire lifecycle of a site network service. However, the following service changes do require new a NSDV:
89
+
- Creating, deleting, or adding values in CGSs.
90
90
- Changing the NF ARM template used by a deployed site network service resource.
91
91
- Changing the infrastructure ARM template used by a deploy site resource.
92
92
93
93
> [!NOTE]
94
-
> It's recommened to expose the NFDV as a parameter within the CGS, so operators can control what to deploy by using CGVs. This further reduces NSDV change frequency.
94
+
> Expose the NFDV as a parameter within the CGS, so operators can control what to deploy using CGVs, further reducing NSDV change frequency.
95
95
96
96
## SNS considerations
97
97
We recommend that you have a single SNS for the entire site, including the infrastructure. The SNS should deploy any required infrastructure (for example, clusters and VMs in Nexus Kubernetes or AKS), and then deploy the required NFs on top. Such a design provides a consistent and repeatable deployment of the network service to a site from a single SNS `PUT` call.
@@ -103,7 +103,7 @@ The following two scenarios illustrate Azure Operator Service Manager resource m
103
103
104
104
### Scenario: Single network function
105
105
An NF with one or two application components is deployed to a Nexus Kubernetes cluster. Here's the breakdown of resources:
106
-
-**NFDG**: If components can be used independently, two NFDGs (one per component). If components are always deployed together, then a single NFDG.
106
+
-**NFDG**: If components can be used independently, two NFDGs with one per component. If components are always deployed together, then a single NFDG.
107
107
-**NFDV**: As needed based on use cases that trigger NFDV minor or major version updates.
108
108
-**NSDG**: Single. Combines the NFs and the Kubernetes cluster definitions.
109
109
-**NSDV**: As needed based on the use cases that trigger NSDV minor or major version updates.
@@ -120,7 +120,7 @@ Multiple NFs with some shared and independent components are deployed to a Nexus
120
120
-**NSDG**: Single. Combines all NFs, shared and independent components, and infrastructure (Kubernetes cluster or any supporting VMs).
121
121
-**NSDV**: As needed based on the use cases that trigger NSDV minor or major version updates.
122
122
-**CGS**:
123
-
- Single. Global for all components that have shared configuration values.
123
+
- Single. Global for all components.
124
124
- Single per NF, including the version of the NFD.
125
125
- Depending on the total number of parameters, consider combining all the CGSs into a single CGS.
126
126
-**CGV**: Equal to the number of CGSs.
@@ -201,4 +201,4 @@ As the first step toward cleaning up an onboarded environment, delete publisher
201
201
> [!IMPORTANT]
202
202
> Be sure to delete the SNS before you delete the NFDV.
203
203
204
-
Azure Operator Service Manager does not delete namespaces as part of any deletion operation. As such, after all resources are deleted, some artifacts might remain on the cluster. To remove any remaining artifacts, you should delete any workload namespaces created on the cluster. Including the namespace deletion operation as part of the workflow pipeline is a recommendation to automate the action.
204
+
Azure Operator Service Manager doesn't delete namespaces as part of any deletion operation. As such, after all resources are deleted, some artifacts might remain on the cluster. To remove any remaining artifacts, you should delete any workload namespaces created on the cluster. Including the namespace deletion operation as part of the workflow pipeline is a recommendation to automate the action.
0 commit comments