{"action":"created","issue":{"url":"https://api.github.com/repos/kubernetes/minikube/issues/2926","repository_url":"https://api.github.com/repos/kubernetes/minikube","labels_url":"https://api.github.com/repos/kubernetes/minikube/issues/2926/labels{/name}","comments_url":"https://api.github.com/repos/kubernetes/minikube/issues/2926/comments","events_url":"https://api.github.com/repos/kubernetes/minikube/issues/2926/events","html_url":"https://github.com/kubernetes/minikube/pull/2926","id":335082218,"node_id":"MDExOlB1bGxSZXF1ZXN0MTk2ODkwNTE0","number":2926,"title":"LXD driver for minikube","user":{"login":"BrendanBall","id":6750434,"node_id":"MDQ6VXNlcjY3NTA0MzQ=","avatar_url":"https://avatars3.githubusercontent.com/u/6750434?v=4","gravatar_id":"","url":"https://api.github.com/users/BrendanBall","html_url":"https://github.com/BrendanBall","followers_url":"https://api.github.com/users/BrendanBall/followers","following_url":"https://api.github.com/users/BrendanBall/following{/other_user}","gists_url":"https://api.github.com/users/BrendanBall/gists{/gist_id}","starred_url":"https://api.github.com/users/BrendanBall/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/BrendanBall/subscriptions","organizations_url":"https://api.github.com/users/BrendanBall/orgs","repos_url":"https://api.github.com/users/BrendanBall/repos","events_url":"https://api.github.com/users/BrendanBall/events{/privacy}","received_events_url":"https://api.github.com/users/BrendanBall/received_events","type":"User","site_admin":false},"labels":[{"id":484585353,"node_id":"MDU6TGFiZWw0ODQ1ODUzNTM=","url":"https://api.github.com/repos/kubernetes/minikube/labels/cncf-cla:%20yes","name":"cncf-cla: yes","color":"bfe5bf","default":false},{"id":778123172,"node_id":"MDU6TGFiZWw3NzgxMjMxNzI=","url":"https://api.github.com/repos/kubernetes/minikube/labels/lifecycle/stale","name":"lifecycle/stale","color":"795548","default":false},{"id":676686119,"node_id":"MDU6TGFiZWw2NzY2ODYxMTk=","url":"https://api.github.com/repos/kubernetes/minikube/labels/size/L","name":"size/L","color":"ee9900","default":false}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":8,"created_at":"2018-06-23T08:44:31Z","updated_at":"2018-10-23T22:42:25Z","closed_at":null,"author_association":"NONE","pull_request":{"url":"https://api.github.com/repos/kubernetes/minikube/pulls/2926","html_url":"https://github.com/kubernetes/minikube/pull/2926","diff_url":"https://github.com/kubernetes/minikube/pull/2926.diff","patch_url":"https://github.com/kubernetes/minikube/pull/2926.patch"},"body":"I've been using kvm for minikube, but it's just too flaky with all the moving parts and breaks easily. I think we can get a much more stable minikube on Linux using lxd, without spending very much effort doing so.\r\nI've added a driver to use minikube with lxd. This is still a WIP, but I want to get feedback and help at this point which is why I'm opening the PR now already.\r\nThe lxd driver is actually super simple (so far) because lxd has a rest api that uses a unix socket and has a go client implementing the api.\r\nWhat I've implemented so far:\r\n- lifecycle: create, start, stop, delete etc.\r\n- ssh: relies on $HOME/.ssh/id_rsa_lxd key existing\r\nCurrently the driver expects an lxd image aliased `base-minikube` to exist that has docker installed and ssh configured with $HOME/.ssh/id_rsa_lxd.pub (setup using the default lxd profile).\r\nFor networking, the driver is hardcoded to return the first eth0 inet address.\r\n\r\nI used an image based off of ubuntu:16.04 and installed docker-ce\r\nstarting minikube with this config gets to the step of `Starting cluster components...` and bombs out with error \r\n```\r\nError starting cluster:  kubeadm init error sudo /usr/bin/kubeadm init --config /var/lib/kubeadm.yaml ... \r\n...\r\nProcess exited with status 2\r\n```\r\nThe first time I got ssh to work it actually got further than this, it got to the point where it was trying to connect to the apiserver, but I couldn't see any docker containers running `docker ps` in the lxd container.\r\n\r\nSo what we really need at this point is a prebaked image that works with current minikube infrastructure.\r\nIdeally we use an image based off of the minikube image in this repo that is built using buildroot. I have no experience with that however and it doesn't seem very noob friendly. I tried just building the image locally and after a couple of hours the build failed because it ran out of disk space. So I assume buildroot compiles the entire system from scratch? I'd ideally not have to build an entire system from scratch. If anyone with buildroot experience or lxd image building experience or both can help me over this obstacle that would be awesome. There also isn't too much info on creating an lxd image reproducibly. It's very easy to create an image from an existing container, but I don't think that's how we want to build a minikube image.\r\n\r\nAnyway I hope some other people are interested in this that can work with me on the image part. If we can get an image working then the rest is very easy to clean up and finish off."},"comment":{"url":"https://api.github.com/repos/kubernetes/minikube/issues/comments/432447936","html_url":"https://github.com/kubernetes/minikube/pull/2926#issuecomment-432447936","issue_url":"https://api.github.com/repos/kubernetes/minikube/issues/2926","id":432447936,"node_id":"MDEyOklzc3VlQ29tbWVudDQzMjQ0NzkzNg==","user":{"login":"tstromberg","id":101424,"node_id":"MDQ6VXNlcjEwMTQyNA==","avatar_url":"https://avatars3.githubusercontent.com/u/101424?v=4","gravatar_id":"","url":"https://api.github.com/users/tstromberg","html_url":"https://github.com/tstromberg","followers_url":"https://api.github.com/users/tstromberg/followers","following_url":"https://api.github.com/users/tstromberg/following{/other_user}","gists_url":"https://api.github.com/users/tstromberg/gists{/gist_id}","starred_url":"https://api.github.com/users/tstromberg/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tstromberg/subscriptions","organizations_url":"https://api.github.com/users/tstromberg/orgs","repos_url":"https://api.github.com/users/tstromberg/repos","events_url":"https://api.github.com/users/tstromberg/events{/privacy}","received_events_url":"https://api.github.com/users/tstromberg/received_events","type":"User","site_admin":false},"created_at":"2018-10-23T22:42:25Z","updated_at":"2018-10-23T22:42:25Z","author_association":"COLLABORATOR","body":"@BrendanBall - I'll look into it. Is there a reason you feel lxd needs it's own image? It'd be nice if we were able to preserve a single image for all platforms. \r\n"}}
{"actor":{"display_login":"tstromberg"}}