resize2fs
Для изменения размера загрузочного диска 2 ТБ во время загрузки в Debian 10 требуется 90 секунд больше, чем в Debian 9.
Обратите внимание, что время для создания / подготовки экземпляра виртуальной машины (gcloud compute instances create ...
) одинакова (около 10 секунд) для Debian 9 и Debian 10, но время до успешного SSH разное (см. while
цикл в моей тестовой команде) - это когда виртуальная машина действительно загружается, а не когда gcloud instances create ...
возвращается.
$ 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
Debian 10 image test for 10Gb and 2TB disk sizes - startup time is 90 seconds longer for VM w/ 2TB disk: $ 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
Интересно, что сразу после загрузки ВМ tune2fs
показывает, что виртуальная машина Debian 10 записала на загрузочный диск 43 ГБ, а Debian 9 только 2 ГБ:
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
репо) и Ubuntu 20.04 LTS. Но только виртуальная машина Debian 10 все еще имеет этот регресс, в Ubuntu 20.04 LTS его нет, поэтому кажется, что это проблема, специфичная для Debian 10.
Есть ли какой-либо параметр конфигурации, который позволяет восстановить поведение Debian 9 в Debian 10 для resize2fs
во время загрузки ВМ?
Благодаря диагностике в отчет об ошибке e2fsprogs Команда GCE смогла исправить эту проблему в образе GCE Debian 10, и теперь создание виртуальной машины Debian 10 с большими загрузочными дисками происходит так же быстро, как и в Debian 9.
Это исправление включено начиная с debian-10-buster-v20200714
Образ GCE Debian 10.