Linux未配置LVM邏輯卷,如何實(shí)現(xiàn)磁盤熱擴(kuò)容

2020年10月23日14:38:56 發(fā)表評(píng)論 5,294 ℃

一般業(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。

Linux未配置LVM邏輯卷,如何實(shí)現(xiàn)磁盤熱擴(kuò)容

④、讓系統(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 
阿湯博客測試文件
【騰訊云】云服務(wù)器、云數(shù)據(jù)庫、COS、CDN、短信等云產(chǎn)品特惠熱賣中

發(fā)表評(píng)論

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: