Help accessing Eclipse Che with Minikube and KVM on external machine
See original GitHub issueSummary
tl;dr
This is my setup, what is the proper way of using Minikube (for KVM acceleration)? Or perhaps is Minikube the wrong approach? Should I deploy a different solution for k8s? I’m open to installing a new operating system on the k8s machine (such as k3os or any other k8s focused OS). I had already backed up all my data.
Things I’ve tried
-
Follow the K8s tutorial here: Exposing an External IP Address to Access an Application in a Cluster
kubectl --namespace che expose deployment/che --type="LoadBalancer " --name=che-service
-
Leads to an External IP always staying pending, so I followed the advice here: https://github.com/kubernetes/minikube/issues/3966#issuecomment-480097796 and used `minikube tunnel’. This gave another internal IP address, although it was 10.x.x.x
-
Following KVM: Creating a bridged network with NetPlan on Ubuntu bionic, I appear to now be faced with minikube being unable to resolve k8s
! Node may be unable to resolve external DNS records ! VM is unable to access k8s.gcr.io, you may need to configure a proxy or set --image-repository
chectl doesn’t thow any errors, but I’m not seeing any bandwidth activity.
I was able to quickly understand Docker, but with k8s, I feel like I’m way in over my head.
Relevant information
Issue Analytics
- State:
- Created 4 years ago
- Comments:10 (5 by maintainers)
Top GitHub Comments
I was unable to get around the issue. It has been awhile since I was tackling CRC method to deploy a k8s cluster. My recollection was the recommended Ubuntu version at the time was lower than 18.04, but the KVM version that came with Ubuntu 16 was too old. Researching how to upgrade KVM only returned results on installing QEMU/KVM.
Ubuntu 18.04 LTS or newer and Debian 10 or newer are not officially supported and may require manual set up of the host machine.
https://code-ready.github.io/crc/
After trying RancherOS (Supposedly due to be obsoleted https://github.com/rancher/os/issues/3000#issuecomment-630511978), k3OS never seemed to resolve an IP address, Fedora’s CoreOS required learning another technology called Ignition. . . .
After researching Kubernetes more thoroughly, it appears the fastest/easiest path to a local Kubernetes server is to use kubectl.
Personally, I chose to use microk8s on the
k8s
machine pictured above.Microk8s guide: https://microk8s.io/docs/working-with-kubectl
tl;dr: on k8s machine:
microk8s config
and copy and paste ormicrok8s config > config
and find a way to retrieve the file to your client machine.Assuming you don’t have a .kube in your home directory
on the client machine
. I.E the machine you want to access Kubernetes from.put the config file from earlier in the .kube folder
chectl server:start -p k8s -a helm -b mainhub.lan
where
mainhub.lan
is your k8s machine.Minikube guide: https://medium.com/@kuljeetsinghkhurana/access-minikube-using-kubectl-from-remote-machine-2b0eeefad9cb
In theory,
chectl server:start -p k8s -a helm -b mainhub.lan
should work here too, but I haven’t tested it.Although this experience has dragged me into the world of Kubernetes kicking and screaming, I enjoyed the learning experience.
Hello @gnoejuan, i’ve just finish to setup something i think similar to your needs, running completely inside a private network.
This is the abstract, let me know if i can give you more informations:
/etc/resolv.conf
file insider your Openshift VM, pointing to the IP of the dnsmasq host. This way Openshift, when starting, will pass your private DNS/Domain settings to Openshift.Let me know if i can provide more insight.