OpenShift 内でビルドを実行しようとすると、すぐに失敗し、イベント ビューアーに「ディスク容量が不足しているため開始できません」というエラーが表示されます。
すべてが問題ないように見えるのに、なぜ OpenShift がディスクが不足していると考えているのか理解できないようです。ここでは、サーバーに関するいくつかの詳細を示します。
# docker -v
Docker バージョン 1.8.2-el7、ビルド a01dc02/1.8.2
# ドッカー情報
コンテナ: 2 画像: 36 ストレージ ドライバー: devicemapper プール名: docker--vg-docker--pool プールのブロックサイズ: 524.3 kB バッキングファイルシステム: xfs データファイル: メタデータ ファイル: 使用データ容量: 1.923 GB データ容量合計: 13.72 GB 利用可能なデータ容量: 11.8 GB 使用されるメタデータ容量: 688.1 kB メタデータ スペースの合計: 37.75 MB 利用可能なメタデータ容量: 37.06 MB Udev 同期のサポート: true 遅延削除の有効化: true ライブラリのバージョン: 1.02.107-RHEL7 (2015-12-01) 実行ドライバー: native-0.2 ロギング ドライバー: json-file カーネル バージョン: 3.10.0-229.14.1.el7.x86_64 オペレーティング システム: Red Hat Enterprise Linux Server 7.1 (マイポ) CPU: 4 合計メモリ: 7.64 GiB 名前: oshift101.dev.omit.ca ID: BGBJ:475D:NUO6:FORT:ZQQF:TZ4Z:QAX4:7AFK:VCCQ:7WYU:HNI2:5EAC 警告: bridge-nf-call-iptables は無効になっています
# df -h
使用されたファイルシステムのサイズ アベイルの使用% マウント /dev/mapper/vg00-root 1014M 770M 245M 76% / devtmpfs 3.9G 0 3.9G 0% /dev tmpfs 3.9G 0 3.9G 0% /dev/shm tmpfs 3.9G 121M 3.8G 4% /実行 tmpfs 3.9G 0 3.9G 0% /sys/fs/cgroup /dev/mapper/vg00-usr 4.0G 1.4G 2.7G 33% /usr /dev/mapper/vg00-opt 509M 26M 483M 6% /opt /dev/mapper/vg00-tmp 4.0G 33M 4.0G 1% /tmp /dev/sda1 509M 109M 400M 22% /ブート /dev/mapper/vg00-var 12G 3.0G 9.1G 25% /var hnas01:/ホーム 250G 83G 168G 33% /ホーム hnas01:/docker-registry 512G 6.1G 506G 2% /dockerregistry hnas01:/opt-省略/linux 20G 69M 20G 1% /opt/省略/nfs tmpfs 3.9G 4.0K 3.9G 1% /var/lib/origin/openshift.local.volumes/pods/19fb86f1-d9b1-11e5-bb64-005056969894/volumes/kubernetes.io~secret/builder-dockercfg-budmf-push tmpfs 3.9G 8.0K 3.9G 1% /var/lib/origin/openshift.local.volumes/pods/19fb86f1-d9b1-11e5-bb64-005056969894/volumes/kubernetes.io~secret/名前省略ソース tmpfs 3.9G 8.0K 3.9G 1% /var/lib/origin/openshift.local.volumes/pods/19fb86f1-d9b1-11e5-bb64-005056969894/volumes/kubernetes.io~secret/builder-token-b79p6
# dmsetup ステータス
vg00-tmp: 0 8388608 線形 vg00-swap0: 0 8388608 線形 vg00-swap0: 8388608 8388608 リニア docker--vg-docker--pool: 0 26804224 シンプール 117 168/9216 3668/26176 - rw no_discard_passdown queue_if_no_space vg00-usr: 0 8388608 線形 vg00-var: 0 8388608 線形 vg00-var: 8388608 16777216 線形 vg00-ルート: 0 2097152 線形 docker--vg-docker--pool_tdata: 0 26804224 線形 docker--vg-docker--pool_tmeta: 0 73728 線形 vg00-opt: 0 1048576 線形
# dmsetup テーブル
vg00-tmp: 0 8388608 線形 8:2 16779264 vg00-swap0: 0 8388608 線形 8:2 25167872 vg00-swap0: 8388608 8388608 リニア 8:2 36702208 docker--vg-docker--pool: 0 26804224 シンプール 253:6 253:7 1024 0 1 skip_block_zeroing vg00-usr: 0 8388608 線形 8:2 8390656 vg00-var: 0 8388608 線形 8:2 2048 vg00-var: 8388608 16777216 リニア 8:2 45090816 vg00-ルート: 0 2097152 線形 8:2 33556480 docker--vg-docker--pool_tdata: 0 26804224 線形 8:3 75776 docker--vg-docker--pool_tmeta: 0 73728 線形 8:3 2048 vg00-opt: 0 1048576 線形 8:2 35653632
# pvscan
PV /dev/sda2 VG vg00 lvm2 [31.50 GiB / 2.00 GiB 無料] PV /dev/sda3 VG docker-vg lvm2 [32.00 GiB / 19.14 GiB フリー] 合計: 2 [63.49 GiB] / 使用中: 2 [63.49 GiB] / VG なし: 0 [0]
# lvscan
ACTIVE '/dev/docker-vg/docker-pool' [12.78 GiB] 継承 ACTIVE '/dev/vg00/var' [12.00 GiB] 継承 ACTIVE '/dev/vg00/usr' [4.00 GiB] 継承 ACTIVE '/dev/vg00/tmp' [4.00 GiB] 継承 ACTIVE '/dev/vg00/swap0' [8.00 GiB] 継承 ACTIVE '/dev/vg00/root' [1.00 GiB] 継承 ACTIVE '/dev/vg00/opt' [512.00 MiB] 継承
# cat /etc/sysconfig/docker-storage
DOCKER_STORAGE_OPTIONS=--storage-driver devicemapper --storage-opt dm.fs=xfs --storage-opt dm.thinpooldev=/dev/mapper/docker--vg-docker--pool --storage-opt dm.use_deferred_removal=真実
# マウント
/proc タイプ proc の proc (rw、nosuid、nodev、noexec、relatime) /sys 上の sysfs タイプ sysfs (rw、nosuid、nodev、noexec、relatime) /dev タイプ devtmpfs の devtmpfs (rw、nosuid、size=3998872k、nr_inodes=999718、mode=755) /sys/kernel/security タイプの securityfs (rw、nosuid、nodev、noexec、relatime) /dev/shm 上の tmpfs タイプ tmpfs (rw、nosuid、nodev) /dev/pts の devpts type devpts (rw,nosuid,noexec,relatime,gid=5,mode=620,ptmxmode=000) /run タイプ tmpfs の tmpfs (rw、nosuid、nodev、mode=755) /sys/fs/cgroup の tmpfs タイプ tmpfs (rw、nosuid、nodev、noexec、mode=755) /sys/fs/cgroup/systemd 上の cgroup タイプ cgroup (rw,nosuid,nodev,noexec,relatime,xattr,release_agent=/usr/lib/systemd/systemd-cgroups-agent,name=systemd) /sys/fs/pstore 上の pstore タイプ pstore (rw、nosuid、nodev、noexec、relatime) /sys/fs/cgroup/cpuset の cgroup タイプ cgroup (rw、nosuid、nodev、noexec、relatime、cpuset) /sys/fs/cgroup/cpu 上の cgroup、cpuacct タイプ cgroup (rw、nosuid、nodev、noexec、relatime、cpuacct、cpu) /sys/fs/cgroup/memory タイプの cgroup (rw、nosuid、nodev、noexec、relatime、memory) /sys/fs/cgroup/devices の cgroup タイプ cgroup (rw、nosuid、nodev、noexec、relatime、devices) /sys/fs/cgroup/freezer の cgroup タイプ cgroup (rw、nosuid、nodev、noexec、relatime、freezer) /sys/fs/cgroup/net_cls 上の cgroup タイプ cgroup (rw、nosuid、nodev、noexec、relatime、net_cls) /sys/fs/cgroup/blkio 上の cgroup タイプ cgroup (rw、nosuid、nodev、noexec、relatime、blkio) /sys/fs/cgroup/perf_event タイプ cgroup の cgroup (rw、nosuid、nodev、noexec、relatime、perf_event) /sys/fs/cgroup/hugetlb 上の cgroup タイプ cgroup (rw、nosuid、nodev、noexec、relatime、hugetlb) /sys/kernel/config の configfs タイプ configfs (rw,relatime) /dev/mapper/vg00-root on / type xfs (rw,relatime,attr2,inode64,noquota) /usr 上の /dev/mapper/vg00-usr タイプ xfs (rw、relatime、attr2、inode64、noquota) systemd-1 on /proc/sys/fs/binfmt_misc type autofs (rw,relatime,fd=36,pgrp=1,timeout=300,minproto=5,maxproto=5,direct) /sys/kernel/debug の debugfs タイプ debugfs (rw,relatime) /dev/mqueue の mqueue タイプ mqueue (rw,relatime) /dev/hugepages タイプの hugetlbfs (rw、relatime) /opt タイプ xfs の /dev/mapper/vg00-opt (rw、relatime、attr2、inode64、noquota) /tmp タイプ xfs 上の /dev/mapper/vg00-tmp (rw、relatime、attr2、inode64、noquota) /boot タイプ xfs 上の /dev/sda1 (rw、relatime、attr2、inode64、noquota) /var タイプ xfs の /dev/mapper/vg00-var (rw、relatime、attr2、inode64、noquota) hnas01:/home 上の /home タイプ nfs (rw,relatime,vers=3,rsize=32768,wsize=32768,namlen=255,hard,proto=tcp,timeo=600,retrans=2,sec=sys,mountaddr= 10.139.0.11,mountvers=3,mountport=4048,mountproto=tcp,local_lock=none,addr=10.139.0.11) hnas01:/docker-registry on /dockerregistry タイプ nfs (ro,relatime,vers=3,rsize=32768,wsize=32768,namlen=255,hard,proto=tcp,timeo=600,retrans=2,sec=sys, mountaddr=10.139.0.11,mountvers=3,mountport=4048,mountproto=tcp,local_lock=none,addr=10.139.0.11) hnas01:/opt-omit/linux on /opt/omit/nfs タイプ nfs (ro,relatime,vers=3,rsize=32768,wsize=32768,namlen=255,hard,proto=tcp,timeo=600,retrans= 2,sec=sys,mountaddr=10.139.0.11,mountvers=3,mountport=4048,mountproto=tcp,local_lock=none,addr=10.139.0.11) /proc/sys/fs/binfmt_misc の binfmt_misc type binfmt_misc (rw,relatime) /var/lib/origin/openshift.local.volumes/pods/19fb86f1-d9b1-11e5-bb64-005056969894/volumes/kubernetes.io~secret/builder-dockercfg-budmf-push タイプの tmpfs (rw、relatime) の tmpfs /var/lib/origin/openshift.local.volumes/pods/19fb86f1-d9b1-11e5-bb64-005056969894/volumes/kubernetes.io~secret/johnadacssh6 上の tmpfs - ソース タイプ tmpfs (rw、relatime) /var/lib/origin/openshift.local.volumes/pods/19fb86f1-d9b1-11e5-bb64-005056969894/volumes/kubernetes.io~secret/builder-token-b79p6 の tmpfs タイプ tmpfs (rw,relatime)
次の追加の詳細を追加するために編集されました。
これにはまだ問題があります。問題が存在するのは実際には Kubernetes にあるように見えますが、よくわかりません。
十分なディスク容量があるかどうかを判断するために Kubernetes が使用するものに基づいて、次の GO プログラムを実行しました。
package main
import (
"fmt"
"os"
"syscall"
)
func main() {
pathArg := os.Args[1]
stat := syscall.Statfs_t{}
err := syscall.Statfs(pathArg, &stat)
if err != nil {
fmt.Println(err.Error())
return
}
//bsize := stat.Bsize
//fmt.Println(stat)
s := fmt.Sprintf(`
Statfs_t {
Type %d
Bsize %d
Blocks %d
Bfree %d
Bavail %d
Files %d
Ffree %d
Frsize %d
Flags %d
}
`, stat.Type,
stat.Bsize,
stat.Blocks,
stat.Bfree,
stat.Bavail,
stat.Files,
stat.Ffree,
stat.Frsize,
stat.Flags)
fmt.Println(s)
}
次に、次の方法で実行しました
for x in $(sudo df -h | grep -v Filesys| awk '{print $6}'); do echo "Running on $x"; sudo ./fsinfo $x; done;
そして、次の結果を受け取りました。これは、ディスク容量の問題も示していないようです。
これをバグレポートとして Kubernetes に提出するべきかどうか迷っています。
/ で実行中
Statfs_t {
Type 1481003842
Bsize 4096
Blocks 259584
Bfree 62600
Bavail 62600
Files 1048576
Ffree 878047
Frsize 4096
Flags 4128
}
/dev で実行中
Statfs_t {
Type 16914836
Bsize 4096
Blocks 999718
Bfree 999718
Bavail 999718
Files 999718
Ffree 999333
Frsize 4096
Flags 34
}
/dev/shm で実行
Statfs_t {
Type 16914836
Bsize 4096
Blocks 1001444
Bfree 1001444
Bavail 1001444
Files 1001444
Ffree 1001443
Frsize 4096
Flags 38
}
/run で実行中
Statfs_t {
Type 16914836
Bsize 4096
Blocks 1001444
Bfree 923475
Bavail 923475
Files 1001444
Ffree 1000914
Frsize 4096
Flags 38
}
/sys/fs/cgroup で実行
Statfs_t {
Type 16914836
Bsize 4096
Blocks 1001444
Bfree 1001444
Bavail 1001444
Files 1001444
Ffree 1001431
Frsize 4096
Flags 46
}
/usr で実行中
Statfs_t {
Type 1481003842
Bsize 4096
Blocks 1046016
Bfree 703392
Bavail 703392
Files 4194304
Ffree 4155732
Frsize 4096
Flags 4128
}
/opt で実行中
Statfs_t {
Type 1481003842
Bsize 4096
Blocks 130219
Bfree 123593
Bavail 123593
Files 524288
Ffree 524263
Frsize 4096
Flags 4128
}
/tmp で実行中
Statfs_t {
Type 1481003842
Bsize 4096
Blocks 1046016
Bfree 1037760
Bavail 1037760
Files 4194304
Ffree 4194273
Frsize 4096
Flags 4128
}
/boot で実行
Statfs_t {
Type 1481003842
Bsize 4096
Blocks 130219
Bfree 102353
Bavail 102353
Files 524288
Ffree 523955
Frsize 4096
Flags 4128
}
/var で実行中
Statfs_t {
Type 1481003842
Bsize 4096
Blocks 3143168
Bfree 2416721
Bavail 2416721
Files 12582912
Ffree 12579830
Frsize 4096
Flags 4128
}
/home で実行中
Statfs_t {
Type 26985
Bsize 32768
Blocks 8192000
Bfree 5523429
Bavail 5523429
Files 2682388480
Ffree 1534765937
Frsize 32768
Flags 4128
}
/dockerregistry で実行
Statfs_t {
Type 26985
Bsize 32768
Blocks 16777216
Bfree 16578608
Bavail 16578608
Files 1072955392
Ffree 659992996
Frsize 32768
Flags 4129
}
/opt/cbc/nfs で実行
Statfs_t {
Type 26985
Bsize 32768
Blocks 655360
Bfree 653153
Bavail 653153
Files 1072955392
Ffree 659992996
Frsize 32768
Flags 4129
}
/var/lib/origin/openshift.local.volumes/pods/19fb86f1-d9b1-11e5-bb64-005056969894/volumes/kubernetes.io~secret/builder-dockercfg-bsamf-push で実行
Statfs_t {
Type 16914836
Bsize 4096
Blocks 1001444
Bfree 1001443
Bavail 1001443
Files 1001444
Ffree 1001442
Frsize 4096
Flags 4128
}
/var/lib/origin/openshift.local.volumes/pods/19fb86f1-d9b1-11e5-bb64-005056969894/volumes/kubernetes.io~secret/omited6-source で実行
Statfs_t {
Type 16914836
Bsize 4096
Blocks 1001444
Bfree 1001442
Bavail 1001442
Files 1001444
Ffree 1001441
Frsize 4096
Flags 4128
}
/var/lib/origin/openshift.local.volumes/pods/19fb86f1-d9b1-11e5-bb64-005056969894/volumes/kubernetes.io~secret/builder-token-b7asp6 で実行
Statfs_t {
Type 16914836
Bsize 4096
Blocks 1001444
Bfree 1001442
Bavail 1001442
Files 1001444
Ffree 1001441
Frsize 4096
Flags 4128
}
# レベル
# lvs -o +lv_major,lv_minor,lv_kernel_major,lv_kernel_minor,lv_size,seg_count,snap_percent,segtype,stripes,stripesize,chunksize,seg_start,seg_size
LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert Maj Min KMaj KMin LSize #Seg Snap% Type #Str Stripe Chunk Start SSize
docker-pool docker-vg twi-a-t--- 12.78g 13.62 1.71 -1 -1 253 8 12.78g 1 thin-pool 1 0 512.00k 0 12.78g
opt vg00 -wi-ao---- 512.00m -1 -1 253 5 512.00m 1 linear 1 0 0 0 512.00m
root vg00 -wi-ao---- 1.00g -1 -1 253 1 1.00g 1 linear 1 0 0 0 1.00g
swap0 vg00 -wi-ao---- 8.00g -1 -1 253 2 8.00g 2 linear 1 0 0 0 4.00g
swap0 vg00 -wi-ao---- 8.00g -1 -1 253 2 8.00g 2 linear 1 0 0 4.00g 4.00g
tmp vg00 -wi-ao---- 4.00g -1 -1 253 4 4.00g 1 linear 1 0 0 0 4.00g
usr vg00 -wi-ao---- 4.00g -1 -1 253 0 4.00g 1 linear 1 0 0 0 4.00g
var vg00 -wi-ao---- 12.00g -1 -1 253 3 12.00g 2 linear 1 0 0 0 4.00g
var vg00 -wi-ao---- 12.00g -1 -1 253 3 12.00g 2 linear 1 0 0 4.00g 8.00g