Почему мое ARM-развертывание в формате Invalidrequest - PullRequest
0 голосов
/ 30 октября 2019

Шаблон ARM

Привет, ребята, мы пытаемся внедрить несколько новых шаблонов, где мы развернем частную конечную точку в существующей подсети. Мы успешно установили свойство политик PrivateEndpoint с помощью ARM, однако при развертывании частного ресурса Endpoint мы сталкиваемся с проблемой:

    "resources": [
        {
            "name": "[variables('privateEndpointName')]",
            "location": "[resourceGroup().location]",
            "type": "Microsoft.Network/privateEndpoints",
            "apiVersion": "2019-04-01",
            "properties": {
                "subnet": {
                    "id": "[parameters('subnetId')]"
                },
                "PrivateLinkServiceConnections": [
                    {
                        "properties": {
                            "privateLinkServiceId": "[parameters('privateLinkResource')]",
                            "groupIds": "[parameters('targetSubResource')]",
                            "requestMessage": "[parameters('requestMessage')]"
                        }
                    }
                ]
            },
            "tags": {
            }
        }
]

Параметры, переданные в шаблон, идентичны развертыванию при использовании портала и содержатполный ресурс URI. Развертывание на другом ресурсе, в учетной записи хранения или в SQL приводит к тому же результату.

Мы проверили переменную privateEndpointName, используя пустое развертывание, генерирующее только выходные данные. Так что проблема не в этом, но мы по-прежнему получаем следующую ошибку:

Ошибка

New-AzResourceGroupDeployment : 11:56:20 - Resource Microsoft.Network/privateEndpoints 'privateEndpointSubnet-pe-nameofthesqlserver' failed with message '{
  "error": {
    "code": "InvalidRequestFormat",
    "message": "Cannot parse the request.",
    "details": []
  }
}'

Шаблон портала

Развертывание при этом с использованием портала прошло успешно

"resources": [
        {
            "location": "[parameters('location')]",
            "name": "[parameters('privateEndpointName')]",
            "type": "Microsoft.Network/privateEndpoints",
            "dependsOn": [
                "[parameters('subnetDeploymentName')]"
            ],
            "apiVersion": "2019-04-01",
            "properties": {
                "subnet": {
                    "id": "[parameters('subnet')]"
                },
                "privateLinkServiceConnections": [
                    {
                        "name": "[parameters('privateEndpointName')]",
                        "properties": {
                            "privateLinkServiceId": "[parameters('privateLinkResource')]",
                            "groupIds": "[parameters('targetSubResource')]"
                        }
                    }
                ]
            },
            "tags": {}
        },
        {
            "apiVersion": "2017-05-10",
            "name": "[parameters('subnetDeploymentName')]",
            "type": "Microsoft.Resources/deployments",
            "resourceGroup": "[parameters('virtualNetworkResourceGroup')]",
            "properties": {
                "mode": "Incremental",
                "template": {
                    "$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
                    "contentVersion": "1.0.0.0",
                    "resources": [
                        {
                            "name": "tst2testst-weu-vnet-t/subnet-1",
                            "id": "/subscriptions/removedsubid/resourceGroups/blabla3/providers/Microsoft.Network/virtualNetworks/tst2testst-weu-vnet-t/subnets/subnet-1",
                            "properties": {
                                "provisioningState": "Succeeded",
                                "addressPrefix": "192.168.0.0/24",
                                "networkSecurityGroup": {
                                    "id": "/subscriptions/removedsubid/resourceGroups/blabla3/providers/Microsoft.Network/networkSecurityGroups/vnet-id-nsg"
                                },
                                "serviceEndpoints": [],
                                "delegations": [],
                                "privateEndpointNetworkPolicies": "Disabled",
                                "privateLinkServiceNetworkPolicies": "Enabled"
                            },
                            "type": "Microsoft.Network/virtualNetworks/subnets",
                            "apiVersion": "2019-04-01"
                        }
                    ]
                }
            }
        }
    ]

1 Ответ

0 голосов
/ 30 октября 2019

Исправлено!

privateLinkServiceConnections JSON-объекту также требуется имя, которое не требуется для ссылки Private Endpoint Arm . Я создам для него проблему с GitHub.

...