前言
最近项目的一台gitlab服务器进程经常访问不到,对应的docker服务状态为unhealthy,最后锁定为硬盘容量已满。
通过下面命令来查看磁盘使用情况
df -h
锁定之后,可以具体查看占用容量最大的十个文件
sudo du -hsx * | sort -rh | head -10
最后发现是/var/log/docker中文件占了50%,但是无法删除。
所以采取硬盘扩容措施。
参考aws官方文档
先浏览https://docs.aws.amazon.com/zh_cn/AWSEC2/latest/UserGuide/ebs-modify-volume.html
文档总体思路
- 1 修改Volumn的size,也就是调整物理分区
- 2 查看修改进度
- 3 修改EC2对应的文件系统,也就是调整逻辑分区
step1
进入volumns页面
Xnip2018-07-23_16-55-23.jpg Xnip2018-07-23_16-56-28.jpg
Xnip2018-07-23_16-56-51.jpg
step2
改完之后可以查看下进度,如果刚开始的话是0 %,图片中是已在EC2上设置完毕,所以显示100%
Xnip2018-07-23_16-58-29.jpg
step3
ssh 远程连接改ec2之后,运行如下命令
Xnip2018-07-23_17-03-32.jpg
分区情况为只有一个xvda1的硬盘,挂载到了根目录上。
使用 growpart 展开修改后的分区
$sudo growpart /dev/xvda 1
sudo resize2fs /dev/xvda1
最后通过df -h来确认。
Xnip2018-07-23_17-07-27.jpg
其他:lsblk命令讲解
sblk命令默认情况下将以树状列出所有块设备。
lsblk
NAME MAJ:MIN [rm](http://man.linuxde.net/rm "rm命令") SIZE RO [type](http://man.linuxde.net/type "type命令") [mountpoint](http://man.linuxde.net/mountpoint "mountpoint命令")
sda 8:0 0 232.9G 0 disk
├─sda1 8:1 0 46.6G 0 part /
├─sda2 8:2 0 1K 0 part
├─sda5 8:5 0 190M 0 part /boot
├─sda6 8:6 0 3.7G 0 part [SWAP]
├─sda7 8:7 0 93.1G 0 part /data
└─sda8 8:8 0 89.2G 0 part /personal
sr0 11:0 1 1024M 0 rom</pre>
7个栏目名称如下:
NAME:这是块设备名。
MAJ:MIN:本栏显示主要和次要设备号。
RM:本栏显示设备是否可移动设备。注意,在本例中设备sdb和sr0的RM值等于1,这说明他们是可移动设备。
SIZE:本栏列出设备的容量大小信息。例如298.1G表明该设备大小为298.1GB,而1K表明该设备大小为1KB。
RO:该项表明设备是否为只读。在本案例中,所有设备的RO值为0,表明他们不是只读的。
TYPE:本栏显示块设备是否是磁盘或磁盘上的一个分区。在本例中,sda和sdb是磁盘,而sr0是只读存储(rom)。
MOUNTPOINT:本栏指出设备挂载的挂载点。
网友评论