おせっかいなCoreos


Coreosを使っていたとはいえ、Dockerしか触っていなかったので、Coreosの事はsystemdになったということ以外は知らなかった。

どうやら自動的にアップデートなんかをしているらしく、リブートした時には新しい方で立ち上がってくるらしい。そのことで(たぶん)えらいことになってしまった。

 

ことの発端だが、最近はFlentdとZabbixばっかり触っていたのでDockerをひさしぶりに触ろうとしたら、なんかおかしいなぁと・・・。

どうやらdockerが起動していないようだ。

リブートしたので、ローカルアドレスを割り当てる(固定する方法を知らないw)

 $ ip addr add 192.168.0.4/24 dev ens4

Dockerを起動しようとしてもできない。

 $ sudo docker -d
2014/08/13 15:12:15 docker daemon: 1.1.2 d84a070; execdriver: native; graphdriver:
[fa7a14d6] +job initserver()
[fa7a14d6.initserver()] Creating server
[fa7a14d6] +job serveapi(unix:///var/run/docker.sock)
2014/08/13 15:12:15 Listening for HTTP on unix (/var/run/docker.sock)
[fa7a14d6] +job init_networkdriver()
[fa7a14d6.init_networkdriver()] creating new bridge for docker0
[fa7a14d6.init_networkdriver()] getting iface addr
[fa7a14d6] -job init_networkdriver() = OK (0)
open /var/lib/docker/init/dockerinit-1.1.2: no space left on device
[fa7a14d6] -job initserver() = ERR (1)
2014/08/13 15:12:16 open /var/lib/docker/init/dockerinit-1.1.2: no space left on device

おそらくは冒頭で書いたCoreosのアップデートのおかげで、Dockerが1.1.2になっているようなんだが、そもそも1.1.2なんてデータはないのだ。

 $ sudo ls -l /var/lib/docker/init
total 17608
-rwx------ 1 root root 9003724 Jul 15 23:19 dockerinit-1.0.1
-rwx------ 1 root root 9023144 Jul 24 22:13 dockerinit-1.1.1

このように、ないのだ。

見つけたのがこのサイト、ロールバック!

Qiita メモ:CoreOS の自動アップデートを手動でロールバックする

参考サイトを参考にちょっと調べてみるよ、と。

使用中のパーティションは?

 $ findmnt -n --raw --output=source --target=/usr
/dev/vda4

ちょこっと話は逸れるけど、systemdのコマンドが全然分かってないので、ある程度浸透してきたらしっかりやらないとね。

 

で、Coreosの起動ですが、プライオリティーが高いものが優先されるらしく、調べてみたところプライオリティーなるものが存在するファイルはこの2個だった。

core@localhost ~ $ sudo cgpt show -v /dev/vda3
       start        size    part  contents
      264192     2097152       3  Label: "USR-A"
                                  Type: Alias for coreos-rootfs
                                  UUID: 7130C94A-213A-4E5A-8E26-6CCE9662F132
                                  Attr: priority=1 tries=0 successful=1
core@localhost ~ $ sudo cgpt show -v /dev/vda4
       start        size    part  contents
     2492416     2097152       4  Label: "USR-B"
                                  Type: Alias for coreos-rootfs
                                  UUID: E03DD35C-7C2D-4A47-B3FE-27F15780A57C
                                  Attr: priority=2 tries=0 successful=1

いまはvds4で動いているらしく、おそらくこいつがdocker-1.1.2にしちゃったんだろう。
(と、思っていたのだが)
ここで参考サイトのようにロールバックすれば、dev3で起動すればもとにもどるはず。

と、安易に考えて進めてしまう。

ともかく、おせっかいなやつめ!

core@localhost ~ $ sudo cgpt prioritize /dev/vda3
core@localhost ~ $ sudo cgpt show -v /dev/vda3
       start        size    part  contents
      264192     2097152       3  Label: "USR-A"
                                  Type: Alias for coreos-rootfs
                                  UUID: 7130C94A-213A-4E5A-8E26-6CCE9662F132
                                  Attr: priority=2 tries=0 successful=1

優先度がvda3のほうが高くなりました。

$ cat /etc/os-release
NAME=CoreOS
ID=coreos
VERSION=402.2.0
VERSION_ID=402.2.0
BUILD_ID=
PRETTY_NAME="CoreOS 402.2.0"
ANSI_COLOR="1;32"
HOME_URL="https://coreos.com/"
BUG_REPORT_URL="https://github.com/coreos/bugs/issues"

進化がはやすぎってな。
とにかく、これでリブートすれば、解決する~・・・はずだったんだが。

$ docker version
Client version: 1.1.2
Client API version: 1.13
Go version (client): go1.2
Git commit (client): d84a070
2014/08/13 15:31:57 Cannot connect to the Docker daemon. Is 'docker -d' running on this host?

変わらず・・・。

inodeもあるし、容量も空いているんだけど、どうにもできないようだ。

と思ったら、やっぱり容量が足りないだけかもしれない。(見間違っていたっぽいorz)
じゃあとりあえず増やしてみようかなぁとファイルシステムを調べてみると。

$ df -T
/dev/vda9      btrfs     18480108 12349252   5611036  69% /

btrfs・・・なんだそりゃ。

 

続く

・・かもしれない。

 

Similar Posts:


Leave a Reply

Your email address will not be published. Required fields are marked *