-
Notifications
You must be signed in to change notification settings - Fork 146
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
Sysbox installation on Rancher managed cluster failed #380
Comments
Thanks for filing this issue @pwurbs! Sysbox-PODs feature has not been validated / tested on Rancher yet. Will take a look at this one tomorrow. |
I was able to reproduce the issue by deploying a cluster directly through rke -- had too many issues trying to import pre-existing nodes into rancher. Even though the setup may not be exactly the same as the one originally described, there shouldn't be any relevant differences for us as rancher internally relies on There are various issues at play here:
@pwurbs, how does |
@rodnymolina |
Installing Sysbox through the traditional package won't help here as Rancher (and its provisioning tools: rke, rke2, ks3) won't be aware of its existence in the remote hosts. For that integration process to happen is that we have the 'sysbox-k8s-deploy' daemon-set. Having said that, there may be an alternative approach that we are currently investigating to make this all work. Please stay tuned. |
At the end we were able to make it work (see details below). RKE can now deploy sysbox-powered pods in a cluster. Changes have been pushed to the latest Sysbox-deploy-k8s installer, which will deploy both CRI-O and Sysbox in the desired k8s-nodes. In terms of implementation, we went for the following approach: As mentioned above, RKE heavily relies on docker to create both the k8s control-plane as well as its data-plane. The former components are spawned as docker containers (i.e. As we don't want / we can't change RKE, we are still relying on docker to create the basic control-plane components. However, we have switched all the data-plane components from docker-shim to CRI-O. As it's usually the case, we have incorporated all the required configuration steps as part of the sysbox-deploy-k8s daemonset. All that is required is the execution of the following steps -- k8s-nodes' re-configuration process shouldn't take more than a minute:
Refer to our k8s installation guide for more details. |
I could now successfully deploy Sysbox at a Rancher managed (RKE) cluster node using the K8S manifest files. Then I started successfully a pod with docker:dind image (docker:19.03.15-dind-alpine3.13) This is the Docker version info from within the container:
These versions are a bit different from your ubuntu-bionic-systemd-docker image. |
Hi @pwurbs, Glad you were able to install Sysbox on your RKE nodes (great work by @rodnymolina to enable this). Regarding the latest problem you reported:
This looks very similar to issue #254, where the problem showed up when the inner Docker uses slightly older versions. However, in that issue we reported that the problem occurs when the inner Docker has version < 19.03, but in your case the inner Docker has version 19.03. Could you retry with a docker dind image using Docker 20+ please?
I don't believe so. Thus, it makes sense for us to move this discussion to issue #254. I'll copy your prior comment and this current one to that issue, so we can continue the discussion there. I'll close this one. |
I tried to install Sysbox in a k8S cluster using the user guide.
So Sysbox requirements should be fulfilled.
RBAC and RuntimeClass have been successfully deployed.
But there are issues with the Daemonset sysbox-deploy-k8s, the Pod is continously crashing.
This is the log line before crashing:
Job for kubelet-config-helper.service failed because the control process exited with error code. See "systemctl status kubelet-config-helper.service" and "journalctl -xe" for details.
This is the result of "systemctl status kubelet-config-helper.service":
The cluster has been created in Rancher using the option "Create a new Kubernetes cluster", based on existing nodes. So the single node has been prepared and imported to create the new (downstream) cluster.
Attached, there is the cluster-config, exported from Rancher
cluster-config.txt
The text was updated successfully, but these errors were encountered: