-
Notifications
You must be signed in to change notification settings - Fork 1.2k
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
Workspaces are failing to start #10300
Comments
@magbj have you attempted to deploy in http mode? Anything suspicious in k8s events? I guess no.. but just in case. If the pod has started, the problem is with bootstrapping a workspace. After a container acquires running state, a k8s exec is executed to curl bootstrapper binary. When in a workspace container, do you see anything in /tmp/bootstrapper? Also, running |
@eivantsov do you mean like http vs. https? I did figure out what the problem was with websockets as well as a related problem with Keycloak not recognizing https. It turns out that ELB Layer 7 cannot do websockets. However, if you start using ELB Layer 4, then Nginx Ingress cannot send all the needed http headers to Keycloak, specifically x-forwarded-proto, which makes Keycloak mix http/https. So either path with ELB will break Eclipse Che/Keycloak. So I switched out ELB with ALB (https://github.com/kubernetes-sigs/aws-alb-ingress-controller), and it seems much better so far. The ALB goes directly to Keycloak and Che, but also on path (/server*) to the nginx-ingress-controller so Che can keep adding in ingress rules. WSS is still a little bit flakey, but I am able to connect now. So Keycloak seems rock solid now, and the Eclipse Che UI seems great as well, but I am still not able to create containers. Actually, I did not even get to the stage of the command being issued to Kubernetes. It seems to get stuck on not being able to create ingress rules now. From the Eclipse Che catalina.out:
Interestingly, the ingress rules seems to have been created right away:
The events don't look particularly odd:
|
After setting stickiness on the ALB Target Groups, all the WSS problems seems to have gone away. No more messages in the console about disconnects. So the main issue still remain though. Seems somewhat similar to this one: #10231 |
I have the very same issue, workspace is not starting : in the k8s dashboard i can see namespace is created, ingress rules and persistance volume claim as well, but there is no deployment, and no pod in the relevant workspace namespace. could it be that the k8s adapter api's have changed ? (api used for programmatic yaml deployment) |
The reason why deployments and pods are not created is that they are created when Ingresses are ready. I remember a similar registered issue (but I can't find it) where it is reported that AWS Ingress backend doesn't set Ingress IP. So, Che fails because it waits for it. @eivantsov Maybe you know where this issue is. Initially, it was implemented in this way because Ingress IP was required since it was used as a host in servers URLs. Now, there are three ingresses URL strategies: default host, multi-host and single-host. As far as I understand Ingress IP is required only for default host strategies. I think we can create an issue not to wait for Ingress IP when multi-host and single-host are configured. |
the issue was with nginx-ingress-controller getting stuck for some reason. |
Restarting does not solve the issue for me. @i300543 Are you running this in AWS? @sleshchenko I tried all the different URL strategies, and none of them create an address:
|
I was able to figure it out. Some lessons learnt:
So for AWS, the only way that I currently could get this to work is using ELB Layer 4 with SSL termination on the Nginx nodes. |
@magbj You're right, that's why I wrote that we can create an issue for that
So, I'll investigate this issue a bit more and then create an issue if needed |
@magbj |
Description
I have been able to get Eclipse Che up and running, and everything seems to be working to the point of creating workspaces. I am able to go through the page used for creating the workspace and I can pull up the IDE, but the container never becomes available.
I am also noticing these types of messages in the browser console:
I am not sure these are related, but I am guessing some breakdown in the communication, as I can see the PVC being created in the Kubernetes cluster and the container has successfully started. I am able to launch into the container (kubectl exec -it workspace4khyhc5nf1563y2a.dockerimage-76d7cbbb5b-bftll --namespace cde-che -- /bin/bash) and everything seems to be normal.
Thanks,
Magnus
Reproduction Steps
I have installed Eclipse Che according to: https://www.eclipse.org/che/docs/kubernetes-multi-user.html
Overall the setup looks like:
catalina.log:
access.log (snippet):
Environment Variables from Che container:
Screenshot:
The text was updated successfully, but these errors were encountered: