У меня есть 3 тома SSD EBS, смонтированных на моем сервере базы данных. Основной том данных — 10 ТБ, том журнала — 1 ТБ, а третий том — 100 ГБ.
Когда я делаю снимок 3 томов, создание снимка тома журнала объемом 1 ТБ постоянно занимает гораздо больше времени, чем создание снимка тома данных объемом 10 ТБ, хотя на нем занято всего около 100 ГБ пространства. (Прошло более 8 часов, и он готов только на 55%. Создание снимка объемом 10 ТБ завершилось примерно через 2 часа).
Могу ли я что-то сделать, чтобы ускорить процесс?
решение1
Количество времени, которое требуется EC2 для создания снимка, прямо пропорционально количеству измененных блоков, которые том видел с момента последнего снимка. В случае вашего журнала, который видитмногоопераций записи/удаления, поэтому неудивительно, что на его создание ушло много времени.
Имейте в виду, что это действительноблочные устройства. Они ничего не знают о вашей файловой системе. Возможно, в журнальном томе сейчас используется только 100 ГБ, но с момента последнего снимка каждый из его блоков мог быть изменен. Некоторые из тех файлов, которые занимали эти блоки, были удалены, поэтому они не кажутся «использованными» для вашей файловой системы, но само блочное устройство ничего об этом не знает, поэтому оно должно сделать снимоквсеэтих данных. (Кстати, по этой же причине AWS не может предоставить отчет о том, сколько данных хранится в томах EBS, без серверного агента, который может запрашивать хранилище на уровне файловой системы.)
Чтобы смягчить ситуацию, вы можете попробовать делать снимки чаще.
Но один вопрос... почему вас волнует, сколько времени это займет? После того, как вызов API вернется из вашего запроса на создание моментального снимка, вы сможете продолжать использовать том, и любые последующие изменения в блочном устройстве не будут включены в снимок.