scaleway / docker-machine-driver-scaleway

:whale: Scaleway driver for Docker Machine
MIT License
249 stars 34 forks source link

problem with creating new docker-machine #63

Open ctrlok opened 7 years ago

ctrlok commented 7 years ago

Hi. I have problem with creating new VM by scaleway docker-machine driver.

There is part of debug output:

(bench-2) DBG |   IMAGEID           FROM                                NAME                      ZONE                ARCH
(bench-2) DBG | - cd65a9a3          bootscript:x86-64-4-9-20-docker-1   x86_64 4.9.20 docker #1                       x86_64
(bench-2) DBG | - b5c5261e          bootscript:x86-64-4-10-8-docker-1   x86_64 4.10.8 docker #1                       x86_64
Error creating machine: Error in driver during machine creation: Too many candidates for docker (2)
notifying bugsnag: [Error creating machine: Error in driver during machine creation: Too many candidates for docker (2)]

There is output from "[GET]: https://cp-par1.scaleway.com/bootscripts":

Big json

# some text ```json { "bootscripts": [ { "kernel": "kernel/armv7l-4.10.8-apparmor-1", "initrd": "initrd/uInitrd-Linux-armv7l-v3.12.3", "default": false, "bootcmdargs": "LINUX_COMMON ip=:::::eth0: boot=local", "architecture": "arm", "title": "armv7l 4.10.8 apparmor #1", "dtb": "dtb/c1-armv7l-4.10.8-apparmor-1", "organization": "11111111-1111-4111-8111-111111111111", "id": "70496d70-3d88-4363-b7ee-517ece9588d3", "public": true }, { "kernel": "kernel/armv7l-4.10.8-debug-1", "initrd": "initrd/uInitrd-Linux-armv7l-v3.12.3", "default": false, "bootcmdargs": "LINUX_COMMON ip=:::::eth0: boot=local", "architecture": "arm", "title": "armv7l 4.10.8 debug #1", "dtb": "dtb/c1-armv7l-4.10.8-debug-1", "organization": "11111111-1111-4111-8111-111111111111", "id": "e54d2129-628f-425d-8994-acfe16d9651e", "public": true }, { "kernel": "kernel/armv7l-4.10.8-docker-1", "initrd": "initrd/uInitrd-Linux-armv7l-v3.12.3", "default": false, "bootcmdargs": "LINUX_COMMON ip=:::::eth0: boot=local", "architecture": "arm", "title": "armv7l 4.10.8 docker #1", "dtb": "dtb/c1-armv7l-4.10.8-docker-1", "organization": "11111111-1111-4111-8111-111111111111", "id": "13c828f3-6138-43fb-b8c6-5e54838c7d9d", "public": true }, { "kernel": "kernel/armv7l-4.10.8-fedora-1", "initrd": "initrd/uInitrd-Linux-armv7l-v3.12.3", "default": false, "bootcmdargs": "LINUX_COMMON ip=:::::eth0: boot=local", "architecture": "arm", "title": "armv7l 4.10.8 fedora #1", "dtb": "dtb/c1-armv7l-4.10.8-fedora-1", "organization": "11111111-1111-4111-8111-111111111111", "id": "f3518731-3889-4e2a-93f6-a6d387e0f028", "public": true }, { "kernel": "kernel/armv7l-4.10.8-std-1", "initrd": "initrd/uInitrd-Linux-armv7l-v3.12.3", "default": false, "bootcmdargs": "LINUX_COMMON ip=:::::eth0: boot=local", "architecture": "arm", "title": "armv7l 4.10.8 std #1 (stable)", "dtb": "dtb/c1-armv7l-4.10.8-std-1", "organization": "11111111-1111-4111-8111-111111111111", "id": "cb7dbd4c-e0e6-49c1-b765-854a75c8ff10", "public": true }, { "kernel": "kernel/armv7l-4.4.59-std-1", "initrd": "initrd/uInitrd-Linux-armv7l-v3.12.3", "default": false, "bootcmdargs": "LINUX_COMMON ip=:::::eth0: boot=local", "architecture": "arm", "title": "armv7l 4.4.59 std #1 (longterm)", "dtb": "dtb/c1-armv7l-4.4.59-std-1", "organization": "11111111-1111-4111-8111-111111111111", "id": "131e6aac-7446-4c61-bec7-3261b51a2b48", "public": true }, { "kernel": "kernel/armv7l-4.9.20-docker-1", "initrd": "initrd/uInitrd-Linux-armv7l-v3.12.3", "default": false, "bootcmdargs": "LINUX_COMMON ip=:::::eth0: boot=local", "architecture": "arm", "title": "armv7l 4.9.20 docker #1", "dtb": "dtb/c1-armv7l-4.9.20-docker-1", "organization": "11111111-1111-4111-8111-111111111111", "id": "5647fa21-73cd-4818-b603-6b2f60b27054", "public": true }, { "kernel": "kernel/armv7l-4.9.20-std-1", "initrd": "initrd/uInitrd-Linux-armv7l-v3.12.3", "default": true, "bootcmdargs": "LINUX_COMMON ip=:::::eth0: boot=local", "architecture": "arm", "title": "armv7l 4.9.20 std #1 (longterm)", "dtb": "dtb/c1-armv7l-4.9.20-std-1", "organization": "11111111-1111-4111-8111-111111111111", "id": "14c74c85-81bd-406e-bd11-dff0444069ce", "public": true }, { "kernel": "kernel/pimouss-uImage-3.2.34-30-std", "initrd": "initrd/uInitrd-Linux-armv7l-v3.12.3", "default": false, "bootcmdargs": "LINUX_COMMON ip=:::::eth0: boot=rescue rescue_image=http://169.254.42.24/image-archives/armv7l-rescue-latest.tar", "architecture": "arm", "title": "armv7l Rescue", "dtb": "", "organization": "11111111-1111-4111-8111-111111111111", "id": "a5485ac0-7611-44fb-8704-b409fcf71e00", "public": true }, { "kernel": "http://169.254.42.24/kernel/x86_64-4.10.8-apparmor-1/vmlinuz-4.10.8-apparmor-1", "initrd": "http://169.254.42.24/initrd/initrd-Linux-x86_64-v3.12.3.gz", "default": false, "bootcmdargs": "LINUX_COMMON ip=:::::eth0: boot=local", "architecture": "x86_64", "title": "x86_64 4.10.8 apparmor #1", "dtb": "", "organization": "11111111-1111-4111-8111-111111111111", "id": "434bb38e-714f-4e01-a1cf-813b8897b3af", "public": true }, { "kernel": "http://169.254.42.24/kernel/x86_64-4.10.8-debug-1/vmlinuz-4.10.8-debug-1", "initrd": "http://169.254.42.24/initrd/initrd-Linux-x86_64-v3.12.3.gz", "default": false, "bootcmdargs": "LINUX_COMMON ip=:::::eth0: boot=local", "architecture": "x86_64", "title": "x86_64 4.10.8 debug #1", "dtb": "", "organization": "11111111-1111-4111-8111-111111111111", "id": "4ef6d587-7a24-4c87-8186-9acc519f1c69", "public": true }, { "kernel": "http://169.254.42.24/kernel/x86_64-4.10.8-docker-1/vmlinuz-4.10.8-docker-1", "initrd": "http://169.254.42.24/initrd/initrd-Linux-x86_64-v3.12.3.gz", "default": false, "bootcmdargs": "LINUX_COMMON ip=:::::eth0: boot=local", "architecture": "x86_64", "title": "x86_64 4.10.8 docker #1", "dtb": "", "organization": "11111111-1111-4111-8111-111111111111", "id": "b5c5261e-176d-43bb-bbae-7c9f211cfce3", "public": true }, { "kernel": "http://169.254.42.24/kernel/x86_64-4.10.8-fedora-1/vmlinuz-4.10.8-fedora-1", "initrd": "http://169.254.42.24/initrd/initrd-Linux-x86_64-v3.12.3.gz", "default": false, "bootcmdargs": "LINUX_COMMON ip=:::::eth0: boot=local", "architecture": "x86_64", "title": "x86_64 4.10.8 fedora #1", "dtb": "", "organization": "11111111-1111-4111-8111-111111111111", "id": "f0c809a3-15a5-4fa5-92a7-6e81defe219b", "public": true }, { "kernel": "http://169.254.42.24/kernel/x86_64-4.10.8-rancher-1/vmlinuz-4.10.8-rancher-1", "initrd": "http://169.254.42.24/initrd/initrd-Linux-x86_64-v3.12.3.gz", "default": false, "bootcmdargs": "LINUX_COMMON ip=:::::eth0: boot=local", "architecture": "x86_64", "title": "x86_64 4.10.8 rancher #1", "dtb": "", "organization": "11111111-1111-4111-8111-111111111111", "id": "311d9f4b-52c4-424b-a7a0-e6aa6819478c", "public": true }, { "kernel": "http://169.254.42.24/kernel/x86_64-4.10.8-std-1/vmlinuz-4.10.8-std-1", "initrd": "http://169.254.42.24/initrd/initrd-Linux-x86_64-v3.12.3.gz", "default": false, "bootcmdargs": "LINUX_COMMON ip=:::::eth0: boot=local", "architecture": "x86_64", "title": "x86_64 4.10.8 std #1 (stable)", "dtb": "", "organization": "11111111-1111-4111-8111-111111111111", "id": "8fd15f37-c176-49a4-9e1d-10eb912942ea", "public": true }, { "kernel": "http://169.254.42.24/kernel/x86_64-4.4.59-std-1/vmlinuz-4.4.59-std-1", "initrd": "http://169.254.42.24/initrd/initrd-Linux-x86_64-v3.12.3.gz", "default": false, "bootcmdargs": "LINUX_COMMON ip=:::::eth0: boot=local", "architecture": "x86_64", "title": "x86_64 4.4.59 std #1 (longterm)", "dtb": "", "organization": "11111111-1111-4111-8111-111111111111", "id": "7f25108d-cafc-4763-a129-084e1affd36d", "public": true }, { "kernel": "http://169.254.42.24/kernel/x86_64-4.9.20-docker-1/vmlinuz-4.9.20-docker-1", "initrd": "http://169.254.42.24/initrd/initrd-Linux-x86_64-v3.12.3.gz", "default": false, "bootcmdargs": "LINUX_COMMON ip=:::::eth0: boot=local", "architecture": "x86_64", "title": "x86_64 4.9.20 docker #1", "dtb": "", "organization": "11111111-1111-4111-8111-111111111111", "id": "cd65a9a3-b9db-4b3f-85a7-9aaa9e29d5da", "public": true }, { "kernel": "http://169.254.42.24/kernel/x86_64-4.9.20-std-1/vmlinuz-4.9.20-std-1", "initrd": "http://169.254.42.24/initrd/initrd-Linux-x86_64-v3.12.3.gz", "default": true, "bootcmdargs": "LINUX_COMMON ip=:::::eth0: boot=local", "architecture": "x86_64", "title": "x86_64 4.9.20 std #1 (longterm)", "dtb": "", "organization": "11111111-1111-4111-8111-111111111111", "id": "5a1091c5-6e7b-45d3-8afc-c1246b0a9913", "public": true }, { "kernel": "http://169.254.42.24/kernel/x86_64-4.4.4-docker-3/vmlinuz-4.4.4-docker-3", "initrd": "http://169.254.42.24/initrd/initrd-Linux-x86_64-v3.12.3.gz", "default": false, "bootcmdargs": "LINUX_COMMON ip=:::::eth0: boot=rescue rescue_image=http://169.254.42.24/image-archives/x86_64-rescue-latest.tar", "architecture": "x86_64", "title": "x86_64 rescue", "dtb": "", "organization": "11111111-1111-4111-8111-111111111111", "id": "bf4cfb66-a2f8-4f77-9b1c-665cdfdf208e", "public": true } ] } ```

I was tried to fix it by setting defaultBootscript variable to 8fd15f37-c176-49a4-9e1d-10eb912942ea (I found that ID here). But it fail with start docker on instance. There is output from journalctl:

-- Unit docker.service has begun starting up.
Apr 09 09:42:51 bench-2 docker[11354]: Command "daemon" is deprecated, and will be removed in Docker 17.12. Please run `dockerd` directly.
Apr 09 09:42:51 bench-2 docker[11354]: time="2017-04-09T09:42:51.090937134Z" level=info msg="libcontainerd: new containerd process, pid: 11366"
Apr 09 09:42:52 bench-2 docker[11354]: Error starting daemon: error initializing graphdriver: driver not supported
Apr 09 09:42:52 bench-2 systemd[1]: docker.service: Main process exited, code=exited, status=1/FAILURE
Apr 09 09:42:52 bench-2 systemd[1]: Failed to start Docker Application Container Engine.

So, I try older bootscript cd65a9a3-b9db-4b3f-85a7-9aaa9e29d5da and it was fixed my problem, but I don't think it is a permanent solution.

ctrlok commented 7 years ago

Actually, the issue was not fixed. I still see that problem. And my PR was about removing IP, not creating instances.

(bench-3) DBG |   IMAGEID           FROM                                NAME                      ZONE                ARCH
(bench-3) DBG | - b5c5261e          bootscript:x86-64-4-10-8-docker-1   x86_64 4.10.8 docker #1                       x86_64
(bench-3) DBG | - cd65a9a3          bootscript:x86-64-4-9-20-docker-1   x86_64 4.9.20 docker #1                       x86_64
Error creating machine: Error in driver during machine creation: Too many candidates for docker (2)
notifying bugsnag: [Error creating machine: Error in driver during machine creation: Too many candidates for docker (2)]
QuentinPerez commented 7 years ago

Github closes this issue, @bchatelard can you check the public status of bootscripts ?

bchatelard commented 7 years ago

@QuentinPerez two docker bootscripts were available one 4.9.20 and one 4.10.8 @tbillon just removed the longterm (4.9.20).

Having two docker bootscripts available is valid for me, i believe the issue here is how the server is created. The lookup of the bootscript is searching a booscript where the name is like .*docker.*. https://github.com/scaleway/docker-machine-driver-scaleway/blob/master/driver/scaleway.go#L28

optimum-web commented 6 years ago

Probably too late to answer but I had same issue as @QuentinPerez had. Using image ID fixes the issue, I believe it's linked with Scaleway service specifics.