-
Notifications
You must be signed in to change notification settings - Fork 565
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #2898 from microsoft/arcbox_ws_2025
ArcBox - Windows Server 2025
- Loading branch information
Showing
20 changed files
with
5,054 additions
and
1,207 deletions.
There are no files selected for viewing
Large diffs are not rendered by default.
Oops, something went wrong.
Large diffs are not rendered by default.
Oops, something went wrong.
Large diffs are not rendered by default.
Oops, something went wrong.
497 changes: 258 additions & 239 deletions
497
azure_jumpstart_arcbox/ARM/kubernetes/ubuntuRancher.json
Large diffs are not rendered by default.
Oops, something went wrong.
233 changes: 233 additions & 0 deletions
233
azure_jumpstart_arcbox/ARM/kubernetes/ubuntuRancherNodes.json
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,233 @@ | ||
{ | ||
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#", | ||
"contentVersion": "1.0.0.0", | ||
"metadata": { | ||
"_generator": { | ||
"name": "bicep", | ||
"version": "0.32.4.45862", | ||
"templateHash": "439311248032936140" | ||
} | ||
}, | ||
"parameters": { | ||
"vmName": { | ||
"type": "string", | ||
"defaultValue": "[format('{0}-K3s-Node', parameters('namingPrefix'))]", | ||
"metadata": { | ||
"description": "The name of you Virtual Machine" | ||
} | ||
}, | ||
"adminUsername": { | ||
"type": "string", | ||
"defaultValue": "arcdemo", | ||
"metadata": { | ||
"description": "Username for the Virtual Machine" | ||
} | ||
}, | ||
"sshRSAPublicKey": { | ||
"type": "securestring", | ||
"defaultValue": "", | ||
"metadata": { | ||
"description": "RSA public key used for securing SSH access to ArcBox resources. This parameter is only needed when deploying the DataOps or DevOps flavors." | ||
} | ||
}, | ||
"ubuntuOSVersion": { | ||
"type": "string", | ||
"defaultValue": "22_04-lts-gen2", | ||
"allowedValues": [ | ||
"22_04-lts-gen2" | ||
], | ||
"metadata": { | ||
"description": "The Ubuntu version for the VM. This will pick a fully patched image of this given Ubuntu version" | ||
} | ||
}, | ||
"azureLocation": { | ||
"type": "string", | ||
"defaultValue": "[resourceGroup().location]", | ||
"metadata": { | ||
"description": "Location for all resources." | ||
} | ||
}, | ||
"subnetId": { | ||
"type": "string", | ||
"metadata": { | ||
"description": "Resource Id of the subnet in the virtual network" | ||
} | ||
}, | ||
"stagingStorageAccountName": { | ||
"type": "string", | ||
"metadata": { | ||
"description": "Name for the staging storage account using to hold kubeconfig. This value is passed into the template as an output from mgmtStagingStorage.json" | ||
} | ||
}, | ||
"logAnalyticsWorkspace": { | ||
"type": "string", | ||
"metadata": { | ||
"description": "Name of the Log Analytics workspace used with cluster extensions" | ||
} | ||
}, | ||
"templateBaseUrl": { | ||
"type": "string", | ||
"metadata": { | ||
"description": "The base URL used for accessing artifacts and automation artifacts" | ||
} | ||
}, | ||
"flavor": { | ||
"type": "string", | ||
"allowedValues": [ | ||
"ITPro", | ||
"DevOps", | ||
"DataOps" | ||
], | ||
"metadata": { | ||
"description": "The flavor of ArcBox you want to deploy. Valid values are: 'Full', 'ITPro'" | ||
} | ||
}, | ||
"storageContainerName": { | ||
"type": "string", | ||
"metadata": { | ||
"description": "Storage account container name for artifacts" | ||
} | ||
}, | ||
"namingPrefix": { | ||
"type": "string", | ||
"defaultValue": "ArcBox", | ||
"maxLength": 7, | ||
"metadata": { | ||
"description": "The naming prefix for the nested virtual machines. Example: ArcBox-Win2k19" | ||
} | ||
} | ||
}, | ||
"variables": { | ||
"networkInterfaceName": "[format('{0}-NIC', parameters('vmName'))]", | ||
"osDiskType": "Premium_LRS", | ||
"vmSize": "[if(equals(parameters('flavor'), 'DevOps'), 'Standard_B2ms', 'Standard_B8ms')]", | ||
"diskSize": "[if(equals(parameters('flavor'), 'DataOps'), 512, 64)]" | ||
}, | ||
"resources": [ | ||
{ | ||
"type": "Microsoft.Network/networkInterfaces", | ||
"apiVersion": "2022-01-01", | ||
"name": "[variables('networkInterfaceName')]", | ||
"location": "[parameters('azureLocation')]", | ||
"properties": { | ||
"ipConfigurations": [ | ||
{ | ||
"name": "ipconfig1", | ||
"properties": { | ||
"subnet": { | ||
"id": "[parameters('subnetId')]" | ||
}, | ||
"privateIPAllocationMethod": "Dynamic" | ||
} | ||
} | ||
] | ||
} | ||
}, | ||
{ | ||
"type": "Microsoft.Compute/virtualMachines", | ||
"apiVersion": "2022-03-01", | ||
"name": "[parameters('vmName')]", | ||
"location": "[parameters('azureLocation')]", | ||
"identity": { | ||
"type": "SystemAssigned" | ||
}, | ||
"properties": { | ||
"hardwareProfile": { | ||
"vmSize": "[variables('vmSize')]" | ||
}, | ||
"storageProfile": { | ||
"osDisk": { | ||
"name": "[format('{0}-OSDisk', parameters('vmName'))]", | ||
"caching": "ReadWrite", | ||
"createOption": "FromImage", | ||
"managedDisk": { | ||
"storageAccountType": "[variables('osDiskType')]" | ||
}, | ||
"diskSizeGB": "[variables('diskSize')]" | ||
}, | ||
"imageReference": { | ||
"publisher": "canonical", | ||
"offer": "0001-com-ubuntu-server-jammy", | ||
"sku": "[parameters('ubuntuOSVersion')]", | ||
"version": "latest" | ||
} | ||
}, | ||
"networkProfile": { | ||
"networkInterfaces": [ | ||
{ | ||
"id": "[resourceId('Microsoft.Network/networkInterfaces', variables('networkInterfaceName'))]" | ||
} | ||
] | ||
}, | ||
"osProfile": { | ||
"computerName": "[parameters('vmName')]", | ||
"adminUsername": "[parameters('adminUsername')]", | ||
"linuxConfiguration": { | ||
"disablePasswordAuthentication": true, | ||
"ssh": { | ||
"publicKeys": [ | ||
{ | ||
"path": "[format('/home/{0}/.ssh/authorized_keys', parameters('adminUsername'))]", | ||
"keyData": "[parameters('sshRSAPublicKey')]" | ||
} | ||
] | ||
} | ||
} | ||
} | ||
}, | ||
"dependsOn": [ | ||
"[resourceId('Microsoft.Network/networkInterfaces', variables('networkInterfaceName'))]" | ||
] | ||
}, | ||
{ | ||
"type": "Microsoft.Authorization/roleAssignments", | ||
"apiVersion": "2022-04-01", | ||
"name": "[guid(resourceId('Microsoft.Compute/virtualMachines', parameters('vmName')), 'Microsoft.Authorization/roleAssignments', 'Owner')]", | ||
"properties": { | ||
"principalId": "[reference(resourceId('Microsoft.Compute/virtualMachines', parameters('vmName')), '2022-03-01', 'full').identity.principalId]", | ||
"roleDefinitionId": "[resourceId('Microsoft.Authorization/roleDefinitions', '8e3af657-a8ff-443c-a75c-2fe8c4bcb635')]", | ||
"principalType": "ServicePrincipal" | ||
}, | ||
"dependsOn": [ | ||
"[resourceId('Microsoft.Compute/virtualMachines', parameters('vmName'))]" | ||
] | ||
}, | ||
{ | ||
"type": "Microsoft.Authorization/roleAssignments", | ||
"apiVersion": "2022-04-01", | ||
"name": "[guid(resourceId('Microsoft.Compute/virtualMachines', parameters('vmName')), 'Microsoft.Authorization/roleAssignments', 'Storage Blob Data Contributor')]", | ||
"properties": { | ||
"principalId": "[reference(resourceId('Microsoft.Compute/virtualMachines', parameters('vmName')), '2022-03-01', 'full').identity.principalId]", | ||
"roleDefinitionId": "[resourceId('Microsoft.Authorization/roleDefinitions', 'ba92f5b4-2d11-453d-a403-e96b0029c9fe')]", | ||
"principalType": "ServicePrincipal" | ||
}, | ||
"dependsOn": [ | ||
"[resourceId('Microsoft.Compute/virtualMachines', parameters('vmName'))]" | ||
] | ||
}, | ||
{ | ||
"type": "Microsoft.Compute/virtualMachines/extensions", | ||
"apiVersion": "2022-03-01", | ||
"name": "[format('{0}/{1}', parameters('vmName'), 'installscript_k3s')]", | ||
"location": "[parameters('azureLocation')]", | ||
"properties": { | ||
"publisher": "Microsoft.Azure.Extensions", | ||
"type": "CustomScript", | ||
"typeHandlerVersion": "2.1", | ||
"autoUpgradeMinorVersion": true, | ||
"settings": {}, | ||
"protectedSettings": { | ||
"commandToExecute": "[format('bash installK3s.sh {0} {1} {2} {3} {4} {5} {6} {7}', parameters('adminUsername'), subscription().subscriptionId, parameters('vmName'), parameters('azureLocation'), parameters('stagingStorageAccountName'), parameters('logAnalyticsWorkspace'), parameters('templateBaseUrl'), parameters('storageContainerName'))]", | ||
"fileUris": [ | ||
"[format('{0}artifacts/installK3s.sh', parameters('templateBaseUrl'))]" | ||
] | ||
} | ||
}, | ||
"dependsOn": [ | ||
"[resourceId('Microsoft.Compute/virtualMachines', parameters('vmName'))]", | ||
"[resourceId('Microsoft.Authorization/roleAssignments', guid(resourceId('Microsoft.Compute/virtualMachines', parameters('vmName')), 'Microsoft.Authorization/roleAssignments', 'Owner'))]", | ||
"[resourceId('Microsoft.Authorization/roleAssignments', guid(resourceId('Microsoft.Compute/virtualMachines', parameters('vmName')), 'Microsoft.Authorization/roleAssignments', 'Storage Blob Data Contributor'))]" | ||
] | ||
} | ||
] | ||
} |
Oops, something went wrong.