SDN-4829: Add machine config watchers to report IPsec status - #2383
Conversation
|
@pperiyasamy: This pull request references SDN-4829 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.17.0" version, but no target version was set. 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 openshift-eng/jira-lifecycle-plugin repository. |
|
/retest |
3522040 to
5f6efe5
Compare
|
/retest |
1 similar comment
|
/retest |
5f6efe5 to
0ad8ac9
Compare
66d2074 to
09e1092
Compare
09e1092 to
6abf798
Compare
a66e86d to
bca0e79
Compare
|
/retest |
|
/retest-required |
|
/test e2e-aws-ovn-ipsec-upgrade some ipsec jobs are failing due to olm deployment failures which happening very recently, not related to PR change. triggering it agin. |
This enhances status manager to watch for machine config and machine config pool objects, retrieves machine config pool status when ipsec is enabled and when any one of the machine config pool goes into degraded state, then makes network operator also into degraded state. Signed-off-by: Periyasamy Palanisamy <pepalani@redhat.com>
This commit also provides progressing status about ipsec machine config roll out, it notifies user about ongoing progress, otherwise network co gets updated only at the end with degrade status if there is any failure with ipsec rollout. Signed-off-by: Periyasamy Palanisamy <pepalani@redhat.com>
The status manager should not be tied to only ipsec machine config, network operator may own other machine configs in future, so this commit processes every machine configs that contains network operator as owner reference. Signed-off-by: Periyasamy Palanisamy <pepalani@redhat.com>
This reverts commit 763c565.
This replaces informer with source.Kind for machine config watcher which helps to make use of same cache used for the manager. Signed-off-by: Periyasamy Palanisamy <pepalani@redhat.com>
This commit captures machine config delete event, watches machine config pool while removing machine config from the cluster and reflect machine config pool status conditions into network status. Signed-off-by: Periyasamy Palanisamy <pepalani@redhat.com>
When network operator owned machine config is deleted, though mco is still deleting the rendered machine config from the machine config pool, there is no way to lookup owner reference on the machine config object upon network operator pod reboot caused by node reboot. This commit writes machine config rendering status onto network.operator.openshift.io/last-seen-machineconfig-state network co annotation and this is being looked up to report status accordingly. Signed-off-by: Periyasamy Palanisamy <pepalani@redhat.com>
This commit removes unnecessary initialization of machine config cache while handling events, cleans up cache entry at the right time, better handling of variable names, errors and adds few doc comments. Signed-off-by: Periyasamy Palanisamy <pepalani@redhat.com>
82d19db to
b99b606
Compare
|
/test e2e-aws-ovn-ipsec-upgrade |
|
The commit b99b606 is updated with following change to fix an issue (Network status is still reflecting machine config pool status even after IPsec is disabled) found from @huiran0826's testing. Did few tests with changes, The issue is also solved with the fix. |
|
/hold cancel |
|
/retest-required |
|
/lgtm |
|
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: jcaamano, pperiyasamy 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 |
|
@pperiyasamy: The following tests failed, say
Full PR test history. Your PR dashboard. 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-sigs/prow repository. I understand the commands that are listed here. |
|
/retest-required |
|
[ART PR BUILD NOTIFIER] Distgit: cluster-network-operator |
This PR enhances the status manager to react to the network operator's machine configs rendering, listens to machine config and machine config pool events during the lifetime of the machine configs rendered by the network operator and reflects machine config pool(s) progressing/degraded status while rolling out changes. It uses a new
network.operator.openshift.io/rendered-machineconfig-stateannotation as dynamic cache on the network cluster operator object to stash rendered machine config state so that network operator pod can rely on it to build its own internal state upon its pod restart caused by machine config triggered node reboot.