Skip to content

MULTIARCH-3964: Power VS: Control SMT level with machineconfig#7704

Merged
openshift-merge-bot[bot] merged 1 commit intoopenshift:masterfrom
mjturek:smt
Nov 23, 2023
Merged

MULTIARCH-3964: Power VS: Control SMT level with machineconfig#7704
openshift-merge-bot[bot] merged 1 commit intoopenshift:masterfrom
mjturek:smt

Conversation

@mjturek
Copy link
Copy Markdown
Contributor

@mjturek mjturek commented Nov 10, 2023

Through the installer, you can currently disable SMT. Power hardware allows levels of control that cannot currently be accessed through the installer (1-8). Until we can control SMT via kargs [0], and until igniton kargs support [1] is available in the MCO, we believe this is the best option for SMT control at install time.

[0] https://lore.kernel.org/all/20230705145143.40545-8-ldufour@linux.ibm.com/
[1] #5439

@mjturek
Copy link
Copy Markdown
Contributor Author

mjturek commented Nov 10, 2023

/retest-required

@mjturek mjturek changed the title Power VS: Control SMT level with machineconfig MULTIARCH-3419: Power VS: Control SMT level with machineconfig Nov 15, 2023
@openshift-ci-robot openshift-ci-robot added the jira/valid-reference Indicates that this PR references a valid Jira ticket of any type. label Nov 15, 2023
@openshift-ci-robot
Copy link
Copy Markdown
Contributor

openshift-ci-robot commented Nov 15, 2023

@mjturek: This pull request references MULTIARCH-3419 which is a valid jira issue.

Details

In 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.

@mjturek mjturek changed the title MULTIARCH-3419: Power VS: Control SMT level with machineconfig MULTIARCH-3964: Power VS: Control SMT level with machineconfig Nov 15, 2023
@openshift-ci-robot
Copy link
Copy Markdown
Contributor

openshift-ci-robot commented Nov 15, 2023

@mjturek: This pull request references MULTIARCH-3964 which is a valid jira issue.

Warning: The referenced jira issue has an invalid target version for the target branch this PR targets: expected the story to target the "4.15.0" version, but no target version was set.

Details

In 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.

@mjturek mjturek force-pushed the smt branch 2 times, most recently from 754ebe9 to fc14290 Compare November 15, 2023 22:45
@mjturek
Copy link
Copy Markdown
Contributor Author

mjturek commented Nov 16, 2023

/test okd-e2e-aws-ovn-upgrade

@miyamotoh
Copy link
Copy Markdown

/lgtm

@openshift-ci openshift-ci Bot added the lgtm Indicates that a PR is ready to be merged. label Nov 16, 2023
@mjturek
Copy link
Copy Markdown
Contributor Author

mjturek commented Nov 16, 2023

/test e2e-aws-ovn

@mjturek
Copy link
Copy Markdown
Contributor Author

mjturek commented Nov 17, 2023

/assign @r4f4

Comment thread pkg/types/powervs/validation/machinepool.go Outdated
Comment thread pkg/types/powervs/validation/machinepool.go Outdated
@openshift-ci openshift-ci Bot removed the lgtm Indicates that a PR is ready to be merged. label Nov 17, 2023
@mjturek mjturek force-pushed the smt branch 2 times, most recently from a16638b to a2fc9b0 Compare November 17, 2023 15:05
Co-authored-by: Rafael F. <r4f4rfs@gmail.com>
@mjturek
Copy link
Copy Markdown
Contributor Author

mjturek commented Nov 17, 2023

/jira refresh

@openshift-ci-robot
Copy link
Copy Markdown
Contributor

openshift-ci-robot commented Nov 17, 2023

@mjturek: This pull request references MULTIARCH-3964 which is a valid jira issue.

Warning: The referenced jira issue has an invalid target version for the target branch this PR targets: expected the story to target the "4.15.0" version, but no target version was set.

Details

In response to this:

/jira refresh

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.

Copy link
Copy Markdown
Contributor

@patrickdillon patrickdillon left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Normally machine configuration like this would be laid down by the machine config operator—not the installer.

if there are install-time user-supplied values we could put them in the api or elsewhere in the cluster for the mco to reference.

One thing that’s not clear to me with this API is whether all compute nodes should have the same SMT level or whether the level could be set at different levels for different sets of compute nodes. If it’s the former, that would work well with the MCO.

// SMTLevel specifies the level of SMT to set the control plane and worker nodes to.
//
// +optional
SMTLevel string `json:"smtLevel,omitempty"`
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Values in the machine pools would typically correspond to values set in the machinesets to be handleded by the machine api operator. (There is day 2 support for machine pools on hive in some platforms.)

@mjturek
Copy link
Copy Markdown
Contributor Author

mjturek commented Nov 20, 2023

@patrickdillon would you be okay with instead a ic.platform.powervs.smtLevel var that controls the worker smtlevel at install time?

@openshift-ci-robot
Copy link
Copy Markdown
Contributor

openshift-ci-robot commented Nov 20, 2023

@mjturek: This pull request references MULTIARCH-3964 which is a valid jira issue.

Warning: The referenced jira issue has an invalid target version for the target branch this PR targets: expected the story to target the "4.15.0" version, but no target version was set.

Details

In response to this:

Through the installer, you can currently disable SMT. Power hardware allows levels of control that cannot currently be accessed through the installer (1-8). Until we can control SMT via the kernel [0], and until igniton kargs support [1] is available in the MCO, we believe this is the best option for SMT control at install time.

[0] https://lore.kernel.org/all/20230705145143.40545-8-ldufour@linux.ibm.com/
[1] #5439

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.

@openshift-ci-robot
Copy link
Copy Markdown
Contributor

openshift-ci-robot commented Nov 20, 2023

@mjturek: This pull request references MULTIARCH-3964 which is a valid jira issue.

Warning: The referenced jira issue has an invalid target version for the target branch this PR targets: expected the story to target the "4.15.0" version, but no target version was set.

Details

In response to this:

Through the installer, you can currently disable SMT. Power hardware allows levels of control that cannot currently be accessed through the installer (1-8). Until we can control SMT via the kernel [0], and until igniton kargs support [1] is available in the MCO, we believe this is the best option for SMT control at install time.

https://lore.kernel.org/all/20230705145143.40545-8-ldufour@linux.ibm.com/
#5439

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.

@mjturek
Copy link
Copy Markdown
Contributor Author

mjturek commented Nov 20, 2023

after a slack discussion with Patrick, I've added more details as to why we're pursing this method and would like some input from someone on the MCO team.

@patrickdillon
Copy link
Copy Markdown
Contributor

after a slack discussion with Patrick, I've added more details as to why we're pursing this method and would like some input from someone on the MCO team.

It is fine with me to have these machine configs live in the installer while waiting for full support

Copy link
Copy Markdown

@cdoern cdoern left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good, general MCO comments.

"fmt"

ignutil "github.com/coreos/ignition/v2/config/util"
igntypes "github.com/coreos/ignition/v2/config/v3_2/types"
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

is 3.2 right here? I know the MCO just added support for 3.4 recently I believe.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Currently all other machineconfigs in the installer are still using 3.2 types. I will keep it here for now but thanks for the info!!

},
}

rawExt, err := ignition.ConvertToRawExtension(ignConfig)
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I know in the MCO we also just json.Marshal ignition usually rather than ConvertToRawExtension might be worth writing some tests here to ensure this works?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

All other machineconfigs in the installer do this, but I could add test in a follow up if you'd like!

@patrickdillon
Copy link
Copy Markdown
Contributor

/approve

@openshift-ci
Copy link
Copy Markdown
Contributor

openshift-ci Bot commented Nov 20, 2023

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: patrickdillon

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Details Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@openshift-ci openshift-ci Bot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Nov 20, 2023
@yuqi-zhang
Copy link
Copy Markdown
Contributor

Just a note, this will work logically, but much like the sshkey machineconfig, this will be interpreted as a user-provided config, making it harder to remove at a later time.

Just curious, how early do you need this karg to take effect? If you provide it via the MCO during install time, it is true that the ignition kargs won't take effect, but the MCD-firstboot service will handle this before updating the OS image and rebooting, so essentially the first time the node joins the cluster it will already have the karg. Does this have to be present for the node to boot the first time?

@openshift-ci-robot
Copy link
Copy Markdown
Contributor

openshift-ci-robot commented Nov 20, 2023

@mjturek: This pull request references MULTIARCH-3964 which is a valid jira issue.

Warning: The referenced jira issue has an invalid target version for the target branch this PR targets: expected the story to target the "4.15.0" version, but no target version was set.

Details

In response to this:

Through the installer, you can currently disable SMT. Power hardware allows levels of control that cannot currently be accessed through the installer (1-8). Until we can control SMT via kargs [0], and until igniton kargs support [1] is available in the MCO, we believe this is the best option for SMT control at install time.

[0] https://lore.kernel.org/all/20230705145143.40545-8-ldufour@linux.ibm.com/
[1] #5439

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.

@miyamotoh
Copy link
Copy Markdown

/lgtm

@openshift-ci openshift-ci Bot added the lgtm Indicates that a PR is ready to be merged. label Nov 22, 2023
@mjturek
Copy link
Copy Markdown
Contributor Author

mjturek commented Nov 22, 2023

/label acknowledge-critical-fixes-only

@openshift-ci openshift-ci Bot added the acknowledge-critical-fixes-only Indicates if the issuer of the label is OK with the policy. label Nov 22, 2023
@openshift-ci
Copy link
Copy Markdown
Contributor

openshift-ci Bot commented Nov 23, 2023

@mjturek: all tests passed!

Full PR test history. Your PR dashboard.

Details

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. I understand the commands that are listed here.

@openshift-merge-bot openshift-merge-bot Bot merged commit e2d6013 into openshift:master Nov 23, 2023
@openshift-bot
Copy link
Copy Markdown
Contributor

[ART PR BUILD NOTIFIER]

This PR has been included in build ose-installer-altinfra-container-v4.15.0-202311231531.p0.ge2d6013.assembly.stream for distgit ose-installer-altinfra.
All builds following this will include this PR.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

acknowledge-critical-fixes-only Indicates if the issuer of the label is OK with the policy. approved Indicates a PR has been approved by an approver from all required OWNERS files. jira/valid-reference Indicates that this PR references a valid Jira ticket of any type. lgtm Indicates that a PR is ready to be merged.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

8 participants