Skip to content

Conversation

@smarterclayton
Copy link
Contributor

@smarterclayton smarterclayton commented Dec 8, 2020

In order to better debug failures with the machine health check,
clarify the test debugging logic and simplify the checks in place.

On GCP this exposes https://bugzilla.redhat.com/show_bug.cgi?id=1905709

@openshift-ci-robot
Copy link

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: smarterclayton

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-robot openshift-ci-robot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Dec 8, 2020
@hexfusion
Copy link
Contributor

/test e2e-aws-disruptive

/assign @marun

@hexfusion
Copy link
Contributor

/test e2e-aws-fips

@hexfusion
Copy link
Contributor

LGTM thanks @smarterclayton

ch := make(chan struct{})
go func(node *corev1.Node) {
defer close(ch)
if _, err := ssh("sudo -i systemctl poweroff --force --force", node); err != nil {
Copy link
Contributor

@marun marun Dec 9, 2020

Choose a reason for hiding this comment

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

err will always be non-nil on successful execution of this command (due to the ssh connection being closed by the server) so I'm not sure there's any value in checking it. In #25707 I've added a new shutdownNode function that calls e2essh.SSH directly so that the output can be checked for the an indication that shutdown was initiated - the string Powering off appearing in stderr.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

I don't know that there's even a guarantee that powering off would get returned on all clouds. it was not on GCP at the current time. So I think even that isn't sufficient.

Copy link
Contributor

@marun marun Dec 9, 2020

Choose a reason for hiding this comment

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

How would it not be returned? And why would it be a function of a particular cloud? It's RHCOS returning Powering off before initiating termination.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

It's a function of how the load balancers work. GCP often leaves dangling connections, and since go SSH is limited (can't do idle timeouts correctly) you can't assume you'll ever get a packet (so the SSH hangs forever). GCP cuts the proxy connection before you get the "powering off" packet, unlike AWS.

@marun
Copy link
Contributor

marun commented Dec 9, 2020

@smarterclayton Maybe rebase on #25707 to get related cleanup for free?

@marun
Copy link
Contributor

marun commented Dec 9, 2020

I imagine you're testing with clusterbot, but in case it's handy I've proposed adding e2e-gcp-disruptive: openshift/release#14191

In order to better debug failures with the machine health check,
clarify the test debugging logic and simplify the checks in place.
@smarterclayton
Copy link
Contributor Author

This also reproduces bug 1905709 on AWS

@smarterclayton
Copy link
Contributor Author

/retest

@smarterclayton
Copy link
Contributor Author

/test e2e-gcp-disruptive

@marun
Copy link
Contributor

marun commented Dec 10, 2020

fyi quorum restore test is broken due to the addition of a mandatory dependency on the api when taking a backup intended to ensure that only healthy revisions of static pods are backed up. Fix is pending: openshift/cluster-etcd-operator#509

@smarterclayton
Copy link
Contributor Author

/test e2e-gcp-disruptive

@openshift-merge-robot
Copy link
Contributor

@smarterclayton: The following tests failed, say /retest to rerun all failed tests:

Test name Commit Details Rerun command
ci/prow/e2e-aws-disruptive 8dd97ea link /test e2e-aws-disruptive
ci/prow/e2e-gcp-disruptive b46ada1 link /test e2e-gcp-disruptive

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-ci-robot
Copy link

@smarterclayton: PR needs rebase.

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.

@openshift-ci-robot openshift-ci-robot added the needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. label Dec 17, 2020
@openshift-bot
Copy link
Contributor

Issues go stale after 90d of inactivity.

Mark the issue as fresh by commenting /remove-lifecycle stale.
Stale issues rot after an additional 30d of inactivity and eventually close.
Exclude this issue from closing by commenting /lifecycle frozen.

If this issue is safe to close now please do so with /close.

/lifecycle stale

@openshift-ci-robot openshift-ci-robot added the lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. label Mar 17, 2021
@openshift-bot
Copy link
Contributor

Stale issues rot after 30d of inactivity.

Mark the issue as fresh by commenting /remove-lifecycle rotten.
Rotten issues close after an additional 30d of inactivity.
Exclude this issue from closing by commenting /lifecycle frozen.

If this issue is safe to close now please do so with /close.

/lifecycle rotten
/remove-lifecycle stale

@openshift-ci-robot openshift-ci-robot added lifecycle/rotten Denotes an issue or PR that has aged beyond stale and will be auto-closed. and removed lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. labels Apr 17, 2021
@openshift-ci openshift-ci bot removed the needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. label Apr 17, 2021
@openshift-bot
Copy link
Contributor

Rotten issues close after 30d of inactivity.

Reopen the issue by commenting /reopen.
Mark the issue as fresh by commenting /remove-lifecycle rotten.
Exclude this issue from closing again by commenting /lifecycle frozen.

/close

@openshift-ci
Copy link
Contributor

openshift-ci bot commented May 17, 2021

@smarterclayton: PR needs rebase.

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.

@openshift-ci openshift-ci bot added the needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. label May 17, 2021
@openshift-ci
Copy link
Contributor

openshift-ci bot commented May 17, 2021

@openshift-bot: Closed this PR.

Details

In response to this:

Rotten issues close after 30d of inactivity.

Reopen the issue by commenting /reopen.
Mark the issue as fresh by commenting /remove-lifecycle rotten.
Exclude this issue from closing again by commenting /lifecycle frozen.

/close

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 openshift-ci bot closed this May 17, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

approved Indicates a PR has been approved by an approver from all required OWNERS files. lifecycle/rotten Denotes an issue or PR that has aged beyond stale and will be auto-closed. needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants