Skip to content

Commit 1d3fbde

Browse files
authored
Update best-practices-onboard-deploy.md
updates for CGS
1 parent 3745c98 commit 1d3fbde

File tree

1 file changed

+0
-64
lines changed

1 file changed

+0
-64
lines changed

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

Lines changed: 0 additions & 64 deletions
Original file line numberDiff line numberDiff line change
@@ -88,70 +88,6 @@ These five components form a single NSDG. A single NSDG can have multiple NSDVs.
8888
> [!NOTE]
8989
> Changes in NFDV shouldn't trigger an NSDV update. The NFDV value should be exposed as a parameter within the CGS, so operators can control what to deploy by using CGVs.
9090
91-
## Configuration Group Schema considerations
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 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-
95-
### Scenario
96-
97-
- FluentD, Kibana, and Splunk (common third-party components) are always deployed for all NFs within an NSD. We recommend grouping these components into a single NFDG.
98-
- NSD has multiple NFs that all share a few configurations (deployment location, publisher name, and a few chart configurations).
99-
100-
In this scenario, we recommend that you use a single global CGS to expose the common NF and third-party component configurations. You can define NF-specific CGS as needed.
101-
102-
### Choose parameters to expose
103-
104-
- CGS should only have parameters that are used by NFs (day 0/N configuration) or shared components.
105-
- Parameters that are rarely configured should have default values defined.
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-
- 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-
- 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-
- A single user-assigned managed identity should be used in all the NF ARM templates and should be exposed via CGS.
110-
111-
CGS payload:
112-
113-
<pre>
114-
{
115-
  "type": "object",
116-
  "properties": {
117-
    "abc": {
118-
    "type": "integer",
119-
    <b>"default": 30</b>
120-
    },
121-
    "xyz": {
122-
    "type": "integer",
123-
    <b>"default": 40</b>
124-
    },
125-
    "qwe": {
126-
    "type": "integer" //doesn't have defaults
127-
    }
128-
  }
129-
  "required": "qwe"
130-
}
131-
</pre>
132-
133-
Corresponding CGV payload passed by the operator:
134-
135-
<pre>
136-
{
137-
"qwe": 20
138-
}
139-
</pre>
140-
141-
Resulting CGV payload generated by Azure Operator Service Manager:
142-
143-
<pre>
144-
{
145-
"abc": 30,
146-
"xyz": 40,
147-
"qwe": 20
148-
}
149-
</pre>
150-
151-
## Configuration Group Values considerations
152-
153-
Before you submit the CGV resource creation, you can validate that the schema and values of the underlying YAML or JSON file match what the corresponding CGS expects. To accomplish that, one option is to use the YAML extension for Visual Studio Code.
154-
15591
## CLI considerations
15692

15793
The Azure Operator Service Manager CLI extension assists with the publishing of NFDs and NSDs. Use this tool as the starting point for creating new NFDs and NSDs. Consider using the CLI to create the initial files. Then edit them to incorporate infrastructure components before you publish.

0 commit comments

Comments
 (0)