Skip to content
This repository has been archived by the owner on Jun 20, 2024. It is now read-only.

weave setup or weave launch receive path error #3707

Open
gkoerk opened this issue Oct 2, 2019 · 4 comments
Open

weave setup or weave launch receive path error #3707

gkoerk opened this issue Oct 2, 2019 · 4 comments

Comments

@gkoerk
Copy link

gkoerk commented Oct 2, 2019

What you expected to happen?

The weave network to launch or open setup.

What happened?

# weave launch
mkdir: can't create directory '/host/opt/': No such file or directory
The weave container has died. Consult the container logs for further details.

How to reproduce it?

# weave launch
mkdir: can't create directory '/host/opt/': No such file or directory
The weave container has died. Consult the container logs for further details.

Anything else we need to know?

Docker Info:

# weave launch
mkdir: can't create directory '/host/opt/': No such file or directory
The weave container has died. Consult the container logs for further details.

Versions:

$ weave version
weave script 2.5.2
weave 2.5.2

$ docker version
Client:
 Version:      17.09.1-ce
 API version:  1.32
 Go version:   go1.8.3
 Git commit:   e398b97
 Built:        Tue May 28 12:02:28 2019
 OS/Arch:      linux/amd64

Server:
 Version:      17.09.1-ce
 API version:  1.32 (minimum version 1.12)
 Go version:   go1.8.3
 Git commit:   e398b97
 Built:        Tue May 28 12:02:28 2019
 OS/Arch:      linux/amd64
 Experimental: false

$ uname -a
Linux GKNAS 4.14.24-qnap #1 SMP Fri Aug 16 18:41:53 CST 2019 x86_64 GNU/Linux

$ kubectl version
N/A

Logs:

$ docker logs weave
FATA: 2019/10/02 21:15:49.419326 All system IDs are blank

ables-save

@bboreham
Copy link
Contributor

bboreham commented Oct 3, 2019

You seem to have a nontypical installation. qnap is a NAS device? Seems unusual to run Weave Net on a NAS.

Can you run WEAVE_DEBUG=true weave launch and post the entire output please.

@gkoerk
Copy link
Author

gkoerk commented Oct 3, 2019

Done:

# WEAVE_DEBUG=true weave launch
+ SCRIPT_VERSION=2.5.2
+ IMAGE_VERSION=latest
+ '[' 2.5.2 = unreleased ']'
+ IMAGE_VERSION=2.5.2
+ IMAGE_VERSION=2.5.2
+ MIN_DOCKER_VERSION=1.10.0
+ DOCKERHUB_USER=weaveworks
+ BASE_EXEC_IMAGE=weaveworks/weaveexec
+ EXEC_IMAGE=weaveworks/weaveexec:2.5.2
+ WEAVEDB_IMAGE=weaveworks/weavedb:latest
+ BASE_IMAGE=weaveworks/weave
+ IMAGE=weaveworks/weave:2.5.2
++ echo ''
++ cut -s -d: -f1
+ PROXY_HOST=
+ PROXY_HOST=127.0.0.1
+ DOCKER_CLIENT_HOST=
+ IP_REGEXP='[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}'
+ CIDR_REGEXP='[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}/[0-9]{1,2}'
+ '[' launch = --local ']'
+ case "$1" in
+ '[' -z '' ']'
+ for img in '$IMAGE' '$WEAVEDB_IMAGE'
+ docker inspect -f _ weaveworks/weave:2.5.2
+ for img in '$IMAGE' '$WEAVEDB_IMAGE'
+ docker inspect -f _ weaveworks/weavedb:latest
+ docker pull weaveworks/weavedb:latest
latest: Pulling from weaveworks/weavedb
9b0681f946a1: Pull complete
Digest: sha256:c280cf4e7208f4ca0d2514539e0f476dd12db70beacdc368793b7736de023d8d
Status: Downloaded newer image for weaveworks/weavedb:latest
+ '[' -z '' ']'
+ check_docker_version
++ docker -v
++ sed -n -e 's|^Docker version \([0-9][0-9]*\.[0-9][0-9]*\.[0-9][0-9]*\).*|\1|p'
+ DOCKER_VERSION=17.09.1
+ '[' -z 17.09.1 ']'
+ version_lt 17.09.1 1.10.0
+ VERSION_MAJOR=17
+ REST=17.09
+ VERSION_MINOR=09
+ VERSION_PATCH=1
+ MIN_VERSION_MAJOR=1
+ REST=1.10
+ MIN_VERSION_MINOR=10
+ MIN_VERSION_PATCH=0
+ '[' '(' 17 -lt 1 ')' -o '(' 17 -eq 1 -a '(' 09 -lt 10 -o '(' 09 -eq 10 -a '(' 1 -lt 0 ')' ')' ')' ')' ']'
+ return 1
+ exec_remote launch
++ docker_run_options
+++ docker_sock_options
+++ echo ''
+++ grep -q '^unix://'
+++ echo '-v /var/run/docker.sock:/var/run/docker.sock'
++ echo --privileged --net host -v /var/run/docker.sock:/var/run/docker.sock
++ exec_options launch
++ case "$1" in
++ echo -v /:/host -e HOST_ROOT=/host
+ docker run --rm --privileged --net host -v /var/run/docker.sock:/var/run/docker.sock --pid host -v /:/host -e HOST_ROOT=/host -e DOCKERHUB_USER=weaveworks -e WEAVE_VERSION -e WEAVE_DEBUG -e WEAVE_DOCKER_ARGS -e WEAVE_PASSWORD -e WEAVE_PORT -e WEAVE_HTTP_ADDR -e WEAVE_STATUS_ADDR -e WEAVE_CONTAINER_NAME -e WEAVE_MTU -e WEAVE_NO_FASTDP -e WEAVE_NO_BRIDGED_FASTDP -e DOCKER_BRIDGE -e DOCKER_CLIENT_HOST= -e DOCKER_CLIENT_ARGS -e PROXY_HOST=127.0.0.1 -e COVERAGE -e CHECKPOINT_DISABLE -e AWSVPC weaveworks/weaveexec:2.5.2 --local launch
Unable to find image 'weaveworks/weaveexec:2.5.2' locally
2.5.2: Pulling from weaveworks/weaveexec
a073c86ecf9e: Already exists
950f028f729b: Already exists
56ec4c93cac1: Already exists
89bfe5026fad: Already exists
cb1ef2e70f31: Already exists
15e5c1abe10f: Pull complete
d38d2339dc31: Pull complete
4ff6e56ab1df: Pull complete
642aa43d8ed6: Pull complete
Digest: sha256:7708cbd643f4353c34c96060c47d8a32f8c8a4c152fa37de0f6f9fe876a1f67c
Status: Downloaded newer image for weaveworks/weaveexec:2.5.2
+ SCRIPT_VERSION=2.5.2
+ IMAGE_VERSION=latest
+ [ 2.5.2 = unreleased ]
+ IMAGE_VERSION=2.5.2
+ IMAGE_VERSION=2.5.2
+ MIN_DOCKER_VERSION=1.10.0
+ DOCKERHUB_USER=weaveworks
+ BASE_EXEC_IMAGE=weaveworks/weaveexec
+ EXEC_IMAGE=weaveworks/weaveexec:2.5.2
+ WEAVEDB_IMAGE=weaveworks/weavedb:latest
+ BASE_IMAGE=weaveworks/weave
+ IMAGE=weaveworks/weave:2.5.2
+ PROXY_HOST=127.0.0.1
+ PROXY_HOST=127.0.0.1
+ DOCKER_CLIENT_HOST=
+ IP_REGEXP=[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}
+ CIDR_REGEXP=[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}/[0-9]{1,2}
+ [ --local = --local ]
+ shift 1
+ IS_LOCAL=1
+ [ -z 1 ]
+ [ -z 1 ]
+ RESTART_POLICY=--restart always
+ CONTAINER_NAME=weave
+ PLUGIN_NAME=weaveworks/net-plugin
+ OLD_PLUGIN_CONTAINER_NAME=weaveplugin
+ CNI_PLUGIN_NAME=weave-plugin-2.5.2
+ CNI_PLUGIN_DIR=/host/opt/cni/bin
+ VOLUMES_LABEL=weavevolumes
+ VOLUMES_CONTAINER_NAME=weavevolumes-2.5.2
+ DB_CONTAINER_NAME=weavedb
+ DOCKER_BRIDGE=docker0
+ BRIDGE=weave
+ DATAPATH=datapath
+ CONTAINER_IFNAME=ethwe
+ BRIDGE_IFNAME=vethwe-bridge
+ DATAPATH_IFNAME=vethwe-datapath
+ PORT=6783
+ HTTP_ADDR=127.0.0.1:6784
+ STATUS_ADDR=127.0.0.1:6782
+ PROXY_PORT=12375
+ OLD_PROXY_CONTAINER_NAME=weaveproxy
+ PROC_PATH=/proc
+ COVERAGE_ARGS=
+ [ -n  ]
+ id -u
+ [ 0 = 0 ]
+ uname -s -r
+ sed -n -e s|^\([^ ]*\) \([0-9][0-9]*\)\.\([0-9][0-9]*\).*|\1 \2 \3|p
+ read sys maj min
+ [ Linux != Linux ]
+ [ ( 4 -eq 3 -a 14 -ge 8 ) -o 4 -gt 3 ]
+ command_exists ip
+ command -v ip
+ [ 1 -gt 0 ]
+ COMMAND=launch
+ shift 1
+ check_not_running weave weaveworks/weave
+ util_op container-state weave weaveworks/weave
+ STATE=exited
+ util_op remove-container weave
+ command_exists weaveutil
+ command -v weaveutil
+ weaveutil remove-container weave
+ http_call 127.0.0.1:6784 GET /status
+ launch --plugin --proxy
+ LAUNCHING_ROUTER=1
+ check_forwarding_rules
+ run_iptables -C FORWARD -j REJECT --reject-with icmp-host-prohibited
+ CONTAINER_PORT=6783
+ ARGS=
+ IPRANGE=
+ IPRANGE_SPECIFIED=
+ [ -n  ]
+ util_op bridge-ip docker0
+ command_exists weaveutil
+ command -v weaveutil
+ weaveutil bridge-ip docker0
+ DOCKER_BRIDGE_IP=10.0.5.1
+ [ 2 -gt 0 ]
+ + sedecho s|'|'"'"'|g --plugin

+ ARGS= '--plugin'
+ shift
+ [ 1 -gt 0 ]
+ echo --proxy
+ sed s|'|'"'"'|g
+ ARGS= '--plugin' '--proxy'
+ shift
+ [ 0 -gt 0 ]
+ eval set --  '--plugin' '--proxy'
+ set -- --plugin --proxy
+ setup_cni
+ HAIRPIN_MODE=true
+ install_cni_plugin /host/opt/cni/bin
+ mkdir -p /host/opt/cni/bin
mkdir: can't create directory '/host/opt/': No such file or directory
+ return 1
+ rm -f /host/etc/cni/net.d/10-weave.conf
+ [ -d /host/etc/cni/net.d -a ! -f /host/etc/cni/net.d/10-weave.conflist ]
+ validate_bridge_type
+ detect_bridge_type
+ util_op detect-bridge-type weave datapath
+ command_exists weaveutil
+ command -v weaveutil
+ weaveutil detect-bridge-type weave datapath
+ BRIDGE_TYPE=none
+ return 1
+ return 0
+ [ -z  ]
+ IPRANGE=10.32.0.0/12
+ check_overlap 10.32.0.0/12
+ util_op netcheck 10.32.0.0/12 weave
+ command_exists weaveutil
+ command -v weaveutil
+ weaveutil netcheck 10.32.0.0/12 weave
+ [ -L /host/etc/resolv.conf ]
+ RESOLV_CONF=/etc/resolv.conf
+ dirname /etc/resolv.conf
+ RESOLV_CONF_DIR=/etc
+ basename /etc/resolv.conf
+ RESOLV_CONF_BASE=resolv.conf
+ docker_client_args
+ [ 0 -gt 0 ]
+ proxy_args --plugin --proxy
+ REMAINING_ARGS=
+ PROXY_VOLUMES=
+ PROXY_ARGS=
+ PROXY_TLS_ENABLED=
+ PROXY_TLS_DETECTION_DISABLED=
+ PROXY_HOST=
+ proxy_parse_args --plugin --proxy
+ [ 2 -gt 0 ]
+ REMAINING_ARGS= --plugin
+ shift
+ [ 1 -gt 0 ]
+ REMAINING_ARGS= --plugin --proxy
+ shift
+ [ 0 -gt 0 ]
+ [ -z  -a -z  ]
+ util_op docker-tls-args
+ command_exists weaveutil
+ command -v weaveutil
+ weaveutil docker-tls-args
+ DOCKER_TLS_ARGS=
+ proxy_parse_args
+ [ 0 -gt 0 ]
+ [ -z  ]
+ PROXY_HOST=unix:///var/run/weave/weave.sock
+ host_arg unix:///var/run/weave/weave.sock
+ PROXY_HOST=unix:///var/run/weave/weave.sock
+ [ unix:///var/run/weave/weave.sock != /var/run/weave/weave.sock ]
+ dirname /var/run/weave/weave.sock
+ host=/var/run/weave
+ [ /var/run/weave = var/run/weave ]
+ PROXY_VOLUMES= -v /var/run/weave:/var/run/weave
+ PROXY_ARGS=-H unix:///var/run/weave/weave.sock
+ mkdir -p /var/run/weave
+ util_op container-state weavedb
+ protect_against_docker_hang
+ rm -f /host/run/docker/plugins/weave.sock /host/run/docker/plugins/weavemesh.sock
+ util_op create-volume-container weavedb weaveworks/weavedb:latest weavevolumes /weavedb
+ command_exists weaveutil
+ command -v weaveutil
+ weaveutil create-volume-container weavedb weaveworks/weavedb:latest weavevolumes /weavedb
+ util_op container-state weavevolumes-2.5.2
+ protect_against_docker_hang
+ rm -f /host/run/docker/plugins/weave.sock /host/run/docker/plugins/weavemesh.sock
+ util_op create-volume-container weavevolumes-2.5.2 weaveworks/weaveexec:2.5.2 weavevolumes /w /w-noop /w-nomcast
+ command_exists weaveutil
+ command -v weaveutil
+ weaveutil create-volume-container weavevolumes-2.5.2 weaveworks/weaveexec:2.5.2 weavevolumes /w /w-noop /w-nomcast
+ docker_run_options
+ docker_sock_options
+ grep -q ^unix://
+ echo
+ echo -v /var/run/docker.sock:/var/run/docker.sock
+ echo --privileged --net host -v /var/run/docker.sock:/var/run/docker.sock
+ hostname
+ router_bridge_opts
+ echo --docker-bridge docker0 --weave-bridge weave --datapath datapath
+ [ -z  ]
+ [ -z ]
+ [ -z ]
+ util_op run-container --name weave --privileged --net host -v /var/run/docker.sock:/var/run/docker.sock --restart always --pid host --volumes-from weavedb --volumes-from weavevolumes-2.5.2 -v /var/run/weave:/var/run/weave -v /var/run/weave:/var/run/weave -v /etc:/var/run/weave/etc -v /run/docker/plugins:/run/docker/plugins -v /etc:/host/etc -v /var/lib/dbus:/host/var/lib/dbus -e DOCKER_BRIDGE -e WEAVE_DEBUG -e WEAVE_HTTP_ADDR -e WEAVE_PASSWORD -e EXEC_IMAGE=weaveworks/weaveexec:2.5.2 -e CHECKPOINT_DISABLE weaveworks/weave:2.5.2 --port 6783 --nickname GKNAS --host-root=/host --docker-bridge docker0 --weave-bridge weave --datapath datapath --ipalloc-range 10.32.0.0/12 --dns-listen-address 10.0.5.1:53 --http-addr 127.0.0.1:6784 --status-addr 127.0.0.1:6782 --resolv-conf /var/run/weave/etc/resolv.conf -H unix:///var/run/weave/weave.sock --plugin --proxy
+ command_exists weaveutil
+ command -v weaveutil
+ weaveutil run-container --name weave --privileged --net host -v /var/run/docker.sock:/var/run/docker.sock --restart always --pid host --volumes-from weavedb --volumes-from weavevolumes-2.5.2 -v /var/run/weave:/var/run/weave -v /var/run/weave:/var/run/weave -v /etc:/var/run/weave/etc -v /run/docker/plugins:/run/docker/plugins -v /etc:/host/etc -v /var/lib/dbus:/host/var/lib/dbus -e DOCKER_BRIDGE -e WEAVE_DEBUG -e WEAVE_HTTP_ADDR -e WEAVE_PASSWORD -e EXEC_IMAGE=weaveworks/weaveexec:2.5.2 -e CHECKPOINT_DISABLE weaveworks/weave:2.5.2 --port 6783 --nickname GKNAS --host-root=/host --docker-bridge docker0 --weave-bridge weave --datapath datapath --ipalloc-range 10.32.0.0/12 --dns-listen-address 10.0.5.1:53 --http-addr 127.0.0.1:6784 --status-addr 127.0.0.1:6782 --resolv-conf /var/run/weave/etc/resolv.conf -H unix:///var/run/weave/weave.sock --plugin --proxy
+ WEAVE_CONTAINER=727d945ca082b8abdc85b902dd9c23b03abf84f3de366f02e570276fc081da0a
+ wait_for_status weave http_call 127.0.0.1:6784
+ container=weave
+ shift
+ true
+ http_call 127.0.0.1:6784 GET /status
+ check_running weave
+ fractional_sleep 0.1
+ [ -z  ]
+ sleep 0.1
+ return 0
+ true
+ http_call 127.0.0.1:6784 GET /status
+ check_running weave
+ fractional_sleep 0.1
+ [ -z  ]
+ sleep 0.1
+ return 0
+ true
+ http_call 127.0.0.1:6784 GET /status
+ check_running weave
+ util_op kill-container weave
+ death_msg weave
+ echo The weave container has died. Consult the container logs for further details.
+ echo The weave container has died. Consult the container logs for further details.
The weave container has died. Consult the container logs for further details.

@gkoerk
Copy link
Author

gkoerk commented Oct 3, 2019

Looks to me like this is my problem:

+ install_cni_plugin /host/opt/cni/bin
+ mkdir -p /host/opt/cni/bin
mkdir: can't create directory '/host/opt/': No such file or directory
+ return 1

Any easy way to change the install_cni_plugin location?

@bboreham
Copy link
Contributor

bboreham commented Oct 4, 2019

WEAVEEXEC_DOCKER_ARGS='-e WEAVE_CNI_PLUGIN_DIR=/host/somewhere/else' weave launch

/host is the machine's root mapped inside the Docker container that spins up the daemon, so prepend wherever you actually want with that.

I suspect weave launch should have an option not to install the CNI plugin, given we have a different launcher for Kubernetes, and non-Kubernetes CNI users may have different needs.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants