Skip to content

[Container Instance] Failed to create container with 'Private' IP address setting using Standby-Pool #30898

@kaakaa

Description

@kaakaa

Describe the bug

Summary

Creating container using Standby pool was failed with Message: ContainerGroup properties other than config map are not allowed.

Possible cause

My Standby pool manages the container group profile with ipAddress.type = 'Private', so I have to specify subnet-id when executing az container create. If subnet-id is specified, ports property will be added to ContainerProperties here, however, when creating a container using a standby pool, only ConfigMap can be specified in ContainerProperties, so the ports setting will cause an error.

Related command

az container create
--resource-group "sample-rg"
--name "aci-from-pool"
--location "westus2"
--container-group-profile-id "..."
--container-group-profile-revision 1
--standby-pool-profile-id "..."
--subnet "..."
--debug

Errors

Code: BadRequest
Message: ContainerGroup properties other than config map are not allowed

Issue script & Debug output

PS > az container create
--resource-group "sample-rg"
--name "aci-from-pool"
--location "westus2"
--container-group-profile-id "..."
--container-group-profile-revision 1
--standby-pool-profile-id "..."
--subnet "..."
--debug

...

cli.azure.cli.core.sdk.policies: Request URL: 'https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-rg/providers/Microsoft.ContainerInstance/containerGroups/aci-from-pool?api-version=2024-05-01-preview'
cli.azure.cli.core.sdk.policies: Request method: 'PUT'
cli.azure.cli.core.sdk.policies: Request headers:
cli.azure.cli.core.sdk.policies: 'Content-Type': 'application/json'
cli.azure.cli.core.sdk.policies: 'Content-Length': '999'
cli.azure.cli.core.sdk.policies: 'Accept': 'application/json'
cli.azure.cli.core.sdk.policies: 'x-ms-client-request-id': '00000000-0000-0000-0000-000000000000'
cli.azure.cli.core.sdk.policies: 'CommandName': 'container create'
cli.azure.cli.core.sdk.policies: 'ParameterSetName': '--resource-group --location --name --os-type --fail-container-group-create-on-reuse-failure --standby-pool-profile-id --container-group-profile-revision --container-group-profile-id --subnet --debug'
cli.azure.cli.core.sdk.policies: 'User-Agent': 'AZURECLI/2.69.0 (MSI) azsdk-python-core/1.31.0 Python/3.12.8 (Windows-10-10.0.19045-SP0)'
cli.azure.cli.core.sdk.policies: 'Authorization': '*****'
cli.azure.cli.core.sdk.policies: Request body:
cli.azure.cli.core.sdk.policies: {"properties": {"containers": [{"name": "aci-from-pool", "properties": {"ports": [{"protocol": "TCP", "port": 80}], "configMap": {"keyValuePairs": {}}}}], "ipAddress": {"ports": [{"protocol": "TCP", "port": 80}], "type": "Private", "autoGeneratedDomainNameLabelScope": "Unsecure"}, "osType": "Linux", "subnetIds": [{"id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-rg/providers/Microsoft.Network/virtualNetworks/sample-vnet/subnets/test-hello-world-subnet"}], "containerGroupProfile": {"id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-rg/providers/Microsoft.ContainerInstance/containerGroupProfiles/sample-containerGroupProfile", "revision": 5}, "standbyPoolProfile": {"id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-rg/providers/Microsoft.StandbyPool/standbyContainerGroupPools/hello-world-pool", "failContainerGroupCreateOnReuseFailure": true}}, "location": "westus2", "tags": {}}
urllib3.connectionpool: Starting new HTTPS connection (1): management.azure.com:443
urllib3.connectionpool: https://management.azure.com:443 "PUT /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-rg/providers/Microsoft.ContainerInstance/containerGroups/aci-from-pool?api-version=2024-05-01-preview HTTP/1.1" 400 107
cli.azure.cli.core.sdk.policies: Response status: 400
cli.azure.cli.core.sdk.policies: Response headers:
cli.azure.cli.core.sdk.policies: 'Cache-Control': 'no-cache'
cli.azure.cli.core.sdk.policies: 'Pragma': 'no-cache'
cli.azure.cli.core.sdk.policies: 'Content-Length': '107'
cli.azure.cli.core.sdk.policies: 'Content-Type': 'application/json; charset=utf-8'
cli.azure.cli.core.sdk.policies: 'Expires': '-1'
cli.azure.cli.core.sdk.policies: 'x-ms-ratelimit-remaining-subscription-resource-requests-pt5m': '99'
cli.azure.cli.core.sdk.policies: 'x-ms-ratelimit-remaining-subscription-resource-requests-pt1h': '299'
cli.azure.cli.core.sdk.policies: 'x-ms-request-id': 'westus2:7c5c07cb-da29-4f20-9329-e3b95f7f5b4d'
cli.azure.cli.core.sdk.policies: 'Strict-Transport-Security': 'max-age=31536000; includeSubDomains'
cli.azure.cli.core.sdk.policies: 'x-ms-ratelimit-remaining-subscription-writes': '199'
cli.azure.cli.core.sdk.policies: 'x-ms-ratelimit-remaining-subscription-global-writes': '2999'
cli.azure.cli.core.sdk.policies: 'x-ms-correlation-request-id': '00000000-0000-0000-0000-000000000000'
cli.azure.cli.core.sdk.policies: 'x-ms-routing-request-id': 'JAPANEAST:20250225T000000Z:00000000-0000-0000-0000-000000000000'
cli.azure.cli.core.sdk.policies: 'X-Content-Type-Options': 'nosniff'
cli.azure.cli.core.sdk.policies: 'X-Cache': 'CONFIG_NOCACHE'
cli.azure.cli.core.sdk.policies: 'X-MSEdge-Ref': 'Ref A: 00000000000000000000000000000000 Ref B: TYO200000000000 Ref C: 2025-02-25T00:00:00Z'
cli.azure.cli.core.sdk.policies: 'Date': 'Tue, 25 Feb 2025 00:00:00 GMT'
cli.azure.cli.core.sdk.policies: Response content:
cli.azure.cli.core.sdk.policies: Body is streamable
cli.azure.cli.core.azclierror: Traceback (most recent call last):
File "D:\a_work\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\knack/cli.py", line 233, in invoke
File "D:\a_work\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\azure/cli/core/commands/init.py", line 666, in execute
File "D:\a_work\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\azure/cli/core/commands/init.py", line 734, in _run_jobs_serially
File "D:\a_work\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\azure/cli/core/commands/init.py", line 703, in _run_job
File "D:\a_work\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\azure/cli/core/commands/init.py", line 336, in call
File "D:\a_work\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\azure/cli/core/commands/command_operation.py", line 120, in handler
File "D:\a_work\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\azure/cli/command_modules/container/custom.py", line 282, in create_container
File "D:\a_work\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\azure/cli/core/util.py", line 744, in sdk_no_wait
File "D:\a_work\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\azure/core/tracing/decorator.py", line 94, in wrapper_use_tracer
File "D:\a_work\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\azure/mgmt/containerinstance/operations/_container_groups_operations.py", line 774, in begin_create_or_update
File "D:\a_work\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\azure/mgmt/containerinstance/operations/_container_groups_operations.py", line 668, in _create_or_update_initial
azure.core.exceptions.HttpResponseError: (BadRequest) ContainerGroup properties other than config map are not allowed
Code: BadRequest
Message: ContainerGroup properties other than config map are not allowed

Message: ContainerGroup properties other than config map are not allowed
az_command_data_logger: (BadRequest) ContainerGroup properties other than config map are not allowed
Code: BadRequest
cli.knack.cli: Event: Cli.PostExecute [<function AzCliLogging.deinit_cmd_metadata_logging at 0x000001A7E4AF2200>]
az_command_data_logger: exit code: 1
cli.main: Command ran in 3.173 seconds (init: 0.575, invoke: 2.598)
telemetry.main: Begin splitting cli events and extra events, total events: 1
telemetry.client: Accumulated 0 events. Flush the clients.
telemetry.main: Finish splitting cli events and extra events, cli events: 1
telemetry.save: Save telemetry record of length 4109 in cache file under C:\Users\user01.azure\telemetry\20250225000000000
telemetry.main: Begin creating telemetry upload process.
telemetry.process: Creating upload process: "C:\Program Files\Microsoft SDKs\Azure\CLI2\python.exe C:\Program Files\Microsoft SDKs\Azure\CLI2\Lib\site-packages\azure\cli\telemetry_init_.pyc C:\Users\user01.azure C:\Users\user01.azure\telemetry\20250225204208807"
telemetry.process: Return from creating process 24360
telemetry.main: Finish creating telemetry upload process.

Expected behavior

Created container successfully

Environment Summary

PS > az version
{
  "azure-cli": "2.69.0",
  "azure-cli-core": "2.69.0",
  "azure-cli-telemetry": "1.1.0",
  "extensions": {
    "azure-devops": "1.0.1",
    "bastion": "1.3.1",
    "ssh": "2.0.6",
    "standbypool": "1.0.0"
  }
}

Additional context

My Standby pool was created by the following bicep template.

...
resource containerGroupProfiles 'Microsoft.ContainerInstance/containerGroupProfiles@2024-05-01-preview' = {
  name: 'sample-containerGroupProfile'
  location: location
  properties: {
    containers: [
      {
        name: 'aci-helloworld'
        properties: {
          image: containerImageName
          command: ['echo', 'hello-world']
          resources: {
            requests: {
              cpu: 1
              memoryInGB: 1
            }
          }
          ports: [
            {
              port: 80
              protocol: 'TCP'
            }
          ]
        }
      }
    ]
    osType: 'Linux'
    restartPolicy: 'Never'
    ipAddress: {
      type: 'Private'
      ports: [
        {
          port: 80
          protocol: 'TCP'
        }
      ]
    }
    sku: 'Standard'
  }
}

resource standbyPool 'Microsoft.StandbyPool/standbyContainerGroupPools@2024-03-01' = {
  name: 'hello-world-pool'
  location: location
  properties: {
    containerGroupProperties: {
      containerGroupProfile: {
        id: containerGroupProfiles.id
      }
      subnetIds: [
        { id: resourceId('Microsoft.Network/virtualNetworks/subnets', vnetName, subnetTestName) }
      ]
    }
    elasticityProfile: {
      maxReadyCapacity: 1
      refillPolicy: 'always'
    }
  }
}

Metadata

Metadata

Assignees

No one assigned

    Labels

    Auto-AssignAuto assign by botContainer Instancesaz containerService AttentionThis issue is responsible by Azure service team.bugThis issue requires a change to an existing behavior in the product in order to be resolved.customer-reportedIssues that are reported by GitHub users external to the Azure organization.

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions