在 GCP 上使用 Debian 10 Buster 映像啟動虛擬機時磁碟大小調整緩慢
resize2fs
在 Debian 10 上啟動期間調整 2TB 啟動磁碟的大小比在 Debian 9 上多花 90 秒。請注意,
gcloud compute instances create ...
對於 Debian 9 和 Debian 10,創建/配置 VM 實例 ( ) 的時間是相同的(大約 10 秒),但是成功 SSH 的時間是不同的(請參閱while
我的測試命令中的循環) - 這是 VM 實際啟動的時間,而不是gcloud instances create ...
返回時。Debian 9 對 10Gb 和 2TB 磁碟大小的映像測試 - 啟動時間幾乎相同(大約 1 分鐘):
$ VM=deb9-10gb; time gcloud compute instances create $VM --image-family=debian-9 --image-project=debian-cloud --boot-disk-size=10GB --machine-type=n1-standard-4 --scopes cloud-platform; date; time (while ! gcloud compute ssh $VM --command="hostname" 2>/dev/null; do date; done); date Sat 25 Apr 2020 10:49:51 PM PDT . . . deb9-10gb real 1m8.119s user 0m2.593s sys 0m0.398s Sat 25 Apr 2020 10:50:59 PM PDT $ VM=deb9-2tb; time gcloud compute instances create $VM --image-family=debian-9 --image-project=debian-cloud --boot-disk-size=2TB --machine-type=n1-standard-4 --scopes cloud-platform; date; time (while ! gcloud compute ssh $VM --command="hostname" 2>/dev/null; do date; done); date Sat 25 Apr 2020 10:51:27 PM PDT . . . deb9-2tb real 0m42.178s user 0m1.505s sys 0m0.240s Sat 25 Apr 2020 10:52:09 PM PDT
針對 10Gb 和 2TB 磁碟大小的 Debian 10 映像測試 - 對於帶有 2TB 磁碟的 VM,啟動時間要長 90 秒:
$ VM=deb10-10gb; time gcloud compute instances create $VM --image-family=debian-10 --image-project=debian-cloud --boot-disk-size=10GB --machine-type=n1-standard-4 --scopes cloud-platform; date; time (while ! gcloud compute ssh $VM --command="hostname" 2>/dev/null; do date; done); date Sat 25 Apr 2020 11:01:35 PM PDT . . . deb10-10gb real 1m11.145s user 0m2.586s sys 0m0.412s Sat 25 Apr 2020 11:02:47 PM PDT $ VM=deb10-2tb; time gcloud compute instances create $VM --image-family=debian-10 --image-project=debian-cloud --boot-disk-size=2TB --machine-type=n1-standard-4 --scopes cloud-platform; date; time (while ! gcloud compute ssh $VM --command="hostname" 2>/dev/null; do date; done); date Sat 25 Apr 2020 11:03:27 PM PDT . . . deb10-2tb real 2m49.483s user 0m6.576s sys 0m1.068s Sat 25 Apr 2020 11:06:17 PM PDT
有趣的是,在 VM 啟動後
tune2fs
顯示 Debian 10 VM 寫入了 43 GB 到啟動磁碟,但 Debian 9 只有 2 GB:deb9-2tb:~$ sudo tune2fs -l /dev/sda1 | grep "Lifetime writes:" Lifetime writes: 2183 MB deb10-2tb:~$ sudo tune2fs -l /dev/sda1 | grep "Lifetime writes:" Lifetime writes: 43 GB
我還在
1.45.5-2
e2fsprogs
Debian 10(從buster-backports
repo 更新)和 Ubuntu 20.04 LTS 上使用較新版本對此進行了測試。但是只有 Debian 10 VM 仍然有這種回歸,Ubuntu 20.04 LTS 沒有,所以這似乎是 Debian 10 特有的問題。是否有任何配置選項允許
resize2fs
在 VM 啟動期間恢復 Debian 10 中的 Debian 9 行為?
多虧了e2fsprogs 錯誤報告中的診斷, GCE 團隊能夠在 GCE Debian 10 映像中修復此問題,現在 Debian 10 使用大型引導磁碟創建虛擬機的速度與使用 Debian 9 一樣快。
此修復包括從
debian-10-buster-v20200714
GCE Debian 10 映像開始。