您好,登錄后才能下訂單哦!
當虛擬機服務器運行Docker久了后,發現Docker的文件越來越大,某天發現此臺機上的數據庫訪問不了了,再重啟數據庫等日志,提示空間不足,查看磁盤空間:
root分區滿載啊,前段時間還有不少空間的,查下什么大文件內容占了空間。
find / -xdev -size +100M -exec ls -l {} \;
最近用的docker越來越大 才導致磁盤滿了。
那下面要么清理docker,要么擴展磁盤。
兩步都做吧,先簡單清理docker,或許可以清理一些空間出來。
先 docker images -a 看一下是不是有過多的 <none> 的鏡像了,其中有一部分是這類鏡像。
# 刪除所有未打標簽的鏡像.
docker rmi $(docker images -aq -f "dangling=true")
容器的內容也是在存儲層的。可以 docker ps -a 看一下是不是有很多之前的容器沒有刪掉的,可以 docker rm $(docker ps -aq -f "dangling=true") 來刪除。
docker run --rm -v /var/run/docker.sock:/var/run/docker.sock -v /etc:/etc:ro spotify/docker-gc
有些容器明明stop了,但是它還是占著某些資源
docker rm -f $(docker ps -a | grep Exit | awk '{ print $1 }')
使用docker自帶命令先清理一次。
docker system prune -a
注意:
這可能會清除掉images,慎用。
再進行了上面對docker處理后,下面對磁盤擴容。
選中虛擬機->虛擬機設置->添加=》硬盤->添加15G,可以看看第一張圖的硬盤1是SCSI(0:0)新加的硬盤2是SCSI(0:1)
先看一下現有磁盤情況:
# fdisk -l
對新磁盤進行分區:
# fdisk /dev/sdb
在fdisk的交互模式中,依次輸入:
n --創建新分區 p --創建主分區 <回車> --默認分區編號 <回車> --默認起始扇區位置。 <回車> --默認結束扇區位置。 w --寫入分區表
這樣就把整個磁盤分成了一個區。
再看一下現有磁盤情況:
# fdisk -l
已經多出了一個新分區:
將新分區用于擴展/root
先看一下卷分組:
# vgdisplay -v
可以看到當前卷分組名為"centos_h42"。
為之前新增的分區創建物理卷:
# pvcreate /dev/sdb1
查看結果:
# pvdisplay
擴展卷分組,"centos_h42"是vgdisplay命令查到的卷分組名:
# vgextend centos_h42 /dev/sdb1
提示成功擴展。
下面查看一下邏輯卷:
# lvdisplay
可以看到/dev/centos_h42/root目前的LV Size是17.47GiB。
下面擴展邏輯卷/dev/centos_h42/root:
# lvextend -L +15G /dev/centos_h42/root
注:+15G是我們新增加的分區大小。
擴展后,還要執行一步 將文件系統擴大:
# xfs_growfs /dev/centos_h42/root
擴展完成。
因為安裝CentOS用的xfs分區,所以使用命令xfs_growfs擴展文件系統大小。否則的話使用resize2fs命令。
查看結果:
# df -Th
/root已經擴充到33GiB:
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。