Configurei alguns contêineres no servidor Xenial, usando um conjunto de dados do ZFS para armazenamento (não tenho certeza se isso é relevante; chegaremos a isso). Eles estavam todos funcionando bem.
Tentando reiniciar um deles, mail-server
agora obtenho
error: Error calling 'lxd forkstart mail-server /var/lib/lxd/containers /var/log/lxd/mail-server/lxc.conf': err='exit status 1'
Try 'lxc info --show-log mail-server' for more info
e olhando para o log que eu vejo
lxc 20160518112750.405 ERROR lxc_conf - conf.c:mount_rootfs:807 - No such file or directory - failed to get real path for '/var/lib/lxd/containers/mail-server/rootfs'
lxc 20160518112750.405 ERROR lxc_conf - conf.c:setup_rootfs:1221 - failed to mount rootfs
lxc 20160518112750.405 ERROR lxc_conf - conf.c:do_rootfs_setup:3611 - failed to setup rootfs for 'mail-server'
Isto não é surpreendente, desde quando eu verifico
$ sudo ls -l /var/lib/lxd/containers/mail-server.zfs
total 0
No entanto, recebo o mesmo, se eu verificar outro contêiner:
$ sudo ls -l /var/lib/lxd/containers/smb-server.zfs
total 0
mas esse contêiner está em execução no momento:
$ lxc list
+---------------+---------+--------------------------------+------+------------+-----------+
| NAME | STATE | IPV4 | IPV6 | TYPE | SNAPSHOTS |
+---------------+---------+--------------------------------+------+------------+-----------+
| smb-server | RUNNING | 192.168.2.11 (eth0) | | PERSISTENT | 2 |
+---------------+---------+--------------------------------+------+------------+-----------+
| mail-server | STOPPED | | | PERSISTENT | 0 |
+---------------+---------+--------------------------------+------+------------+-----------+
| ub-test | STOPPED | | | PERSISTENT | 0 |
+---------------+---------+--------------------------------+------+------------+-----------+
| www-server | STOPPED | | | PERSISTENT | 1 |
+---------------+---------+--------------------------------+------+------------+-----------+
$ lxc exec smb-server -- /bin/bash
root@smb-server:~# ls -l /
total 88
drwxr-xr-x 2 root root 173 May 17 10:10 bin
drwxr-xr-x 3 root root 3 Apr 20 17:58 boot
drwxr-xr-x 9 root root 480 May 17 21:40 dev
...
www-server
também estava em execução e não mostrava nada em ls
e, depois que eu parei, não consigo mais iniciar novamente, pelo mesmo motivo. O único contêiner cujo rootfs
ainda posso encontrar, ub-test
:
$ sudo ls -l /var/lib/lxd/containers/ub-test.zfs
total 22
-rw-r--r-- 1 lxd messagebus 1425 Apr 20 18:45 metadata.yaml
drwxr-xr-x 22 100000 100000 22 Apr 22 11:38 rootfs
drwxr-xr-x 2 lxd messagebus 7 Apr 20 18:45 templates
Eu posso realmente parar e começar à vontade.
Meu único palpite sobre o motivo dessa alteração (a única coisa que me lembro de ter feito isso talvez afetaria esse problema) é que excluí um outro contêiner ontem, ub-test2
. Ainda posso ver um traço disso com:
$ sudo zfs list
NAME USED AVAIL REFER MOUNTPOINT
tank 2.80T 2.44T 96K /tank
tank/lxd 4.71G 2.44T 96K none
tank/lxd/containers 3.34G 2.44T 96K none
tank/lxd/containers/smb-server 2.31G 2.44T 2.59G /var/lib/lxd/containers/smb-server.zfs
tank/lxd/containers/mail-server 279M 2.44T 746M /var/lib/lxd/containers/mail-server.zfs
tank/lxd/containers/ub-test 485M 2.44T 952M /var/lib/lxd/containers/ub-test.zfs
tank/lxd/containers/www-server 289M 2.44T 757M /var/lib/lxd/containers/www-server.zfs
tank/lxd/deleted 702M 2.44T 96K none
tank/lxd/deleted/images 702M 2.44T 96K none
tank/lxd/deleted/images/f4c4c60a6b752a381288ae72a1689a9da00f8e03b732c8d1b8a8fcd1a8890800 702M 2.44T 702M none
tank/lxd/images 704M 2.44T 96K none
tank/lxd/images/d23ee1f4fd284aeaba6adeb67cccf7b871e96178d637fec96320aab7cc9634b1 704M 2.44T 704M /var/lib/lxd/images/d23ee1f4fd284aeaba6adeb67cccf7b871e96178d637fec96320aab7cc9634b1.zfs
Você também pode ver que /var/lib/lxd/containers/mail-server.zfs
(e smb-server
, www-server
) ainda estão usando armazenamento (~ 280M), mesmo que ls
não retorne nada, o que me faz suspeitar que esse problema está de alguma forma relacionado ao ZFS montes desapareceram; Meu primeiro passo teria sido reiniciar todo o sistema e ver se isso esclarece as coisas, mas temo que o último recipiente em execução também morra, dificultando a solução do problema.
Para referência, aqui está o diretório de armazenamento dos meus contêineres:
$ sudo ls -l /var/lib/lxd/containers
total 37
lrwxrwxrwx 1 root root 41 Apr 25 09:19 smb-server -> /var/lib/lxd/containers/deluge-ub1604.zfs
drwxr-xr-x 2 root root 4096 Apr 25 09:19 smb-server.zfs
-rw-r--r-- 1 root root 19011 May 18 11:46 lxc-monitord.log
lrwxrwxrwx 1 root root 39 May 18 02:02 mail-server -> /var/lib/lxd/containers/mail-server.zfs
drwxr-xr-x 2 100000 100000 4096 May 18 02:02 mail-server.zfs
lrwxrwxrwx 1 root root 35 Apr 22 11:38 ub-test -> /var/lib/lxd/containers/ub-test.zfs
drwxr-xr-x 4 100000 100000 5 Apr 22 11:37 ub-test.zfs
lrwxrwxrwx 1 root root 38 May 17 09:31 www-server -> /var/lib/lxd/containers/smb-server.zfs
drwxr-xr-x 2 100000 100000 4096 May 17 09:31 www-server.zfs