ARM AKS должен определить хотя бы один системный пул - PullRequest
0 голосов
/ 22 апреля 2020

Я создаю кластер AKS, используя скрипт ARM. Цель состоит в том, чтобы создать кластер из 0 со всеми необходимыми конфигурациями VN, NGS и AgentPool. Вот мой шаблон ARM ManagedCluster:

  {
            "apiVersion": "2020-03-01",
            "name": "[parameters('clusterName')]",
            "type": "Microsoft.ContainerService/managedClusters",
            "location": "[parameters('templateSettings').location]",
            "properties": {
                "kubernetesVersion": "[parameters('kubernetesVersion')]",
                "enableRBAC": true,
                "dnsPrefix": "[parameters('dnsPrefix')]",
                "agentPoolProfiles": [
                    {
                        "name": "nodepool",
                        "count": "[parameters('agentCount')]",
                        "vmSize": "[parameters('agentVMSize')]",
                        "osDiskSizeGB": "[parameters('osDiskSizeGB')]",
                        "vnetSubnetID": "[parameters('vnetSubnetID')]",
                        "maxPods": 110,
                        "minCount": 1,
                        "maxCount": 100,
                        "enableAutoScaling": true,
                        "type": "VirtualMachineScaleSets",
                        "storageProfile": "ManagedDisks"
                    }
                ],
                "servicePrincipalProfile": {
                    "ClientId": "[parameters('servicePrincipalClientId')]",
                    "Secret": "[parameters('servicePrincipalClientSecret')]"
                },
                "networkProfile": {
                    "loadBalancerSku": "standard",
                    "networkPlugin": "kubenet"
                },
                "addonProfiles": {
                    "httpApplicationRouting": {
                        "enabled": true
                    },
                    "omsagent": {
                        "enabled": true,
                        "config": {
                            "logAnalyticsWorkspaceResourceID": "[resourceId('Microsoft.OperationalInsights/workspaces', parameters('workspaceName'))]"
                        }
                    }
                },
                "nodeResourceGroup": "[concat(resourceGroup().name, '-nodes')]"
            }
        }

При развертывании на Azure я получаю эту ошибку, которая нигде не упоминается в документации:

{
    "error": {
        "code": "InvalidTemplateDeployment",
        "message": "The template deployment 'AksDeployment' is not valid according to the validation procedure. The tracking id is 'b68b569d-**********************'. See inner errors for details.",
        "details": [
            {
                "code": "MustDefineAtLeastOneSystemPool",
                "message": "Provisioning of resource(s) for container service aks-arm-test in resource group rg-arm-test failed. Message: {\n  \"code\": \"MustDefineAtLeastOneSystemPool\",\n  \"message\": \"Must define at least one system pool.\"\n }. Details: "
            }
        ]
    }
}

1 Ответ

2 голосов
/ 23 апреля 2020

на самом деле, вы можете просто пометить его как систему:

{
    "name": "nodepool",
    "count": "[parameters('agentCount')]",
    "vmSize": "[parameters('agentVMSize')]",
    "osDiskSizeGB": "[parameters('osDiskSizeGB')]",
    "vnetSubnetID": "[parameters('vnetSubnetID')]",
    "maxPods": 110,
    "minCount": 1,
    "maxCount": 100,
    "enableAutoScaling": true,
    "type": "VirtualMachineScaleSets",
    "storageProfile": "ManagedDisks",
    "mode" : "System"
}

https://docs.microsoft.com/en-us/azure/aks/use-system-pools#show -details-for-your-node-pool

старые API версия также должна работать

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...