一般業(yè)務(wù)初期,由于業(yè)務(wù)量不大,沒有做長遠(yuǎn)考慮,導(dǎo)致有些服務(wù)器磁盤容量配置比較小。
但是隨著業(yè)務(wù)量起來,各種數(shù)據(jù)量也越來越大,此時(shí)我們的硬盤容量已經(jīng)無法滿足,日益新增的數(shù)據(jù)。
那么問題來了?現(xiàn)在怎么擴(kuò)容硬盤?
難道買一塊更大的硬盤,然后分區(qū)格式化,重新掛載把數(shù)據(jù)遷移過去?這種方案顯然可以實(shí)現(xiàn),但是數(shù)據(jù)不停的在新增,怎么保證遷移的數(shù)據(jù)和源數(shù)據(jù)一致呢?那就只有把業(yè)務(wù)停了,再遷移數(shù)據(jù)了,但是這樣又對(duì)業(yè)務(wù)造成了影響。那么非要這么干,只有就等到夜深人靜,大家都睡覺的時(shí)候,你再停掉業(yè)務(wù),慢慢遷移。
如果一開始使用了邏輯卷也沒這么多麻煩,直接擴(kuò)展邏輯卷就好了。
難道除了上面的方案,就沒有其他辦法了嗎?答案是肯定有,那么接來下阿湯博客就通過實(shí)際操作來分享,在未配置LVM邏輯卷的情況下如何實(shí)現(xiàn)磁盤熱擴(kuò)容,云服務(wù)器和Vmware虛擬機(jī)都可以。
注:在實(shí)際測試過程中,Vmware虛擬機(jī)如果只有一塊系統(tǒng)盤,運(yùn)行中狀態(tài)無法編輯磁盤的大小,如果是兩塊硬盤,非系統(tǒng)盤可以直接擴(kuò)容磁盤大小,實(shí)現(xiàn)熱擴(kuò)容。
1、安裝growpart工具和resize2fs工具。
[root@amd5.cn ~]# wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo [root@amd5.cn ~]# yum install cloud-utils-growpart xfsprogs -y
2、安裝好工具以后,擴(kuò)容現(xiàn)有磁盤,如果是阿里云或者其他云服務(wù)器,直接在線擴(kuò)容,然后服務(wù)器就自動(dòng)識(shí)別了。這里主要說下Vmware的在線擴(kuò)容。
①先查看服務(wù)器的磁盤容量
[root@amd5.cn ~]# fdisk -l 磁盤 /dev/sdb:42.9 GB, 42949672960 字節(jié),83886080 個(gè)扇區(qū) Units = 扇區(qū) of 1 * 512 = 512 bytes 扇區(qū)大小(邏輯/物理):512 字節(jié) / 512 字節(jié) I/O 大小(最小/最佳):512 字節(jié) / 512 字節(jié) 磁盤標(biāo)簽類型:dos 磁盤標(biāo)識(shí)符:0x65618af9 設(shè)備 Boot Start End Blocks Id System /dev/sdb1 2048 83886046 41941999+ 83 Linux 磁盤 /dev/sda:107.4 GB, 107374182400 字節(jié),209715200 個(gè)扇區(qū) Units = 扇區(qū) of 1 * 512 = 512 bytes 扇區(qū)大小(邏輯/物理):512 字節(jié) / 512 字節(jié) I/O 大小(最小/最佳):512 字節(jié) / 512 字節(jié) 磁盤標(biāo)簽類型:dos 磁盤標(biāo)識(shí)符:0x000c0b38 設(shè)備 Boot Start End Blocks Id System /dev/sda1 * 2048 1026047 512000 83 Linux /dev/sda2 1026048 84912127 41943040 83 Linux /dev/sda3 84912128 93300735 4194304 82 Linux swap / Solaris /dev/sda4 93300736 209715199 58207232 5 Extended /dev/sda5 93302784 209715199 58206208 83 Linux [root@amd5.cn ~]# df -lh | grep sdb /dev/sdb1 40G 213M 40G 1% /test
②在sdb1掛載的目錄創(chuàng)建一個(gè)文件。
[root@amd5.cn ~]# cat /test/www.zhongjima.net.txt 阿湯博客測試文件
③登錄Vcenter把sdb 40G擴(kuò)容到50G。
④、讓系統(tǒng)重新識(shí)別/dev/sdb磁盤。
[root@amd5.cn ~]# echo 1 > /sys/class/scsi_disk/0\:0\:1\:0/device/rescan [root@amd5.cn ~]# fdisk -l 磁盤 /dev/sdb:53.7 GB, 53687091200 字節(jié),104857600 個(gè)扇區(qū) Units = 扇區(qū) of 1 * 512 = 512 bytes 扇區(qū)大小(邏輯/物理):512 字節(jié) / 512 字節(jié) I/O 大小(最小/最佳):512 字節(jié) / 512 字節(jié) 磁盤標(biāo)簽類型:dos 磁盤標(biāo)識(shí)符:0x65618af9 設(shè)備 Boot Start End Blocks Id System /dev/sdb1 2048 83886046 41941999+ 83 Linux 磁盤 /dev/sda:107.4 GB, 107374182400 字節(jié),209715200 個(gè)扇區(qū) Units = 扇區(qū) of 1 * 512 = 512 bytes 扇區(qū)大小(邏輯/物理):512 字節(jié) / 512 字節(jié) I/O 大小(最小/最佳):512 字節(jié) / 512 字節(jié) 磁盤標(biāo)簽類型:dos 磁盤標(biāo)識(shí)符:0x000c0b38 設(shè)備 Boot Start End Blocks Id System /dev/sda1 * 2048 1026047 512000 83 Linux /dev/sda2 1026048 84912127 41943040 83 Linux /dev/sda3 84912128 93300735 4194304 82 Linux swap / Solaris /dev/sda4 93300736 209715199 58207232 5 Extended /dev/sda5 93302784 209715199 58206208 83 Linux
此時(shí)查看/dev/sdb已經(jīng)比原來多了10G,說明系統(tǒng)已經(jīng)重新讀取磁盤容量。
3、使用growpart工具擴(kuò)容分區(qū)。
[root@amd5.cn ~]# growpart /dev/sdb 1 #1表示第一個(gè)分區(qū)擴(kuò)容。 unexpected output in sfdisk --version [sfdisk,來自 util-linux 2.23.2] [root@amd5.cn ~]# LANG=en_US.UTF-8 [root@amd5.cn ~]# growpart /dev/sdb 1 CHANGED: partition=1 start=2048 old: size=83883999 end=83886047 new: size=104855519 end=104857567
如果執(zhí)行g(shù)rowpart /dev/sdb 1報(bào)錯(cuò)“unexpected output in sfdisk --version [sfdisk,來自 util-linux 2.23.2]”,就設(shè)置LANG=en_US.UTF-8,再執(zhí)行。
4、使用resize2fs工具擴(kuò)容文件系統(tǒng)。
①先查看分區(qū)格式。
[root@amd5.cn ~]# blkid /dev/sdb1 /dev/sdb1: UUID="7006eed9-3fb5-444c-a467-4b98fcf25cd5" TYPE="xfs"
②擴(kuò)容文件系統(tǒng)。
[root@amd5.cn ~]# xfs_growfs /dev/sdb1 meta-data=/dev/sdb1 isize=512 agcount=9, agsize=1310656 blks = sectsz=512 attr=2, projid32bit=1 = crc=1 finobt=0 spinodes=0 data = bsize=4096 blocks=10485499, imaxpct=25 = sunit=0 swidth=0 blks naming =version 2 bsize=4096 ascii-ci=0 ftype=1 log =internal bsize=4096 blocks=2560, version=2 = sectsz=512 sunit=0 blks, lazy-count=1 realtime =none extsz=4096 blocks=0, rtextents=0 data blocks changed from 10485499 to 13106939
注:如果是ext4格式,則使用resize2fs /dev/sdb1
5、查看擴(kuò)容情況。
[root@amd5.cn ~]# df -h | grep sdb /dev/sdb1 50G 214M 50G 1% /test [root@amd5.cn ~]# cat /test/www.zhongjima.net.txt 阿湯博客測試文件