Назад | Перейти на главную страницу

Что я могу сделать, чтобы увеличить скорость создания снимков?

У меня есть 3 тома SSD EBS, подключенные к моему серверу базы данных. Основной объем данных - 10 ТБ, объем журнала - 1 ТБ, а третий том - 100 ГБ.

Когда я делаю моментальный снимок трех томов, для тома журнала размером 1 ТБ требуется гораздо больше времени для создания моментального снимка, чем для тома данных 10 ТБ, хотя на нем используется всего около 100 ГБ пространства. (Прошло более 8 часов, а готово только 55%. Снимок размером 10 ТБ был готов примерно через 2 часа).

Что я могу сделать, чтобы ускорить процесс?

Время, необходимое EC2 для создания снимка, прямо пропорционально количеству измененных блоков, которые том видел с момента последнего снимка. В случае вашего журнала это видит много операций записи / удаления, поэтому неудивительно, что привязка займет много времени.

Имейте в виду, что это действительно блочные устройства. Они ничего не знают о вашей файловой системе. Возможно, в настоящий момент для тома журнала используется только 100 ГБ, но с момента последнего снимка состояния каждый из его блоков мог быть изменен. Некоторые из этих файлов, которые занимали эти блоки, были удалены, поэтому они не кажутся «использованными» для вашей файловой системы, но само блочное устройство ничего об этом не знает, поэтому оно должно быть выполнено все этих данных. (Кстати, по этой же причине AWS не может сообщить о том, сколько данных хранится на томах EBS, без агента на стороне сервера, который может запрашивать хранилище на уровне файловой системы.)

Чтобы снизить риск, вы можете попробовать делать снимки чаще.

Один вопрос, однако ... почему тебя волнует, сколько времени это займет? После возврата вызова API из запроса на создание моментального снимка вы можете продолжить использование тома, и любые последующие изменения блочного устройства не будут включены в моментальный снимок.