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

[nova] switch to projected volumes #2061

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

mariusleu
Copy link
Contributor

@mariusleu mariusleu commented Nov 11, 2020

This is part of the ticket CCM-9905

@sapcc-bot
Copy link
Contributor

Failed to validate the helm chart. Details. Readme.

@mariusleu mariusleu force-pushed the nova_projected_volumes branch from 633b62e to 61de3ae Compare November 11, 2020 15:15
@sapcc-bot
Copy link
Contributor

Failed to validate the helm chart. Details. Readme.

@joker-at-work
Copy link
Contributor

This commit needs much more info. At least the JIRA issue number, but probably even better something from fe6e986

Also please rebase.

Comment on lines 95 to 96
- name: nova-bin
mountPath: /var/lib/kolla/venv/bin
Copy link
Contributor

Choose a reason for hiding this comment

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

Did you confirm this works? Is everything else still there in /var/lib/kolla/venv/bin?

Copy link
Contributor Author

@mariusleu mariusleu Feb 15, 2021

Choose a reason for hiding this comment

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

It seems that here we need to keep using subPath otherwise the bin directory will get overwritten. I think there's no problem with using subPath, since this is the only place where nova-bin is being used. Then does it still make sense to project a volume here? Probably not.

items:
- key: iptables-restore.mock
path: iptables-restore
name: nova-etc
Copy link
Contributor

Choose a reason for hiding this comment

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

Should be nova-bin.

items:
- key: nova.conf
path: nova.conf
- key: nova-api.conf
Copy link
Contributor

Choose a reason for hiding this comment

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

Should be nova-api-metadata.conf

items:
- key: iptables-restore.mock
path: iptables-restore
name: nova-etc
Copy link
Contributor

Choose a reason for hiding this comment

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

Should be nova-bin.

Comment on lines 75 to 84
- mountPath: /etc
name: sudoers
Copy link
Contributor

Choose a reason for hiding this comment

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

Doing this, we mount one configmap over another again, as we mount this to /etc and then nova-etc to /etc/nova. We don't want that. Can we find another solution? Maybe mount the whole /etc because of sudoers and prepend all paths for Nova's config files with nova/?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

But then, whole /etc on the container will get overwritten with what's on our projected volume.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

The way would be to use subPath for /etc/sudoers.

- configMap:
items:
- key: sudoers
path: sudoers
Copy link
Contributor

Choose a reason for hiding this comment

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

name: is missing, I think. That way, it doesn't know where to project from.

@mariusleu mariusleu force-pushed the nova_projected_volumes branch from 61de3ae to 3524821 Compare February 15, 2021 12:47
@sapcc-bot
Copy link
Contributor

Failed to validate the helm chart. Details. Readme.

@fwiesel fwiesel force-pushed the nova_projected_volumes branch from 3524821 to a98e017 Compare July 11, 2022 12:19
@fwiesel
Copy link
Member

fwiesel commented Jul 11, 2022

I've rebased the code and added some of the fixed requested. I am not 100% sure I covered all of them.

@fwiesel fwiesel requested review from joker-at-work and removed request for grandchild July 11, 2022 12:21
We still have crashlooping pods when the container exits
(e.g. when the process is killed manually or by exception).
Fabian Ruff found a bug, that should explain the behavior:
  kubernetes/kubernetes#68211 (comment)

This bug also contains a workaround, that's implemented here: use a
projected configMap instead of mounting directly from the original ones.
This way, an updated configMap will not be seen by the restarting
container and thus will not lead to the crashloop we've seen.

CCM-9905
@fwiesel fwiesel force-pushed the nova_projected_volumes branch from a98e017 to b5b44aa Compare July 13, 2022 09:14
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants