-
Notifications
You must be signed in to change notification settings - Fork 673
Weave 0.9.0 failing to startup properly on ubuntu 12.04 + Docker 1.5.0 #470
Comments
Output of
|
So this looks like a kernel issue, specifically, it appears that network namespaces are fake and all just end up pointing to the host network namespace. Our script does check for kernels >= 3.5. The OP says he is running 3.5.0. I wonder whether that is in fact too old. @errordeveloper |
OP reports that upgrading the kernel to 3.13 backport resolved the problem. So now we just need to figure out what the oldest version is that works. |
@errordeveloper ping |
Ok, I have Ubuntu 12.04 with |
That is consistent with the report from the OP. i.e. the |
@errordeveloper btw, make sure you are running a recent docker. |
I am not quite sure what is the case here exactly at this point. But I am thinking the clue is here:
The check for this had been introduced in f3faf83, which comes after I have test for 3.5 compatibility last time. The way the issue manifests itself is this:
While a quick test on boot2docker (kernel 3.18.5) shows that those files are symlink:
So it's to do with the way that files in
Yes, I got 1.5.0. |
Ah, so on older kernels a process' network namespace is not a symlink. Interesting. So is there any way on those old kernels to tell whether two processes use the same network namespace? |
Well, there are probably some pretty complex ways of determining that by observation... However, what we need to tell is whether it's the host's namespace or not, so we can look at
However, host might not have |
We could suppress the check for older kernels. But we'd need to know in which kernel version the symlinks were introduced. |
torvalds/linux@bf056bfa80596 Which went into the 3.7.0 release. |
"A single proc inode per namespace allows userspace to test to see if two processes are in the same namespace." which confirms our suspicion that prior to that change the check we want to perform is hard/impossible. |
@errordeveloper points out that I got this wrong - it's actually in 3.8.0. |
Check if `/proc/<pid>/ns/net` is a symlink Fixes #470.
I have a vanilla install of Docker 1.5.0 and Weave 0.9.0 on an Ubuntu 12.04 machine, but weave fails to startup
Output of uname -a:
Linux nj 3.5.0-23-generic #35~precise1-Ubuntu SMP Fri Jan 25 17:13:26 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux
Output of ifconfig -a:
Docker startup has not been modified, it's run as the default
/usr/bin/docker -d
commandOutput of
sudo sh -x /usr/local/bin/weave launch
And output of
docker logs weave
The text was updated successfully, but these errors were encountered: