diff --git a/pkg/asset/machines/worker.go b/pkg/asset/machines/worker.go index b7bca7f0d39..d6fa565a670 100644 --- a/pkg/asset/machines/worker.go +++ b/pkg/asset/machines/worker.go @@ -73,6 +73,16 @@ const ( // workerUserDataFileName is the filename used for the worker user-data secret. workerUserDataFileName = "99_openshift-cluster-api_worker-user-data-secret.yaml" + + // decimalRootVolumeSize is the size in GB we use for some platforms. + // See below. + decimalRootVolumeSize = 120 + + // powerOfTwoRootVolumeSize is the size in GB we use for other platforms. + // The reasons for the specific choices between these two may boil down + // to which section of code the person adding a platform was copy-pasting from. + // https://github.com/openshift/openshift-docs/blob/main/modules/installation-requirements-user-infra.adoc#minimum-resource-requirements + powerOfTwoRootVolumeSize = 128 ) var ( @@ -85,7 +95,7 @@ func defaultAWSMachinePoolPlatform() awstypes.MachinePool { return awstypes.MachinePool{ EC2RootVolume: awstypes.EC2RootVolume{ Type: "gp2", - Size: 120, + Size: decimalRootVolumeSize, }, } } @@ -97,7 +107,7 @@ func defaultLibvirtMachinePoolPlatform() libvirttypes.MachinePool { func defaultAzureMachinePoolPlatform() azuretypes.MachinePool { return azuretypes.MachinePool{ OSDisk: azuretypes.OSDisk{ - DiskSizeGB: 128, + DiskSizeGB: powerOfTwoRootVolumeSize, DiskType: azuretypes.DefaultDiskType, }, } @@ -107,7 +117,7 @@ func defaultGCPMachinePoolPlatform() gcptypes.MachinePool { return gcptypes.MachinePool{ InstanceType: "n1-standard-4", OSDisk: gcptypes.OSDisk{ - DiskSizeGB: 128, + DiskSizeGB: powerOfTwoRootVolumeSize, DiskType: "pd-ssd", }, } @@ -137,7 +147,7 @@ func defaultOvirtMachinePoolPlatform() ovirttypes.MachinePool { }, MemoryMB: 16348, OSDisk: &ovirttypes.Disk{ - SizeGB: 120, + SizeGB: decimalRootVolumeSize, }, VMType: ovirttypes.VMTypeServer, AutoPinningPolicy: ovirttypes.AutoPinningNone, @@ -150,7 +160,7 @@ func defaultVSphereMachinePoolPlatform() vspheretypes.MachinePool { NumCoresPerSocket: 2, MemoryMiB: 8192, OSDisk: vspheretypes.OSDisk{ - DiskSizeGB: 120, + DiskSizeGB: decimalRootVolumeSize, }, } } @@ -159,7 +169,7 @@ func defaultKubevirtMachinePoolPlatform() kubevirttypes.MachinePool { return kubevirttypes.MachinePool{ CPU: 4, Memory: "16G", - StorageSize: "120Gi", + StorageSize: fmt.Sprintf("%dGi", decimalRootVolumeSize), } }