前言
今天发现es日志未记录,检查了filebeat、elasticsearch、logstash之后发现es的索引都变成了只读状态,手动修改索引模式之后,过几分钟又变成了只读状态。
进一步翻阅资料,才知道原因是一旦在存储超过95%的磁盘中的节点上分配了一个或多个分片的任何索引,该索引将被强制进入只读模式。所以只能扩充磁盘空间了。下面简单描述下磁盘扩充的步骤。
步骤
磁盘原来已经有两个分区了,但是分配的空间都不大。
增加磁盘,通过管理端挂载新的磁盘sdc;
使用fdisk /dev/sdc,创建新分区;
[root@localhost indices]# fdisk /dev/sdc Device contains neither a valid DOS partition table, nor Sun, SGI or OSF disklabel Building a new DOS disklabel with disk identifier 0x5799aeba. Changes will remain in memory only, until you decide to write them. After that, of course, the previous content wont be recoverable. Warning: invalid flag 0x0000 of partition table 4 will be corrected by w(rite) WARNING: The size of this disk is 2.2 TB (2199023255552 bytes). DOS partition table format can not be used on drives for volumes larger than (2199023255040 bytes) for 512-byte sectors. Use parted(1) and GUID partition table format (GPT). WARNING: DOS-compatible mode is deprecated. Its strongly recommended to switch off the mode (command c) and change display units to sectors (command u). Command (m for help): n #new 新分区 Command action e extended p primary partition (1-4) p #选择主扇区 Partition number (1-4): 1 #起始扇区 First cylinder (1-267349, default 1): #这里直接回车表示取默认值1 Using default value 1 Last cylinder, +cylinders or +size{K,M,G} (1-267349, default 267349): #这里由于es需要的存储空间比较大,所以2个T的空间我都加上了,正常可以按照需求修改扇区大小 Using default value 267349 Command (m for help): w #保存退出 The partition table has been altered! Calling ioctl() to re-read partition table. Syncing disks.然后创建物理卷,使用pvcreate /dev/sdc1命令;注意:这里很多文章里要求重启系统,这里其实可以不用重启,可直接操作,不影响服务器的正常运行;
[root@localhost indices]# pvcreate /dev/sdc1 Physical volume “/dev/sdc1” successfully created使用vgscan查看 物理卷组 名称;
[root@localhost indices]# vgscan Reading all physical volumes. This may take a while… Found volume group “VolGroup” using metadata type lvm2 #这里物理卷组名称为VolGroup将刚才增加的物理扇区加载到卷组中,这里使用 vgextend VolGroup /dev/sdc1;
[root@localhost indices]# vgextend VolGroup /dev/sdc1 Volume group “VolGroup” successfully extended增加卷组的大小,这里使用lvextend -L +2048G /dev/mapper/VolGroup-lv_root;
[root@localhost indices]# lvextend -L +2048G /dev/mapper/VolGroup-lv_root Size of logical volume VolGroup/lv_root changed from 135.47 GiB (34681 extents) to 2.13 TiB (558848 extents). Logical volume lv_root successfully resized.使用df -h查看空间扩充情况,发现空间并未扩充,这是因为文件系统还未同步;
[root@localhost indices]# df -h Filesystem Size Used Avail Use% Mounted on /dev/mapper/VolGroup-lv_root 134G 119G 8.4G 94% / tmpfs 32G 72K 32G 1% /dev/shm /dev/sda1 477M 41M 411M 10% /boot同步文件系统,使用xfs_growfs或者resize2fs同步文件系统,如下操作;
[root@localhost indices]# resize2fs -f /dev/mapper/VolGroup-lv_root resize2fs 1.41.12 (17-May-2010) Filesystem at /dev/mapper/VolGroup-lv_root is mounted on /; on-line resizing required old desc_blocks = 9, new_desc_blocks = 137 Performing an on-line resize of /dev/mapper/VolGroup-lv_root to 572260352 (4k) blocks. The filesystem on /dev/mapper/VolGroup-lv_root is now 572260352 blocks long.再使用df -h 查看空间扩容情况
[root@localhost indices]# df -h Filesystem Size Used Avail Use% Mounted on /dev/mapper/VolGroup-lv_root 2.1T 125G 1.9T 7% / tmpfs 32G 72K 32G 1% /dev/shm /dev/sda1 477M 41M 411M 10% /boot由于CentOS6和CentOS7在默认根文件系统的文件系统格式存在差异,需要判断是否为xfs,如果是xfs则应该使用xfs_growfs而不是一味的使用resize2fs。
暂无评论内容