Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Remove immutable flag from /var/lib/kubelet subdirs #9597

Merged
merged 2 commits into from
Dec 22, 2022

Conversation

emiran-orange
Copy link
Contributor

@emiran-orange emiran-orange commented Dec 19, 2022

What type of PR is this?
/kind bug

What this PR does / why we need it:
Before removing /var/lib/kubelet, make sure immutable flag (chattr -i) is removed from /var/lib/kubelet's tree.
As a matter of fact, file module does not change attributes before removing the directory (hence the separate task before).

We need it because some CSI drivers set immutable flag on mount directories (at least some leftovers of those CSI driver have been found) in /var/lib/kubelet, and shutil.rmtree (which is used in file module when state is "absent") simply does not remove most of /var/lib/kubelet if only one dir is immutable in, for example, /var/lib/kubelets/pods. That causes node join to fail afterwards.

Which issue(s) this PR fixes:
None that I know of

Special notes for your reviewer:
I initially planned to remove immutable flag from all the list of files/dirs in "reset | delete some files and directories" task but that would have meant creating them if missing, I hope you find this way better.

Does this PR introduce a user-facing change?:

Remove immutable flag from /var/lib/kubelet subdirs 

@k8s-ci-robot k8s-ci-robot added the kind/bug Categorizes issue or PR as related to a bug. label Dec 19, 2022
@k8s-ci-robot k8s-ci-robot requested review from bozzo and EppO December 19, 2022 14:32
@k8s-ci-robot k8s-ci-robot added cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. needs-ok-to-test Indicates a PR that requires an org member to verify it is safe to test. labels Dec 19, 2022
@k8s-ci-robot
Copy link
Contributor

Hi @emiran-orange. Thanks for your PR.

I'm waiting for a kubernetes-sigs member to verify that this patch is reasonable to test. If it is, they should reply with /ok-to-test on its own line. Until that is done, I will not automatically test new commits in this PR, but the usual testing commands by org members will still work. Regular contributors should join the org to skip this step.

Once the patch is verified, the new status will be reflected by the ok-to-test label.

I understand the commands that are listed here.

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.

@k8s-ci-robot k8s-ci-robot added the size/XS Denotes a PR that changes 0-9 lines, ignoring generated files. label Dec 19, 2022
@oomichi
Copy link
Contributor

oomichi commented Dec 19, 2022

packet_ubuntu20-calico-aio is failed like:

TASK [reset : reset | Remove immutable flag from /var/lib/kubelet subdirs] *****
task path: /builds/kargo-ci/kubernetes-sigs-kubespray/roles/reset/tasks/main.yml:256
Monday 19 December 2022  23:34:30 +0000 (0:00:00.108)       0:01:57.396 ******* 
An exception occurred during task execution. To see the full traceback, use -vvv. The error was: Exception: Error while setting attributes: /usr/bin/chattr: Operation not supported while reading flags on /var/lib/kubelet/pods/1b3df0ad-d9bb-4e9a-bb5b-662da4d71a9e/volumes/kubernetes.io~configmap/config-volume/..data
fatal: [instance-1]: FAILED! => {"changed": false, "details": "Error while setting attributes: /usr/bin/chattr: Operation not supported while reading flags on /var/lib/kubelet/pods/1b3df0ad-d9bb-4e9a-bb5b-662da4d71a9e/volumes/kubernetes.io~configmap/config-volume/..data\n", "gid": 0, "group": "root", "mode": "0777", "msg": "chattr failed", "owner": "root", "path": "/var/lib/kubelet/pods/1b3df0ad-d9bb-4e9a-bb5b-662da4d71a9e/volumes/kubernetes.io~configmap/config-volume/..data", "size": 32, "state": "link", "uid": 0}

@k8s-ci-robot k8s-ci-robot added size/S Denotes a PR that changes 10-29 lines, ignoring generated files. and removed size/XS Denotes a PR that changes 0-9 lines, ignoring generated files. labels Dec 20, 2022
@emiran-orange
Copy link
Contributor Author

@oomichi Arff sorry for that, I split things into two tasks. That seems to work better

@oomichi
Copy link
Contributor

oomichi commented Dec 21, 2022

Thanks for updating.

/ok-to-test
/approve

@k8s-ci-robot k8s-ci-robot added ok-to-test Indicates a non-member PR verified by an org member that is safe to test. and removed needs-ok-to-test Indicates a PR that requires an org member to verify it is safe to test. labels Dec 21, 2022
@k8s-ci-robot
Copy link
Contributor

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: emiran-orange, oomichi

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

The pull request process is described here

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

@k8s-ci-robot k8s-ci-robot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Dec 21, 2022
@yankay
Copy link
Member

yankay commented Dec 22, 2022

Thanks @emiran-orange
/lgtm

@k8s-ci-robot k8s-ci-robot added the lgtm "Looks good to me", indicates that a PR is ready to be merged. label Dec 22, 2022
@k8s-ci-robot k8s-ci-robot merged commit 25f3172 into kubernetes-sigs:master Dec 22, 2022
@floryut floryut mentioned this pull request Jan 4, 2023
enneitex pushed a commit to enneitex/kubespray that referenced this pull request Jan 25, 2023
…9597)

* Remove immutable flag from /var/lib/kubelet subdirs

* Find files before changing attributes
HoKim98 pushed a commit to ulagbulag/kubespray that referenced this pull request Mar 8, 2023
…9597)

* Remove immutable flag from /var/lib/kubelet subdirs

* Find files before changing attributes
nolimitkun pushed a commit to nolimitkun/kubespray that referenced this pull request Mar 19, 2023
…9597)

* Remove immutable flag from /var/lib/kubelet subdirs

* Find files before changing attributes
pedro-peter pushed a commit to pedro-peter/kubespray that referenced this pull request May 8, 2024
…9597)

* Remove immutable flag from /var/lib/kubelet subdirs

* Find files before changing attributes
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. cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. kind/bug Categorizes issue or PR as related to a bug. lgtm "Looks good to me", indicates that a PR is ready to be merged. ok-to-test Indicates a non-member PR verified by an org member that is safe to test. size/S Denotes a PR that changes 10-29 lines, ignoring generated files.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants