containers / docker-lvm-plugin

Docker volume plugin for LVM volumes
GNU Lesser General Public License v3.0
155 stars 64 forks source link

docker-lvm-plugin doesnt start/gives some errors like below #48

Closed SantoshRaoBlr closed 6 years ago

SantoshRaoBlr commented 6 years ago

Trying to load docker-lvm-plugin on RHEL, have done a go install using following steps mkdir -p $HOME/go/src/github.com cd $HOME/go/src/github.com export GOPATH=$HOME/go clone https://github.com/shishir-a412ed/docker-lvm-plugin.git make make install

Receive the following error while trying to create a lvm docker volume create -d lvm --name foobar --opt size=0.2G Error response from daemon: create foobar: Error looking up volume plugin lvm: legacy plugin: plugin not found

cat /etc/redhat-release Red Hat Enterprise Linux Server release 7.4 (Maipo)

docker version Client: Version: 17.05.0-ce API version: 1.29 Go version: go1.7.5 Git commit: 89658be Built: Thu May 4 22:06:25 2017 OS/Arch: linux/amd64

Server: Version: 17.05.0-ce API version: 1.29 (minimum version 1.12) Go version: go1.7.5 Git commit: 89658be Built: Thu May 4 22:06:25 2017 OS/Arch: linux/amd64 Experimental: false

go version go version go1.8.3 linux/amd64

systemctl start docker-lvm-plugin

systemctl is-active docker-lvm-plugin failed

cat /etc/docker/docker-lvm-plugin VOLUME_GROUP=docker

vgdisplay --- Volume group --- VG Name docker

lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT xvda 202:0 0 100G 0 disk |-xvda1 202:1 0 256M 0 part /boot -xvda2 202:2 0 99.8G 0 part / xvdb 202:16 0 2G 0 disk -xvdb1 202:17 0 2G 0 part [SWAP] xvdc 202:32 0 250G 0 disk |-docker-internal_tmeta 253:0 0 52M 0 lvm
| -docker-internal 253:2 0 50G 0 lvm |-docker-internal_tdata 253:1 0 50G 0 lvm |-docker-internal 253:2 0 50G 0 lvm
|-docker-volumes_tmeta 253:3 0 100M 0 lvm
| -docker-volumes 253:5 0 100G 0 lvm -docker-volumes_tdata 253:4 0 100G 0 lvm
`-docker-volumes 253:5 0 100G 0 lvm

Please help

SantoshRaoBlr commented 6 years ago

Apr 20 07:20:32 apilibgdpr.sdad.sl.dst.ibm.com systemd[1]: Started Docker Volume Driver for lvm volumes. Apr 20 07:20:32 apilibgdpr.sdad.sl.dst.ibm.com systemd[1]: Starting Docker Volume Driver for lvm volumes... Apr 20 07:20:32 apilibgdpr.sdad.sl.dst.ibm.com systemd[26899]: Failed at step EXEC spawning /usr/libexec/docker/docker-lvm-plugin: Not a directory Apr 20 07:20:32 apilibgdpr.sdad.sl.dst.ibm.com polkitd[586]: Unregistered Authentication Agent for unix-process:26893:1855550 (system bus name :1.54, object path /org/freedesktop Apr 20 07:20:32 apilibgdpr.sdad.sl.dst.ibm.com systemd[1]: docker-lvm-plugin.service: main process exited, code=exited, status=203/EXEC Apr 20 07:20:32 apilibgdpr.sdad.sl.dst.ibm.com systemd[1]: Unit docker-lvm-plugin.service entered failed state. Apr 20 07:20:32 apilibgdpr.sdad.sl.dst.ibm.com systemd[1]: docker-lvm-plugin.service failed.

SantoshRaoBlr commented 6 years ago

I see the above log lines using journalctl

SantoshRaoBlr commented 6 years ago

systemctl status docker-lvm-plugin docker-lvm-plugin.service - Docker Volume Driver for lvm volumes Loaded: loaded (/usr/lib/systemd/system/docker-lvm-plugin.service; enabled; vendor preset: disabled) Active: failed (Result: exit-code) since Fri 2018-04-20 07:20:32 CDT; 18min ago Docs: man:docker-lvm-plugin(8) Process: 26899 ExecStart=/usr/libexec/docker/docker-lvm-plugin (code=exited, status=203/EXEC) Main PID: 26899 (code=exited, status=203/EXEC)

Apr 20 07:20:32 apilibgdpr.sdad.sl.dst.ibm.com systemd[1]: Started Docker Volume Driver for lvm volumes. Apr 20 07:20:32 apilibgdpr.sdad.sl.dst.ibm.com systemd[1]: Starting Docker Volume Driver for lvm volumes... Apr 20 07:20:32 apilibgdpr.sdad.sl.dst.ibm.com systemd[1]: docker-lvm-plugin.service: main process exited, code=exited, status=203/EXEC Apr 20 07:20:32 apilibgdpr.sdad.sl.dst.ibm.com systemd[1]: Unit docker-lvm-plugin.service entered failed state. Apr 20 07:20:32 apilibgdpr.sdad.sl.dst.ibm.com systemd[1]: docker-lvm-plugin.service failed.

SantoshRaoBlr commented 6 years ago

Issue got solved. The make/install was executing this step "install -m 755 docker-lvm-plugin /usr/libexec/docker" . However didnt have a docker directory in "/usr/libexec/" path, so the file got copied under the name docker. Moved the file into a folder docker instead and issue is resolved.

shishir-a412ed commented 6 years ago

@SantoshRaoBlr I tried this on the upstream/master branch, however I am not able to reproduce this issue. I deleted my existing docker directory under /usr/libexec and when I did a sudo make install it creates the docker directory under /usr/libexec and deploys the docker-lvm-plugin binary successfully.

[root@localhost docker-lvm-plugin]# cd /usr/libexec/
[root@localhost libexec]# ls docker -lt
ls: cannot access 'docker': No such file or directory

[smahajan@localhost docker-lvm-plugin]$ sudo make install
install -D -m 644 etc/docker/docker-lvm-plugin /etc/docker/docker-lvm-plugin
install -D -m 644 systemd/docker-lvm-plugin.service /usr/lib/systemd/system/docker-lvm-plugin.service
install -D -m 644 systemd/docker-lvm-plugin.socket /usr/lib/systemd/system/docker-lvm-plugin.socket
install -D -m 755 docker-lvm-plugin /usr/libexec/docker/docker-lvm-plugin
install -D -m 644 docker-lvm-plugin.8 /usr/share/man/man8/docker-lvm-plugin.8

[root@localhost docker-lvm-plugin]# ls /usr/libexec -lt
total 12484
drwxr-xr-x. 2 root root            31 Apr 23 21:08 docker

[root@localhost docker-lvm-plugin]# ls /usr/libexec/docker -lt
total 6576
-rwxr-xr-x. 1 root root 6731503 Apr 23 21:08 docker-lvm-plugin

I am able to start the docker-lvm-plugin and run the docker volume commands. I see in the comment you mentioned install -m 755 docker-lvm-plugin /usr/libexec/docker however in the Makefile we are using install -D -m 755 $(BINARY) $(BINDIR)/$(BINARY) with -D .

Are you building docker-lvm-plugin from latest master ?

shishir-a412ed commented 6 years ago

@SantoshRaoBlr I see what's going on 😀 In your first comment. https://github.com/projectatomic/docker-lvm-plugin/issues/48#issue-316228889

You are doing a git clone of https://github.com/shishir-a412ed/docker-lvm-plugin Please see under README.md of that project:

This project has been moved under projectatomic/docker-lvm-plugin (https://github.com/projectatomic/docker-lvm-plugin)

You need to clone https://github.com/projectatomic/docker-lvm-plugin

SantoshRaoBlr commented 6 years ago

Thank you very much for the quick response, and helping me sort it out. Will take care of the same.