您好,登錄后才能下訂單哦!
這篇文章主要介紹“GlusterFS文件占用空間大小顯示不統一怎么解決”,在日常操作中,相信很多人在GlusterFS文件占用空間大小顯示不統一怎么解決問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”GlusterFS文件占用空間大小顯示不統一怎么解決”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!
測試環境說明:glusterfs 3.6 replica 2
正常情況下,文件占用空間大小和文件系統的塊大小密切相關。
如xfs默認的塊大小為4K,那么即便創建一個1字節的文件,也會占用4K空間。
客戶fuse掛載,創建小文件是以512字節進行計算,因此,在客戶端創建100個小于512字節的小文件,就會顯示占用50K空間,顯示結果如下:
[root@lab23:/mnt/dzq/test]$ls 0 12 16 2 23 27 30 34 38 41 45 49 52 56 6 63 67 70 74 78 81 85 89 92 96 1 13 17 20 24 28 31 35 39 42 46 5 53 57 60 64 68 71 75 79 82 86 9 93 97 10 14 18 21 25 29 32 36 4 43 47 50 54 58 61 65 69 72 76 8 83 87 90 94 98 11 15 19 22 26 3 33 37 40 44 48 51 55 59 62 66 7 73 77 80 84 88 91 95 99 [root@lab23:/mnt/dzq/test]$ls -lh |head total 50K -rw-r--r-- 1 root root 2 Jan 29 15:33 0 -rw-r--r-- 1 root root 2 Jan 29 15:33 1 -rw-r--r-- 1 root root 3 Jan 29 15:33 10 -rw-r--r-- 1 root root 3 Jan 29 15:33 11 -rw-r--r-- 1 root root 3 Jan 29 15:33 12 -rw-r--r-- 1 root root 3 Jan 29 15:33 13 -rw-r--r-- 1 root root 3 Jan 29 15:33 14 -rw-r--r-- 1 root root 3 Jan 29 15:33 15 -rw-r--r-- 1 root root 3 Jan 29 15:33 16 |
而實際上,其占用的空間并沒有這么少,應該按照后臺服務器的為準,后臺顯示結果如下:
[root@lab21:/letv/disk3/test]$ls 0 12 16 2 23 27 30 34 38 41 45 49 52 56 6 63 67 70 74 78 81 85 89 92 96 1 13 17 20 24 28 31 35 39 42 46 5 53 57 60 64 68 71 75 79 82 86 9 93 97 10 14 18 21 25 29 32 36 4 43 47 50 54 58 61 65 69 72 76 8 83 87 90 94 98 11 15 19 22 26 3 33 37 40 44 48 51 55 59 62 66 7 73 77 80 84 88 91 95 99 [root@lab21:/letv/disk3/test]$ls -lh |head total 400K -rw-r--r-- 2 root root 2 Jan 29 15:33 0 -rw-r--r-- 2 root root 2 Jan 29 15:33 1 -rw-r--r-- 2 root root 3 Jan 29 15:33 10 -rw-r--r-- 2 root root 3 Jan 29 15:33 11 -rw-r--r-- 2 root root 3 Jan 29 15:33 12 -rw-r--r-- 2 root root 3 Jan 29 15:33 13 -rw-r--r-- 2 root root 3 Jan 29 15:33 14 -rw-r--r-- 2 root root 3 Jan 29 15:33 15 -rw-r--r-- 2 root root 3 Jan 29 15:33 16 |
原因在于,后的是xfs文件系統,默認塊大小為4K,所以客戶端創建一個小于4K的小文件,都會占用4K空間。
[root@lab21:/letv/disk3/test]$stat -f /letv/disk3/test/ File: "/letv/disk3/test/" ID: fd0200000000 Namelen: 255 Type: xfs Block size: 4096 Fundamental block size: 4096 Blocks: Total: 238263636 Free: 216480157 Available: 216480157 Inodes: Total: 953520128 Free: 953175313 |
客戶端按照512Byte進行計算,服務器使用4K進行計算,對比如下:
客戶端:
[root@lab23:/mnt/dzq/new]$ls -lh total 1.5K -rw-r--r-- 1 root root 513 Jan 29 17:04 a -rw-r--r-- 1 root root 55 Jan 29 15:51 b |
服務器端:
[root@lab21:/letv/disk3/new]$ls -lh total 8.0K -rw-r--r-- 2 root root 513 Jan 29 17:04 a -rw-r--r-- 2 root root 55 Jan 29 15:51 b |
從客戶端看到的塊大小是128K,但實際上卻是按照512進行計算,這個需要進一步分析原因:
[root@lab23:/mnt/dzq/new]$stat -f /mnt/dzq/test/ File: "/mnt/dzq/test/" ID: 0 Namelen: 255 Type: fuseblk Block size: 131072 Fundamental block size: 131072 Blocks: Total: 7445738 Free: 6765004 Available: 6765004 Inodes: Total: 953520128 Free: 953175312 |
確實應該沒有受客戶端文件系統影響,客戶端文件系統塊大小如下:
[root@lab23:/mnt/dzq/new]$stat -f /mnt/ File: "/mnt/" ID: 3af66a85b8161ce8 Namelen: 255 Type: ext2/ext3 Block size: 4096 Fundamental block size: 4096 Blocks: Total: 2015852 Free: 169897 Available: 67497 Inodes: Total: 512064 Free: 364916 |
遺留問題:
為什么客戶顯示塊大小為128k,但統計文件所占空間大小時,用的卻是512字節?
fuse以128K進行數據傳輸,從應用場景出發,可以考慮增大后臺xfs塊大小,來提供小文件性能,待驗證。
到此,關于“GlusterFS文件占用空間大小顯示不統一怎么解決”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。