ฉันไม่สามารถทราบได้ว่า AWS ตั้งค่า 'สระว่ายน้ำแบบบาง' ของ Docker บน ElasticBeanstalk อย่างไรและมันจะถูกเติมเต็มอย่างไร พูลที่บางของนักเทียบท่าของฉันกำลังเติมเต็มอย่างใดและทำให้แอปของฉันพังเมื่อพวกเขาพยายามเขียนลงดิสก์
นี่คือจากภายในคอนเทนเนอร์:
>df -h
> /dev/xvda1 25G 1.4G 24G 6%
ในความเป็นจริงแล้ว EBS นั้นมีดิสก์ขนาด 25GB ที่จัดสรรให้กับมัน 1.6 gb คือdu -sh /
ผลตอบแทน
ข้างนอกใน EC2 มันเริ่มต้นอย่างไร้เดียงสาเพียงพอ ... (ผ่านlvs
)
LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert
docker-pool docker twi-aot--- 11.86g 37.50 14.65
อย่างไรก็ตามระบบไฟล์จะเมานต์แบบอ่านอย่างเดียวอีกไม่นาน ผ่าน dmesg:
[2077620.433382] Buffer I/O error on device dm-4, logical block 2501385
[2077620.437372] EXT4-fs warning (device dm-4): ext4_end_bio:329: I/O error -28 writing to inode 4988708 (offset 0 size 8388608 starting block 2501632)
[2077620.444394] EXT4-fs warning (device dm-4): ext4_end_bio:329: I/O error [2077620.473581] EXT4-fs warning (device dm-4): ext4_end_bio:329: I/O error -28 writing to inode 4988708 (offset 8388608 size 5840896 starting block 2502912)
[2077623.814437] Aborting journal on device dm-4-8.
[2077649.052965] EXT4-fs error (device dm-4): ext4_journal_check_start:56: Detected aborted journal
[2077649.058116] EXT4-fs (dm-4): Remounting filesystem read-only
ย้อนกลับไปในอินสแตนซ์ที่ดิน EC2 นักเทียบท่ารายงานสิ่งนี้: (จากdocker info
)
Pool Name: docker-docker--pool
Pool Blocksize: 524.3 kB
Base Device Size: 107.4 GB
Backing Filesystem: ext4
Data file:
Metadata file:
Data Space Used: 12.73 GB
Data Space Total: 12.73 GB
Data Space Available: 0 B
Metadata Space Used: 3.015 MB
Metadata Space Total: 16.78 MB
Metadata Space Available: 13.76 MB
Thin Pool Minimum Free Space: 1.273 GB
LVS ทิ้งข้อมูลนี้:
--- Logical volume ---
LV Name docker-pool
VG Name docker
LV UUID xxxxxxxxxxxxxxxxxxxxxxxxxxxx
LV Write Access read/write
LV Creation host, time ip-10-0-0-65, 2017-03-25 22:37:38 +0000
LV Pool metadata docker-pool_tmeta
LV Pool data docker-pool_tdata
LV Status available
# open 2
LV Size 11.86 GiB
Allocated pool data 100.00%
Allocated metadata 17.77%
Current LE 3036
Segments 1
Allocation inherit
Read ahead sectors auto
- currently set to 256
Block device 253:2
สระว่ายน้ำขนาดเล็กนี้คืออะไรทำไมเติมเต็มและฉันจะหยุดมันได้อย่างไร นอกจากนี้ถ้าฉันมี 20+ GB ฟรีจากภายในคอนเทนเนอร์บน / ปริมาณของฉันทำไมมันหยุดเขียนใหม่? เท่าที่ฉันสามารถบอกได้ว่าไม่ได้เชื่อมต่อกับไฟล์ที่โปรแกรมของฉันกำลังเขียน
ขอบคุณ!