Skip to content

Commit

Permalink
Add AIToolchainOperator to AKS preview API (#26151)
Browse files Browse the repository at this point in the history
* Add AIToolchainOperator to AKS preview API

Signed-off-by: Heba Elayoty <hebaelayoty@gmail.com>

* Remove custom name from the PR

Signed-off-by: Heba Elayoty <hebaelayoty@gmail.com>

* prettier fix

---------

Signed-off-by: Heba Elayoty <hebaelayoty@gmail.com>
Co-authored-by: Heba Elayoty <hebaelayoty@gmail.com>
  • Loading branch information
FumingZhang and helayoty committed Oct 20, 2023
1 parent 5bba592 commit 29c3215
Show file tree
Hide file tree
Showing 2 changed files with 254 additions and 0 deletions.
Original file line number Diff line number Diff line change
@@ -0,0 +1,236 @@
{
"parameters": {
"api-version": "2023-09-02-preview",
"subscriptionId": "subid1",
"resourceGroupName": "rg1",
"resourceName": "clustername1",
"parameters": {
"location": "location1",
"tags": {
"tier": "production",
"archv2": ""
},
"sku": {
"name": "Basic",
"tier": "Free"
},
"properties": {
"kubernetesVersion": "",
"dnsPrefix": "dnsprefix1",
"agentPoolProfiles": [
{
"name": "nodepool1",
"count": 3,
"vmSize": "Standard_DS2_v2",
"osType": "Linux",
"type": "VirtualMachineScaleSets",
"enableNodePublicIP": true,
"mode": "System"
}
],
"linuxProfile": {
"adminUsername": "azureuser",
"ssh": {
"publicKeys": [
{
"keyData": "keydata"
}
]
}
},
"networkProfile": {
"loadBalancerSku": "standard",
"outboundType": "loadBalancer",
"networkPlugin": "azure",
"networkPluginMode": "overlay",
"networkDataplane": "cilium",
"loadBalancerProfile": {
"managedOutboundIPs": {
"count": 2
}
}
},
"servicePrincipalProfile": {
"clientId": "clientid",
"secret": "secret"
},
"addonProfiles": {},
"enableRBAC": true,
"aiToolchainOperatorProfile": {
"enabled": true
}
}
}
},
"responses": {
"200": {
"body": {
"id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
"location": "location1",
"name": "clustername1",
"tags": {
"archv2": "",
"tier": "production"
},
"type": "Microsoft.ContainerService/ManagedClusters",
"properties": {
"provisioningState": "Succeeded",
"maxAgentPools": 1,
"kubernetesVersion": "1.9.6",
"dnsPrefix": "dnsprefix1",
"agentPoolProfiles": [
{
"name": "nodepool1",
"count": 3,
"vmSize": "Standard_DS2_v2",
"maxPods": 110,
"osType": "Linux",
"provisioningState": "Succeeded",
"orchestratorVersion": "1.9.6",
"currentOrchestratorVersion": "1.9.6",
"type": "VirtualMachineScaleSets",
"enableNodePublicIP": true,
"mode": "System",
"nodeImageVersion": "AKSUbuntu:1604:2020.03.11"
}
],
"linuxProfile": {
"adminUsername": "azureuser",
"ssh": {
"publicKeys": [
{
"keyData": "keydata"
}
]
}
},
"nodeResourceGroup": "MC_rg1_clustername1_location1",
"enableRBAC": true,
"fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io",
"networkProfile": {
"loadBalancerSku": "standard",
"outboundType": "loadBalancer",
"networkPlugin": "azure",
"networkPluginMode": "overlay",
"networkDataplane": "cilium",
"podCidr": "10.244.0.0/16",
"serviceCidr": "10.0.0.0/16",
"dnsServiceIP": "10.0.0.10",
"podCidrs": [
"10.244.0.0/16"
],
"serviceCidrs": [
"10.0.0.0/16"
],
"ipFamilies": [
"IPv4"
],
"loadBalancerProfile": {
"allocatedOutboundPorts": 2000,
"idleTimeoutInMinutes": 10,
"managedOutboundIPs": {
"count": 2
},
"effectiveOutboundIPs": [
{
"id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
},
{
"id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
}
]
}
},
"aiToolchainOperatorProfile": {
"enabled": true
}
}
}
},
"201": {
"body": {
"id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
"location": "location1",
"name": "clustername1",
"tags": {
"archv2": "",
"tier": "production"
},
"type": "Microsoft.ContainerService/ManagedClusters",
"properties": {
"provisioningState": "Succeeded",
"maxAgentPools": 1,
"kubernetesVersion": "1.9.6",
"dnsPrefix": "dnsprefix1",
"agentPoolProfiles": [
{
"name": "nodepool1",
"count": 3,
"vmSize": "Standard_DS2_v2",
"maxPods": 110,
"osType": "Linux",
"provisioningState": "Succeeded",
"orchestratorVersion": "1.9.6",
"currentOrchestratorVersion": "1.9.6",
"type": "VirtualMachineScaleSets",
"enableNodePublicIP": true,
"mode": "System",
"nodeImageVersion": "AKSUbuntu:1604:2020.03.11"
}
],
"linuxProfile": {
"adminUsername": "azureuser",
"ssh": {
"publicKeys": [
{
"keyData": "keydata"
}
]
}
},
"nodeResourceGroup": "MC_rg1_clustername1_location1",
"enableRBAC": true,
"enablePodSecurityPolicy": true,
"fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io",
"networkProfile": {
"loadBalancerSku": "standard",
"outboundType": "loadBalancer",
"networkPlugin": "azure",
"networkPluginMode": "overlay",
"networkDataplane": "cilium",
"podCidr": "10.244.0.0/16",
"serviceCidr": "10.0.0.0/16",
"dnsServiceIP": "10.0.0.10",
"podCidrs": [
"10.244.0.0/16"
],
"serviceCidrs": [
"10.0.0.0/16"
],
"ipFamilies": [
"IPv4"
],
"loadBalancerProfile": {
"allocatedOutboundPorts": 2000,
"idleTimeoutInMinutes": 10,
"managedOutboundIPs": {
"count": 2
},
"effectiveOutboundIPs": [
{
"id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip1"
},
{
"id": "/subscriptions/subid1/resourceGroups/MC_rg1/providers/Microsoft.Network/publicIPAddresses/mgdoutboundip2"
}
]
}
},
"aiToolchainOperatorProfile": {
"enabled": true
}
}
}
}
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -649,6 +649,9 @@
"Create Managed Cluster with VirtualMachines pool type": {
"$ref": "./examples/ManagedClustersCreate_VirtualMachines.json"
},
"Create Managed Cluster with AI Toolchain Operator enabled": {
"$ref": "./examples/ManagedClustersCreate_EnableAIToolchainOperator.json"
},
"Create Managed Cluster with Node Autp Provisioning": {
"$ref": "./examples/ManagedClustersCreate_NodeAutoProvisioning.json"
}
Expand Down Expand Up @@ -5466,6 +5469,10 @@
"$ref": "#/definitions/ManagedClusterMetricsProfile",
"description": "Optional cluster metrics configuration."
},
"aiToolchainOperatorProfile": {
"$ref": "#/definitions/ManagedClusterAIToolchainOperatorProfile",
"description": "AI toolchain operator settings that apply to the whole cluster."
},
"nodeProvisioningProfile": {
"$ref": "#/definitions/ManagedClusterNodeProvisioningProfile",
"description": "Node provisioning settings that apply to the whole cluster."
Expand Down Expand Up @@ -8778,6 +8785,17 @@
}
}
},
"ManagedClusterAIToolchainOperatorProfile": {
"type": "object",
"description": "When enabling the operator, a set of AKS managed CRDs and controllers will be installed in the cluster. The operator automates the deployment of OSS models for inference and/or training purposes. It provides a set of preset models and enables distributed inference against them.",
"properties": {
"enabled": {
"type": "boolean",
"title": "Whether to enable AI toolchain operator to the cluster",
"description": "Indicates if AI toolchain operator enabled or not."
}
}
},
"ManagedClusterNodeProvisioningProfile": {
"type": "object",
"properties": {
Expand Down

0 comments on commit 29c3215

Please sign in to comment.