Commit Graph

22 Commits

Author SHA1 Message Date
David Scott
578c037e81 moby: rewrite diagnostics server in Go
This will make it easier to add a vsock interface as well as a regular
TCP/IP one.

As a side-effect, the server is now able to handle more than one concurrent
request!

Signed-off-by: David Scott <dave.scott@docker.com>
2016-04-15 16:09:54 +01:00
David Sheets
52feb0c4d5 transfused: use vsock transport instead of 9p
Signed-off-by: David Sheets <dsheets@docker.com>
2016-04-12 16:38:06 +01:00
Justin Cormack
09a98bf3e2 remove 9pudc, unused and not being fixed
Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2016-04-04 18:21:01 +01:00
David Scott
48a3916095 diagnostics: apply a timeout to all commands
This should avoid unnecessary blocking if (for example) the network is
down.

Signed-off-by: David Scott <dave.scott@docker.com>
2016-04-02 13:55:36 +01:00
David Scott
911a1e2bd7 diagnostics: run iptables-save
This is more complete than `iptables -t nat -L`

Signed-off-by: David Scott <dave.scott@docker.com>
2016-04-02 13:55:36 +01:00
Justin Cormack
e891d65e97 Support for 1.11.0-rc2, fix #57
Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2016-03-31 18:54:05 +01:00
Justin Cormack
5551e60fd1 check diagnostics server running in diagnostics
Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2016-03-31 14:58:13 +01:00
David Scott
a163c06ba0 diagnose: include iptables -t nat -L
The extra `-t nat` includes the masquerading stuff.

Signed-off-by: David Scott <dave.scott@docker.com>
2016-03-31 11:14:31 +01:00
David Scott
b10af0dc92 diagnostics: use netstat -tulpn which includes process names
For example:

  docker:~# netstat -tulpn
  Active Internet connections (only servers)
  Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name
  tcp        0      0 :::32768                :::*                    LISTEN      1344/docker-proxy
  tcp        0      0 :::2375                 :::*                    LISTEN      1124/docker
  tcp        0      0 :::5000                 :::*                    LISTEN      1444/docker-proxy
  tcp        0      0 :::5001                 :::*                    LISTEN      1494/docker-proxy

Signed-off-by: David Scott <dave.scott@docker.com>
2016-03-31 10:35:35 +01:00
David Scott
5a4cc0a779 diagnose: grab the tail /var/log/docker.log
Signed-off-by: David Scott <dave.scott@docker.com>
2016-03-30 15:42:48 +01:00
David Scott
673b44cf95 diagnose: put all the files inside a moby/ subdirectory
Signed-off-by: David Scott <dave@recoil.org>
2016-03-30 15:03:28 +01:00
David Scott
2461710f7d diagnose: ls -l /var, /var/lib and /var/lib/docker
Signed-off-by: David Scott <dave.scott@docker.com>
2016-03-30 14:28:00 +01:00
David Scott
4bd38ce8bf diagnose: try a ping, grab /etc/resolv.conf and route -n
Signed-off-by: David Scott <dave.scott@docker.com>
2016-03-30 14:25:58 +01:00
David Scott
d402a579f5 diagnostics-server: add more diagnostics
For networking:
- ifconfig -a
- brctl show

For storage:
- mount
- df

Signed-off-by: David Scott <dave@recoil.org>
2016-03-30 10:34:04 +01:00
David Scott
d842e1b5dc Allow diagnostics to be downloaded on port 62374
A client like `pinata diagnose` can do the equivalent of:

  nc 192.168.64.2 62374 > foo.tar

and find `foo.tar` contains

- the output of `/usr/bin/diagnostics`
- `iptables -L`
- `netstat -an`
- `ps uax`
- `docker ps`
- `dig docker.com`
- `wget http://docker.com`

This will allow us to diagnose various in-VM faults, without having
to ask the user to access the console and run commands.

Signed-off-by: David Scott <dave.scott@docker.com>
2016-03-30 10:31:55 +01:00
David Sheets
726650a126 Replace 9pudfuse with transfused 2016-02-12 14:07:43 +00:00
Justin Cormack
67fb87a8f6 typo
Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2016-01-26 17:42:45 +00:00
Justin Cormack
34150463e5 add diagnostics for fuse if used
Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2016-01-26 10:59:09 +00:00
Justin Cormack
bc3f3f005a make diagnostics run after all teh things it checks
Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2016-01-25 23:25:25 +00:00
Justin Cormack
a1283877fe add hupper process to diagnostics
Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2016-01-25 10:45:50 +00:00
Justin Cormack
7f49537054 make sure diagnostics runs after all other startup
Signed-off-by: Justin Cormack <justin.cormack@unikernel.com>
2015-12-21 11:14:30 +00:00
Justin Cormack
010382b4a3 new initrd with diagnostics
Signed-off-by: Justin Cormack <justin.cormack@unikernel.com>
2015-12-21 10:57:30 +00:00