Bug 1820300: Extend oVirt's MachinePool#3399
Bug 1820300: Extend oVirt's MachinePool#3399openshift-merge-robot merged 2 commits intoopenshift:masterfrom
Conversation
|
@rgolangh: This pull request references Bugzilla bug 1813741, which is invalid:
Comment DetailsIn response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. |
|
@rgolangh: This pull request references Bugzilla bug 1820300, which is invalid:
Comment DetailsIn response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. |
|
/bugzilla refresh |
|
@rgolangh: This pull request references Bugzilla bug 1820300, which is invalid:
Comment DetailsIn response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. |
|
/bugzilla refresh |
|
@rgolangh: This pull request references Bugzilla bug 1820300, which is invalid:
Comment DetailsIn response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. |
|
/bugzilla refresh |
|
@rgolangh: This pull request references Bugzilla bug 1820300, which is invalid:
Comment DetailsIn response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. |
|
/bugzilla refresh |
|
@rgolangh: This pull request references Bugzilla bug 1820300, which is valid. The bug has been moved to the POST state. The bug has been updated to refer to the pull request using the external bug tracker. 3 validation(s) were run on this bug
DetailsIn response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. |
|
@rgolangh: This pull request references Bugzilla bug 1820300, which is valid. 3 validation(s) were run on this bug
DetailsIn response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. |
|
/retest |
patrickdillon
left a comment
There was a problem hiding this comment.
This LGTM. There are just some docs issues that need to be fixed up. oVirt is missing a doc like this: https://github.com/openshift/installer/blob/master/docs/user/aws/customization.md and it should be added to give machinepool examples.
There was a problem hiding this comment.
i can still see the newline :P
There was a problem hiding this comment.
I think these changes should be in the vendor commit.
There was a problem hiding this comment.
Can you mark these with +optional and kubebuilder default? See this for details https://github.com/openshift/installer/pull/3515/files#diff-ef5ad052319246b6e805b03c0221dcdcR34 and check out the whole PR for motivation.
There was a problem hiding this comment.
If InstanceTypeID is passed, all memory and cpu variables will be ignored.
I think we need validation that user doesn't set these conflicting values in install-config.yaml
There was a problem hiding this comment.
effects -> affects
One of "desktop, server, high_performance" -> One of: "desktop", "server", or "high_performance".
There was a problem hiding this comment.
| // CPU defines the VM cpu, made of (Sockets * Cores * Threads) | |
| // CPU defines the VM's cpu, which is made of (Sockets * Cores * Threads) |
The sockets and cores are defined in this struct, while there is no mention of the threads?
There was a problem hiding this comment.
I'm hiding threads for now, I don't want to expose this at the moment. I removed it from the comments as well.
There was a problem hiding this comment.
nit: move this to defaultOvirtMachinePoolPlatform
There was a problem hiding this comment.
or document why this is different from the default.
There was a problem hiding this comment.
if these values are known, desktop, server, high_performance, we should be using string enums like the publish
installer/pkg/types/installconfig.go
Lines 47 to 55 in 1a0bf0a
There was a problem hiding this comment.
also include validations.
There was a problem hiding this comment.
| InstanceTypeID: "aaaaa-123"}, | |
| InstanceTypeID: "aaaaa-123", | |
| }, |
There was a problem hiding this comment.
I'm not big fan of mixed indentation here, one multi-line the rest is one-line. single line is better even for this imo.
There was a problem hiding this comment.
for me shorter lines (< 120) are preferred for the price of a bit of weirdness of go multi-line. Unfortunately ovirt sdk is more verbose than I'd wanted it to be (a lot of client code with builder probably)
There was a problem hiding this comment.
For me shorter lines (< 120) are preferred for the price of a bit of weirdness of go multi-line. Unfortunately ovirt sdk is quite verbose (a lot of client code are the same probably...)
If that's a code-base guideline that's fine by me. I don't want to repeat this over again.
There was a problem hiding this comment.
| allErrs = append(allErrs, field.Invalid(fldPath.Child("instanceTypeID"), p.InstanceTypeID, "mixing instanceTypeID and Memory is not supported")) | |
| allErrs = append(allErrs, field.Invalid(fldPath.Child("instanceTypeID"), p.InstanceTypeID, "mixing instanceTypeID and Memory is not supported")) |
|
Please update the godoc comments for the new fields in the machinepool as these are very sparse and incomplete feeling. With the addition of Make sure include the generated code using https://github.com/openshift/installer/blob/master/docs/dev/explain.md#generating-the-documentation also, there is missing documentation in docs/ovirt/customization.md that documents the fields and also provides some example install-config.yaml 's for various configurations for users. see https://github.com/openshift/installer/blob/master/docs/user/aws/customization.md for AWS as example. |
|
/approve |
|
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: abhinavdahiya The full list of commands accepted by this bot can be found here. The pull request process is described here DetailsNeeds approval from an approver in each of these files:
Approvers can indicate their approval by writing |
Those items are now part of MachinePool
- instance type
- cpu (cores, sockets)
- memory
- os disk size
- vm type
With those we have controll on the way create worker/nodes,
and we have proper defaults set in the machine pool definitions, one for
the pkg/asset/machines/ master.go and worker.go.
Default master pool:
cpus: 4
mem: 16 GiB
os disk: 120 GB
VM type: high_performance
Default worker pool:
cpus: 4
mem: 16 GiB
os disk: 120 GB
VM type: server
A compute pool snippet from the install-config.yaml may look like that:
```yaml
compute:
- architecture: amd64
hyperthreading: Enabled
name: worker
platform:
ovirt:
cpu:
cores: 8
sockets: 1
instanceTypeID:
memoryMB: 65536
osDisk:
sizeGB: 120
vmType: high_performance
replicas: 3
```
Terraform now uses those values, and all the defaults in tf files are
now deleted in favour of the machine-config ones.
To support `osDisk` size which is differnt than the template
master/main.tf has this block:
block_device {
interface = "virtio_scsi"
size = var.ovirt_master_os_disk_size_gb
}
If needed TF will extend the disk size of the VM.
Cluster-api-provider-ovirt also extends the disk of a VM if the
definition in the machine spec is differnt than the template.
Signed-off-by: Roy Golan <rgolan@redhat.com>
|
/test e2e-ovirt |
|
@rgolangh: The following tests failed, say
Full PR test history. Your PR dashboard. Please help us cut down on flakes by linking to an open issue when you hit one in your PR. DetailsInstructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here. |
|
/lgtm |
|
@rgolangh: All pull requests linked via external trackers have merged: openshift/installer#3399. Bugzilla bug 1820300 has been moved to the MODIFIED state. DetailsIn response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. |
|
/cherry-pick release-4.4 |
|
@rgolangh: #3399 failed to apply on top of branch "release-4.4": DetailsIn response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. |
The fix in openshift/installer#3399 adds the machine pool definition into install-config. This updated is needed from now on to make the CI use it. Signed-off-by: Roy Golan <rgolan@redhat.com>
Those items are now part of MachinePool
A compute pool snippet from the install-config.yaml may look like that:
Terraform now uses those values, and all the defaults in tf files are
now deleted in favour of the machine-config ones.