machine-drivers / docker-machine-driver-xhyve

docker-machine/minikube/minishift driver plugin for xhyve/hyperkit (native macOS hypervisor.framework)
https://godoc.org/github.com/machine-drivers/docker-machine-driver-xhyve
BSD 3-Clause "New" or "Revised" License
888 stars 74 forks source link

virtio_net: Could not create vmnet interface, permission denied or no entitlement? #107

Open brodybits opened 8 years ago

brodybits commented 8 years ago

I installed using brew install docker-machine-driver-xhyve ran the chown/chmod, and tried running: docker-machine create dev --driver xhyve --xhyve-experimental-nfs-share

The output looks OK until I get the following:

(dev) Waiting for VM to come online...
(dev) Waiting on a pseudo-terminal to be ready... virtio_net: Could not create vmnet interface, permission denied or no entitlement?

I found #85 but am not sure if this is the same thing.

I tried doing chown/chmod on ht actual /usr/local/bin file instead and get the same results.

I discovered nlf/dhyve#37 with the following:

the file /Library/Preferences/SystemConfiguration/com.apple.vmnet doesn't exist.

I also do not find this file on my system (I am on Yosemite 10.10.5). I have no idea if this is the cause or if it may be something else.

This is really unfortunate since I really like this project.

As a workaround I am able to use https://github.com/ailispaw/boot2docker-xhyve. But I would rather use this one instead, if possible.

Another comment is that I found a really nice writeup at: https://allysonjulian.com/posts/setting-up-docker-with-xhyve/

nhooey commented 7 years ago

@brodybits Do you have /Library/Preferences/SystemConfiguration/com.apple.vmnet.plist? (Note the extra .plist at the end of that file).

nhooey commented 7 years ago

@zchee Do you know what the issue might be?

I created this ServerFault question: xhyve error: virtio_net: Could not create vmnet interface, permission denied or no entitlement?

nhooey commented 7 years ago

@therealprof Could you comment with your solution?

zchee commented 7 years ago

@nhooey Sorry, just in case, your problem is vmnet net sharing?

nhooey commented 7 years ago

@zchee For me, this problem occurs when I run:

docker-machine --debug create --driver=xhyve --xhyve-cpu-count -1 --xhyve-memory-size 2048 xhyve

The entire invocation details are in the ServerFault question I made.

zchee commented 7 years ago

@nhooey I saw stack overflow quicky,

$ xhyve -A -U 6C9B31CC-75A4-4AB7-9733-EB9ADD64658F \
        -c 4 -m 2048M -l com1,autopty -s 0:0,hostbridge \
        -s 31,lpc -s 2:0,virtio-net -s 3:0,ahci-cd,/Users/${USER}/.docker/machine/machines/xhyve/boot2docker.iso \
        -s 4:0,ahci-hd,/dev/rdisk4 \
        -f kexec,/Users/${USER}/.docker/machine/machines/xhyve/vmlinuz64,/Users/${USER}/.docker/machine/machines/xhyve/initrd.img,loglevel=3 user=docker console=ttyS0 console=tty0 noembed nomodeset norestore waitusb=10:LABEL=boot2docker-data base -M

it's maybe need sudo before xhyve command. vmnet required sudo permission.

nhooey commented 7 years ago

@zchee This is what happens when I run it with sudo:

sudo xhyve -A -U 6C9B31CC-75A4-4AB7-9733-EB9ADD64658F -c 4 -m 2048M -l com1,autopty -s 0:0,hostbridge -s 31,lpc -s 2:0,virtio-net -s 3:0,ahci-cd,/Users/nhooey/.docker/machine/machines/xhyve/boot2docker.iso -s 4:0,ahci-hd,/dev/rdisk4 -f kexec,/Users/nhooey/.docker/machine/machines/xhyve/vmlinuz64,/Users/nhooey/.docker/machine/machines/xhyve/initrd.img,loglevel=3 user=docker console=ttyS0 console=tty0 noembed nomodeset norestore waitusb=10:LABEL=boot2docker-data base -M
Password:
Could not open backing file: No such file or directory
zchee commented 7 years ago

@nhooey wtf, open backing file error...? I'll quick grep-ing xhyve source, sec.

BTW, Are you done of this setting? https://github.com/zchee/docker-machine-driver-xhyve#install

$ sudo chown root:wheel /usr/local/bin/docker-machine-driver-xhyve
$ sudo chmod u+s /usr/local/bin/docker-machine-driver-xhyve
nhooey commented 7 years ago

@zchee Yeah, I already ran that.

zchee commented 7 years ago

@nhooey Ahh, below error is known issue. but It not solved yet by anyone :(

default 21:13:06.934741 +0100   InternetSharing  xhyve[13848] invalid client
default 21:13:06.935318 +0100   xhyve   error: aborting XPC connection to daemon
default 21:13:06.935678 +0100   xhyve   interface 0x7f9b1b000000, netrb client create failed

Some users no problem, but another some users happen this problem.

The netrb is actually netrb.framework, that's vmnet.framework backend. on /System/Library/PrivateFrameworks/Netrb.framework.

I expect "Firewall" or "Internet Sharing" settings on "System Preferences"(Yes, macOS GUI settings) to be relevant, but I do not know the solution.

FYI, there was a report that this error occurred when using the company's mac that managed some settings on upstream(admin) PC.

nhooey commented 7 years ago

@zchee I filtered out junk from my Console.app log, and I have more information here:

xhyve error: “Could not open backing file: No such file or directory”

justechn commented 7 years ago

@nhooey @zchee I am running into this problem with minikube. Did you ever find a solution? All the linked to serverfault issues have been removed.

nhooey commented 7 years ago

I ne'er found a solution and gave up. On Mon, Mar 27, 2017 at 21:55 justechn notifications@github.com wrote:

@nhooey https://github.com/nhooey @zchee https://github.com/zchee I am running into this problem with minikube. Did you ever find a solution? All the linked to serverfault issues have been removed.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/zchee/docker-machine-driver-xhyve/issues/107#issuecomment-289566664, or mute the thread https://github.com/notifications/unsubscribe-auth/AAD_smbD36qXntbmqK1mW1-_L3OAgh12ks5rqBRCgaJpZM4H1F6Q .

justechn commented 7 years ago

unfortunately I may have to do the same thing. When I use virtualbox as my vm driver everything works great, with xhyve I have all sorts of problems like this one.

HarpreetSandhu commented 5 years ago

As mentioned by @zchee following commands helped me to sort out this issue.

sudo chown root:wheel /usr/local/bin/docker-machine-driver-xhyve
sudo chmod u+s /usr/local/bin/docker-machine-driver-xhyve

Issue: _(default) Waiting for VM to come online... (default) Waiting on a pseudo-terminal to be ready... virtionet: Could not create vmnet interface, permission denied or no entitlement?

But now I'm facing following issue: (default) linkname (null) (default) COM1 connected to /dev/ttys002 Machine didn't return an IP after 120 seconds, aborting