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

crio.conf is hard-coded to a specific version #5677

Closed
afbjorklund opened this issue Oct 21, 2019 · 3 comments · Fixed by #6219
Closed

crio.conf is hard-coded to a specific version #5677

afbjorklund opened this issue Oct 21, 2019 · 3 comments · Fixed by #6219
Assignees
Labels
co/runtime/crio CRIO related issues kind/bug Categorizes issue or PR as related to a bug. priority/important-soon Must be staffed and worked on either currently, or very soon, ideally in time for the next release.
Milestone

Comments

@afbjorklund
Copy link
Collaborator

The contents of /etc/crio/crio.conf is very context-sensitive to a particular version of cri-o:

https://github.com/kubernetes/minikube/commits/master/deploy/iso/minikube-iso/package/crio-bin/crio.conf.default

Yet we are overwriting the whole thing with a static template, even if only changing pause_image.

pause_image = "{{ .PodInfraContainerImage }}"

This breaks things, when there is a mismatch between minikube and minikube.iso (or other OS)

We should either make a smaller configuration change, or version the config file accordingly.

It also seem to be located in the wrong module, it's in (the generic) CRI rather than in CRI-O ?

https://github.com/kubernetes/minikube/blob/master/pkg/minikube/cruntime/cri.go#L34_L328

I tried to use crio on a platform with crio 1.13, and it blew up.

The new configuration made it unable to find the "seccomp.json"

@afbjorklund afbjorklund added co/runtime/crio CRIO related issues kind/bug Categorizes issue or PR as related to a bug. priority/important-longterm Important over the long term, but may not be staffed and/or may need multiple releases to complete. labels Oct 21, 2019
@afbjorklund
Copy link
Collaborator Author

There is also other things missing, from the systemd crio.service: #4087

So the crio.conf, /etc/sysconfig/crio* and crio*.service all need overhaul

@afbjorklund afbjorklund added this to the v1.7.0-candidate milestone Dec 3, 2019
@tstromberg tstromberg added priority/important-soon Must be staffed and worked on either currently, or very soon, ideally in time for the next release. and removed priority/important-longterm Important over the long term, but may not be staffed and/or may need multiple releases to complete. labels Dec 9, 2019
@afbjorklund afbjorklund self-assigned this Jan 6, 2020
@afbjorklund
Copy link
Collaborator Author

afbjorklund commented Jan 6, 2020

I will replace the overwrite, with some kind of more specific config update instead of the clobber:

	c := exec.Command("/bin/bash", "-c", fmt.Sprintf("sudo mkdir -p %s && printf %%s \"%s\" | base64 -d | sudo tee %s", path.Dir(cPath), base64.StdEncoding.EncodeToString(b.Bytes()), cPath))

Would be nice if we could edit this TOML, with having to include all of the cri-o code to do it ?

# The image used to instantiate infra containers.
# This option supports live configuration reload.
pause_image = "{{ .PodInfraContainerImage }}"

@afbjorklund
Copy link
Collaborator Author

I went with sed (instead of previous tee)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
co/runtime/crio CRIO related issues kind/bug Categorizes issue or PR as related to a bug. priority/important-soon Must be staffed and worked on either currently, or very soon, ideally in time for the next release.
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants