Skip to content

Commit 84700df

Browse files
authored
Merge pull request #274585 from jmmason70/main
Updates to Azure Operator Nexus How-To Guides and Reference Documentation
2 parents 13d14b6 + cbb8e7a commit 84700df

11 files changed

+2644
-103
lines changed

articles/operator-nexus/TOC.yml

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -118,6 +118,10 @@
118118
href: howto-configure-network-fabric-controller.md
119119
- name: Cluster Manager
120120
href: howto-cluster-manager.md
121+
- name: Cluster Manager Template JSON Example
122+
href: clustermanager-jsonc-example.md
123+
- name: Cluster Manager Parameters JSON Example
124+
href: clustermanager-parameters-jsonc-example.md
121125
- name: On-Premises Operator Nexus Instance
122126
expanded: false
123127
items:
@@ -130,6 +134,10 @@
130134
href: howto-configure-network-fabric.md
131135
- name: Cluster
132136
href: howto-configure-cluster.md
137+
- name: Cluster Template JSON Example
138+
href: cluster-jsonc-example.md
139+
- name: Cluster Parameters JSON Example
140+
href: cluster-parameters-jsonc-example.md
133141
- name: Instance Readiness Testing
134142
href: howto-run-instance-readiness-testing.md
135143
- name: Cluster Upgrades
@@ -323,4 +331,4 @@
323331
items:
324332
- name: 2404.2
325333
href: release-notes-2404.2.md
326-
334+
Lines changed: 347 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,347 @@
1+
---
2+
title: "Azure Operator Nexus - Example of cluster.jsonc template file"
3+
description: Example of cluster.jsonc template file to use with ARM template in creating a cluster.
4+
author: jeffreymason
5+
ms.author: jeffreymason
6+
ms.service: azure-operator-nexus
7+
ms.topic: how-to
8+
ms.date: 05/08/2024
9+
ms.custom: template-how-to
10+
---
11+
12+
# Example of cluster.jsonc template file.
13+
14+
```cluster.jsonc
15+
16+
{
17+
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
18+
"contentVersion": "1.0.0.0",
19+
"parameters": {
20+
"environment": {
21+
"type": "string",
22+
"metadata": {
23+
"description": "Name of the environment"
24+
}
25+
},
26+
"name": {
27+
"type": "string",
28+
"metadata": {
29+
"description": "Name of Cluster Resource"
30+
}
31+
},
32+
"location": {
33+
"type": "string",
34+
"metadata": {
35+
"description": "Location of Cluster Resource"
36+
}
37+
},
38+
"resourceGroupName": {
39+
"type": "string",
40+
"metadata": {
41+
"description": "RG of Cluster Resource"
42+
},
43+
"defaultValue": ""
44+
},
45+
"managedResourceGroupName": {
46+
"type": "string",
47+
"metadata": {
48+
"description": "Specify a managed resource group for the resource."
49+
}
50+
},
51+
"clusterLawName": {
52+
"type": "string"
53+
},
54+
"networkFabricId": {
55+
"type": "string",
56+
"metadata": {
57+
"description": "ARM ID of the Network Fabric"
58+
}
59+
},
60+
"clusterType": {
61+
"type": "string",
62+
"metadata": {
63+
"description": "The type of the cluster, whether single or multi-rack"
64+
},
65+
"allowedValues": [
66+
"SingleRack",
67+
"MultiRack"
68+
]
69+
},
70+
"clusterVersion": {
71+
"type": "string",
72+
"metadata": {
73+
"description": "The version of the cluster to install"
74+
}
75+
},
76+
"clusterLocation": {
77+
"type": "string",
78+
"metadata": {
79+
"description": "Customer name of physical location"
80+
}
81+
},
82+
"customLocation": {
83+
"type": "string",
84+
"metadata": {
85+
"description": "The custom location of the cluster manager"
86+
}
87+
},
88+
"aggregatorOrSingleRack": {
89+
"type": "object",
90+
"metadata": {
91+
"description": "Aggregator rack or single rack definition"
92+
}
93+
},
94+
"computeRacks": {
95+
"type": "array",
96+
"metadata": {
97+
"description": "Compute rack definitions"
98+
}
99+
},
100+
"clusterServicePrincipal": {
101+
"type": "secureobject",
102+
"metadata": {
103+
"description": "Service principal account details used by the cluster to install the Arc Appliance. This field is needed in the near-term for Arc enrollment"
104+
}
105+
},
106+
"secretArchive": {
107+
"type": "string",
108+
"metadata": {
109+
"description": "Secret KeyVault for credential rotation"
110+
}
111+
},
112+
"sshKeyUrl": {
113+
"type": "string",
114+
"metadata": {
115+
"description": "SSH Key URL that is used for to gather list of Public Keys"
116+
}
117+
}
118+
},
119+
"variables": {},
120+
"resources": [
121+
{
122+
"type": "Microsoft.Resources/deployments",
123+
"apiVersion": "2021-04-01",
124+
"name": "[concat(parameters('environment'), '-lab-cluster-deployment')]",
125+
"resourceGroup": "[parameters('resourceGroupName')]",
126+
"tags": {},
127+
"properties": {
128+
"debugSetting": {
129+
"detailLevel": "requestContent, responseContent"
130+
},
131+
"mode": "Incremental",
132+
"expressionEvaluationOptions": {
133+
"scope": "inner"
134+
},
135+
"template": {
136+
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
137+
"contentVersion": "1.0.0.0",
138+
"parameters": {
139+
"environment": {
140+
"type": "string",
141+
"metadata": {
142+
"description": "Environment name of the resource e.g. m15"
143+
}
144+
},
145+
"name": {
146+
"type": "string",
147+
"metadata": {
148+
"description": "Name of Cluster Resource"
149+
}
150+
},
151+
"location": {
152+
"type": "string",
153+
"metadata": {
154+
"description": "Location of Cluster Resource"
155+
}
156+
},
157+
"analyticsWorkspaceId": {
158+
"type": "string"
159+
},
160+
"clusterLawName": {
161+
"type": "string"
162+
},
163+
"resourceGroupName": {
164+
"type": "string"
165+
},
166+
"networkFabricId": {
167+
"type": "string",
168+
"metadata": {
169+
"description": "ARM ID of the Network Fabric"
170+
}
171+
},
172+
"clusterType": {
173+
"type": "string",
174+
"metadata": {
175+
"description": "The type of the cluster, whether single or multi-rack"
176+
},
177+
"allowedValues": [
178+
"SingleRack",
179+
"MultiRack"
180+
]
181+
},
182+
"clusterVersion": {
183+
"type": "string",
184+
"metadata": {
185+
"description": "The version of the cluster to install"
186+
}
187+
},
188+
"clusterLocation": {
189+
"type": "string",
190+
"metadata": {
191+
"description": "Customer name of physical location"
192+
}
193+
},
194+
"customLocation": {
195+
"type": "string",
196+
"metadata": {
197+
"description": "The custom location of the cluster manager"
198+
}
199+
},
200+
"aggregatorOrSingleRack": {
201+
"type": "object",
202+
"metadata": {
203+
"description": "Aggregator rack or single rack definition"
204+
}
205+
},
206+
"computeRacks": {
207+
"type": "array",
208+
"metadata": {
209+
"description": "Compute rack definitions"
210+
}
211+
},
212+
"clusterServicePrincipal": {
213+
"type": "secureobject",
214+
"metadata": {
215+
"description": "Service principal account details used by the cluster to install the Arc Appliance. This field is needed for Arc enrollment."
216+
}
217+
},
218+
"managedResourceGroupConfiguration": {
219+
"type": "object"
220+
},
221+
"secretArchive": {
222+
"type": "string",
223+
"metadata": {
224+
"description": "Secret KeyVault for credential rotation"
225+
}
226+
},
227+
"sshKeyUrl": {
228+
"type": "string",
229+
"metadata": {
230+
"description": "SSH Key URL that is used for to gather list of Public Keys"
231+
}
232+
}
233+
},
234+
"variables": {},
235+
"resources": [
236+
{
237+
"type": "Microsoft.OperationalInsights/workspaces",
238+
"apiVersion": "2021-12-01-preview",
239+
"name": "[parameters('clusterLawName')]",
240+
"location": "[parameters('location')]",
241+
"properties": {
242+
"sku": {
243+
"name": "pergb2018"
244+
},
245+
"retentionInDays": 120,
246+
"features": {
247+
"enableLogAccessUsingOnlyResourcePermissions": true
248+
}
249+
}
250+
},
251+
{
252+
"dependsOn": [
253+
"[resourceId('Microsoft.OperationalInsights/workspaces/', parameters('clusterLawName'))]"
254+
],
255+
"type": "Microsoft.NetworkCloud/clusters",
256+
"apiVersion": "2023-07-01",
257+
"name": "[parameters('name')]",
258+
"location": "[parameters('location')]",
259+
"tags": {
260+
"LabEnvironment": "[parameters('environment')]",
261+
"ResourceType": "cluster",
262+
"sshKeyUrl": "[parameters('sshKeyUrl')]"
263+
},
264+
"extendedLocation": {
265+
"name": "[parameters('customLocation')]",
266+
"type": "CustomLocation"
267+
},
268+
"properties": {
269+
"analyticsWorkspaceId": "[parameters('analyticsWorkspaceId')]",
270+
"networkFabricId": "[parameters('networkFabricId')]",
271+
"clusterType": "[parameters('clusterType')]",
272+
"clusterVersion": "[parameters('clusterVersion')]",
273+
"clusterLocation": "[parameters('clusterLocation')]",
274+
"aggregatorOrSingleRackDefinition": "[parameters('aggregatorOrSingleRack')]",
275+
"computeRackDefinitions": "[parameters('computeRacks')]",
276+
"clusterServicePrincipal": "[parameters('clusterServicePrincipal')]",
277+
"managedResourceGroupConfiguration": "[parameters('managedResourceGroupConfiguration')]"
278+
}
279+
}
280+
],
281+
"outputs": {}
282+
},
283+
"parameters": {
284+
"environment": {
285+
"value": "[parameters('environment')]"
286+
},
287+
"analyticsWorkspaceId": {
288+
"value": "[concat(subscription().id, '/resourceGroups/', parameters('resourceGroupName'), '/providers/Microsoft.OperationalInsights/workspaces/', parameters('clusterLawName'))]"
289+
},
290+
"name": {
291+
"value": "[parameters('name')]"
292+
},
293+
"location": {
294+
"value": "[parameters('location')]"
295+
},
296+
"clusterLawName": {
297+
"value": "[parameters('clusterLawName')]"
298+
},
299+
"resourceGroupName": {
300+
"value": "[parameters('resourceGroupName')]"
301+
},
302+
"managedResourceGroupConfiguration": {
303+
"value": {
304+
"location": "[parameters('location')]",
305+
"name": "[parameters('managedResourceGroupName')]"
306+
}
307+
},
308+
"networkFabricId": {
309+
"value": "[parameters('networkFabricId')]"
310+
},
311+
"clusterType": {
312+
"value": "[parameters('clusterType')]"
313+
},
314+
"clusterVersion": {
315+
"value": "[parameters('clusterVersion')]"
316+
},
317+
"clusterLocation": {
318+
"value": "[parameters('clusterLocation')]"
319+
},
320+
"customLocation": {
321+
"value": "[parameters('customLocation')]"
322+
},
323+
"aggregatorOrSingleRack": {
324+
"value": "[parameters('aggregatorOrSingleRack')]"
325+
},
326+
"computeRacks": {
327+
"value": "[parameters('computeRacks')]"
328+
},
329+
"clusterServicePrincipal": {
330+
"value": "[parameters('clusterServicePrincipal')]"
331+
},
332+
"secretArchive": {
333+
"value": {
334+
"keyVaultId": "[parameters('secretArchive')]",
335+
"useKeyVault": "True"
336+
337+
},
338+
"sshKeyUrl": {
339+
"value": "[parameters('sshKeyUrl')]"
340+
}
341+
}
342+
}
343+
}
344+
],
345+
"outputs": {}
346+
}
347+
```

0 commit comments

Comments
 (0)