Open renich opened 4 years ago
OK, that didn't fix it. The new 50 GiB .img file was created, but I still don't have enough space. It thinks it's 10 G still. I'll dig more into it.
That said, I think it's just better to have the addon honor the disk-size setting.
The disk-size
in the minikube config is for the VM disk, and seems to have worked you say.
In order to change the glusterfs deployment, you need to change the storage provisioner.
There seems to be a environment variable USE_FAKE_SIZE
than you can use (now 10G) ?
containers:
- image: quay.io/nixpanic/glusterfs-server:pr_fake-disk
imagePullPolicy: IfNotPresent
name: glusterfs
env:
- name: USE_FAKE_DISK
value: "enabled"
#- name: USE_FAKE_FILE
# value: "/srv/fake-disk.img"
#- name: USE_FAKE_SIZE
# value: "10G"
#- name: USE_FAKE_DEV
# value: "/dev/fake"
https://quay.io/repository/nixpanic/glusterfs-server?tag=pr_fake-disk
It seems like the correct variable name is FAKE_DISK_SIZE
(not "USE_FAKE_SIZE")
https://github.com/gluster/gluster-containers/blob/master/CentOS/Dockerfile
OK, how do I set this up with minikube? I can't use glusterfs for now given the small size of the disk.
I don't think it's a minikube-specific thing, it's how the kubernetes packaging for glusterfs works ?
Most likely you would kubectl edit
(or similar edit in the yaml file) the glusterfs DaemonSet
@afbjorklund I disagree. You can set the CPU and RAM amounts for your minikube k8s cluster. Why not enable setting the size of your storage layer?
It would be fine to add a setting to the gluster addon (somehow), but the disk-size
setting is for the size of the VM. Alternatively one could take up a discussion with the glusterfs packaging for kubernetes, and avoid having such a hard-coded value for the /srv/fake-disk.img in the first place ? Like have it be a percentage of the disk size or something ? Either way, not exactly minikube.
Currently we are still using the hostpath storage provider as the default for minikube.
But we should change the name of those variables, commented out or not. Maybe even uncomment the size, just to make it perfectly clear where the 10G value can be edited if desired.
@afbjorklund yes, you're right.
Actually we do have an addons configuration possibility, but it's not implemented for this one:
❌ glusterfs has no available configuration options
In fact, I think the only addon that has any configuration at the moment is the registry-creds
So maybe we'll just go for the Kubernetes configuration here.
We will need to revisit the storage options in minikube sometime in the future, anyway. Need to rewrite the old hostpath provisioner, and need to introduce proper support for CSI.
And when the multinode option becomes available, it will need proper multinode storage... Probably using Ganesha would be the easiest, but GlusterFS could be considered as well.
Thank you for the update.
@renich is this issue solved or is there anything that we need to fix on our end ? (adimtably I didnt read the whole discussion)
@medyagh well, @afbjorklund said you would revisit the storage options. I dunno if it can be closed and referenced later.
FYI - minikube config set disk-size
sets the disk size for minikube - not for gluster.
Issues go stale after 90d of inactivity.
Mark the issue as fresh with /remove-lifecycle stale
.
Stale issues rot after an additional 30d of inactivity and eventually close.
If this issue is safe to close now please do so with /close
.
Send feedback to sig-testing, kubernetes/test-infra and/or fejta. /lifecycle stale
Is this ticket gonna be automatically closed?
I would be happy to accept a PR that will add a setting to gluster addon to set the Interal Disk Size for Gluster.
would you be interested in contributing that ? @renich
@medyagh I can try. I have no idea of where to start, though, but it'll be fun.
Hey @renich are you still interested in working on this?
Hey @renich are you still interested in working on this?
I just don't know where to start...
So currently the gluster daemonset yaml file has a bit that looks like:
- image: {{.CustomRegistries.GlusterfsServer | default .ImageRepository | default .Registries.GlusterfsServer }}{{.Images.GlusterfsServer}}
imagePullPolicy: IfNotPresent
name: glusterfs
env:
- name: USE_FAKE_DISK
value: "enabled"
#- name: USE_FAKE_FILE
# value: "/srv/fake-disk.img"
#- name: USE_FAKE_SIZE
# value: "10G"
#- name: USE_FAKE_DEV
# value: "/dev/fake"
It looks like we should (a) change these variable names to be correct, and then (b) add an option to minikube addons configure
to be able to uncomment/change these. Adding a configure option would involve adding a case to https://github.com/kubernetes/minikube/blob/master/cmd/minikube/cmd/config/configure.go to do that work in the yaml file.
The exact command to reproduce the issue:
The full output of the command that failed:
The output of the
minikube logs
command:The operating system version: Fedora 31 x86_64
I managed to fix this by:
50G
(my requirement)