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
Added kubernetes yaml files #58
Conversation
Question: why do you use Zammad nginx container? Imho the kubernetes ingress controller could do the proxy work too. |
I just copied the docker setup over to kubernetes. Is the kubernetes Ingress able to mount the pvc and use a custom config with wss? Another question would be, eg: Is the tectonic ingress or some other ingresses able to do that too? |
Another thing: I don't know the zammad core, would it be possible to use nginx websocket upstream functionality instead of the custom wss port? |
I'm not sure that all ingress controllers support it but at least nginx & traefik ingress controlles can do it: Nginx example: https://github.com/nginxinc/kubernetes-ingress/blob/master/examples/websocket/README.md |
Ok, I will have a look at it, but that's stuff for tomorrow or so. I have to see. |
No hurry! |
This one is now working as expected. Let me know if you have another wish :) |
Maybe I could add a couple more Readme.md stuff. At least tell people that the need ReadWriteMany persistent volumes. This can be delivered from glusterfs or storageos. |
Google cloud test failed :-( Had to remove the s3 & cronjob yml files to get through "kubectl apply -f ." but containers wont start because of errors like:
I'll try with minkube later. |
It also did not work out of the box on minikube. GCE was not so much of a suprise. Maybe it works by adding some special storage container (nfs, or glusterfs). But i don't have enough time at the moment to try it out. Did you tried it somewhere else as in your environment? At least on Minikube it should work out of the box, to be able to test it. |
Hi, this is correct. For Zammad you will need ReadWriteMany disks. This is possible using eg GlusterFs or storageos. But that setup would be overkill to list here and hardly to maintain. As I said, maybe the documentation needs to be a bit more clear. I never tried minikube, so I don't know if we could get this working out of the box. |
As minikube is the official kubernetes testing environment we should try to get it work there. This should also be generic enough to use it as a starting point to get it work in other environments. |
Update.... |
After a while the websocket and scheduler containers crashed.
Pod log of scheduler and websocket server look like:
I guess its still a problem that the all containers try to write to zammads tmp dir. I tend to create kubernetes containers which use nfs or glusterfs to share a network directory. Also trying to figure out if redis, memcached or something similar can be used for tmp dir replacement. This is my current progress: https://github.com/monotek/zammad-docker-compose/tree/beyond-agentur-master |
Hi, yes this sounds like a volume problem. I use glusterfs as ReadWriteMany volumes. I had that error too, restarting railsserver helped. But that would not be the solution. We will get this working soon, I hope :) |
The removal of S3 is correct I think. It's something like glusterfs that should not be handled here. I think its not working because you didn't pass correct config values. |
We'll evaluate to use memcached like described in: zammad/zammad#1601 |
Hi, The system starts up but there are problems:
any clues? |
It does not work, without shared storage. We're currently evaluating to use memcached to fix the problem. See: zammad/zammad#1601 |
Yes, I did read - maybe I did not understand. Beside, why using docker-compose v3.3? There are no v3.3 specific rules?! |
monotek, I had not seen the issue #1601 PS: are you aware of minikube-nfs? |
Yes, NFS, Glusterfs or whatever network filesystem would work. Unfortunately it's kind of overhead to add this to Zammad, as additional containers (storage server) and changes to existing ones (storage clients) would be needed. That's the reason we thinking about to implement memcached instead, as parts of Zammad (cache) would already support it. Unfortunately we don't have a schedule for that at the moment. So voting for the linked issue could help speed up things a bit ;-) Can't remember the reason for compose v3.3. Maybe there is none but it's offtopic anyway. Minikube NFS is not a solution. It should be possible to run Zammad in any kubernetes cloud. Not just minikube. |
OK, I think I got it and already voted :) |
I just merged your changes to master. |
A first set of yaml files for kubernetes.