-
Bug
-
Resolution: Done-Errata
-
Undefined
-
4.14
-
Quality / Stability / Reliability
-
False
-
-
None
-
Moderate
-
No
-
None
-
None
-
None
-
None
-
None
-
None
-
None
-
None
-
None
-
None
Description of problem:
Install IPI cluster where all nodes are provisioned from azure marketplace image with purchase plan.
install-config.yaml:
---------------------------
platform:
azure:
region: eastus
baseDomainResourceGroupName: os4-common
defaultMachinePlatform:
osImage:
publisher: Redhat <---- contains uppercase letter
offer: rh-ocp-worker
sku: rh-ocp-worker
version: 4.8.2021122100
plan: WithPurchasePlan
as some marketplace images are free without plan, so pulisher in install-config should come from output of `az vm image list`
# az vm image list --offer rh-ocp-worker --all -otable
Architecture Offer Publisher Sku Urn Version
-------------- ------------- -------------- ------------------ -------------------------------------------------------------- --------------
x64 rh-ocp-worker redhat-limited rh-ocp-worker redhat-limited:rh-ocp-worker:rh-ocp-worker:4.8.2021122100 4.8.2021122100
x64 rh-ocp-worker RedHat rh-ocp-worker RedHat:rh-ocp-worker:rh-ocp-worker:4.8.2021122100 4.8.2021122100
x64 rh-ocp-worker redhat-limited rh-ocp-worker-gen1 redhat-limited:rh-ocp-worker:rh-ocp-worker-gen1:4.8.2021122100 4.8.2021122100
x64 rh-ocp-worker RedHat rh-ocp-worker-gen1 RedHat:rh-ocp-worker:rh-ocp-worker-gen1:4.8.2021122100 4.8.2021122100
the image plan is as below, its publisher is lowercase.
# az vm image show --urn RedHat:rh-ocp-worker:rh-ocp-worker:4.8.2021122100 --query plan
{
"name": "rh-ocp-worker",
"product": "rh-ocp-worker",
"publisher": "redhat"
}
From installer https://github.com/openshift/installer/blob/master/data/data/azure/bootstrap/main.tf#L243-L246, publisher property in image plan is from pulisher what we set in install-config.yaml, installer should use the publisher property from image plan output.
But image plan is case-sensitive, bootstrap instance is provisioned failed with below error in such case.
Unable to deploy from the Marketplace image or a custom image sourced from Marketplace image. The part number in the purchase information for VM '/subscriptions/53b8f551-f0fc-4bea-8cba-6d1fefd54c8a/resourceGroups/jima15image1-flg24-rg/providers/Microsoft.Compute/virtualMachines/jima15image1-flg24-bootstrap' is not as expected. Beware that the Plan object's properties are case-sensitive. Learn more about common virtual machine error codes.
similar errors when provisioning worker instances from this image where image publisher contains upper case but publisher in its plan is all lowercase.
worker machineset:
----------------------------
Spec:
Lifecycle Hooks:
Metadata:
Provider ID: azure:///subscriptions/53b8f551-f0fc-4bea-8cba-6d1fefd54c8a/resourceGroups/ci-op-cc5g2rw8-55267-q66k7-rg/providers/Microsoft.Compute/virtualMachines/ci-op-cc5g2rw8-55267-q66k7-worker-southcentralus1-dq6sp
Provider Spec:
Value:
Accelerated Networking: true
API Version: machine.openshift.io/v1beta1
Credentials Secret:
Name: azure-cloud-credentials
Namespace: openshift-machine-api
Diagnostics:
Boot:
Storage Account Type: AzureManaged
Image:
Offer: rh-ocp-worker
Publisher: RedHat
Resource ID:
Sku: rh-ocp-worker
Type: WithPurchasePlan
Version: 4.8.2021122100
Kind: AzureMachineProviderSpec
Location: southcentralus
Managed Identity: ci-op-cc5g2rw8-55267-q66k7-identity
error when provision worker instance:
Unable to deploy from the Marketplace image or a custom image sourced from Marketplace image. The part number in the purchase information for VM '/subscriptions/53b8f551-f0fc-4bea-8cba-6d1fefd54c8a/resourceGroups/ci-op-cc5g2rw8-55267-q66k7-rg/providers/Microsoft.Compute/virtualMachines/ci-op-cc5g2rw8-55267-q66k7-worker-southcentralus1-mmr2h' is not as expected. Beware that the Plan object's properties are case-sensitive. Learn more about common virtual machine error codes.
Version-Release number of selected component (if applicable):
4.14.0-0.nightly-2023-08-11-055332
How reproducible:
Always on 4.14 for bootstrap/masters Always on 4.11+ for workers
Steps to Reproduce:
1. Config osImage for all nodes in install-config, set publisher to RedHat 2. install cluster. 3.
Actual results:
Bootstrap instance is provisioned failed.
Expected results:
installation is successful.
Additional info:
Installation is successful when setting publisher to "redhat"