Диски, снимки, образы
Сколько дискового пространства я могу использовать для виртуальной машины?
Ограничения на диски приведены в разделе Квоты и лимиты в Compute Cloud.
Как изменить размер диска
Увеличить размер диска можно по инструкции Увеличить размер диска, в пределах установленных лимитов. Данные на диске при этом сохраняются. Обязательно дождитесь завершения операции.
Уменьшение размера диска невозможно: это архитектурная особенность технологий, используемых Yandex Cloud. Создать из снимка диск меньшего размера, чем родительский диск, также невозможно.
Если после увеличения размера диска раздел на загрузочном диске Linux не расширился автоматически, используйте команды:
sudo growpart /dev/vda 2
sudo resize2fs /dev/vda2
Для незагрузочных дисков размер раздела автоматически не увеличивается, используйте стандартные средства операционной системы для его расширения (например, parted
).
Как загрузить свой образ
Воспользуйтесь инструкцией: Загрузить свой образ диска в Yandex Cloud.
Чтобы ВМ, созданная из вашего образа, функционировала правильно, необходимо выполнить все рекомендации, указанные в инструкции.
Если вы уверены, что все рекомендации выполнены, но образ не работает, или если у вас возникли дополнительные вопросы, создайте обращение.
Стоит ли использовать swap
Swap настоятельно не рекомендуется использовать в облачных системах, так как дисковая подсистема может стать «узким местом» для всей гостевой системы. Лимиты сетевых дисков довольно малы для использования диска в качестве «расширения» оперативной памяти.
В качестве замены swap можно использовать утилиту zram-config
. Она позволяет организовать подобие swap внутри самой оперативной памяти — за счет сжатия, которое происходит в десятки раз быстрее, чем IO с диском. Следует учитывать, что при высокой нагрузке на IO и/или vCPU использование zram-config
может негативно влиять на iowait
и, соответственно, на работу сети, дисков и vCPU.
Оптимальное решение для увеличения доступной памяти — расширить vRAM на ВМ.
Размер снимка больше, чем было информации на диске
Это происходит из-за того, что на диске при удалении файлов остаются заполненные сектора.
Решение проблемы в том, чтобы записать файл, состоящий из нулей, на всё незанятое пространство диска, затем сбросить кеш на диск и удалить запись об этом файле.
-
Для Windows: остановите дисковые операции и используйте утилиту
SDelete
. Узнать, как она работает, и скачать ее можно в документации Microsoft. -
Для Linux: остановите дисковые операции и последовательно введите следующие команды:
dd if=/dev/zero | pv > full.disk
sync
rm full.disk
После этого «пустое» место на диске действительно становится пустым, и можно создавать снимок диска. Его размер будет ближе к текущему занятому дисковому пространству.
Как учитываются квоты снимков
Снимки учитываются в квотах по размеру родительских дисков. Например, если снимок создан из диска 250 ГБ, то в квоте на размер снимков учитывается 250 ГБ, даже если реальный размер снимка 20 ГБ. Это сделано для того, чтобы и разработчики, и клиенты могли реально оценивать возможные нагрузки на сервис снимков дисков.
На тарификацию такой подход учета квот не влияет: снимки тарифицируются по реальному размеру.
Как перенести виртуальную машину в другой каталог/облако
-
Предоставьте права в вашем облаке пользователю из другого облака:
- роль на облако:
resource-manager.clouds.member
; - роль на каталог:
viewer
илиcompute.images.user
.
См. инструкцию Назначение роли.
- роль на облако:
-
Создайте образ из вашего снимка в разделе Снимки дисков или из самого диска в разделе Диски.
Пользователю в другом облаке необходимо:
-
В CLI выполнить команду:
yc compute image create --source-image-id=<идентификатор_вашего_образа>
-
При создании ВМ указать этот образ в качестве загрузочного диска.
Как подключить новый диск к виртуальной машине
После создания и подключения к ВМ нового диска необходимо его смонтировать или выдать букву — в зависимости от операционной системы. Воспользуйтесь инструкцией: Смонтировать диск, созданный из снимка или образа.
Как настроить автоматическое создание снимков
Сейчас в Compute Cloud нет готового решения для автоматического резервного копирования, но вы можете использовать подход, описанный в нашем блоге: Создание снимков дисков по расписанию с Yandex Cloud Functions.
Обратите внимание, что код предоставлен как есть. Дальнейшая его доработка лежит вне зоны ответственности Yandex Cloud.
Что происходит с данными при удалении виртуальной машины?
При выборе диска для подключении к ВМ можно указать, должен ли быть удален диск при удалении ВМ. Это можно выбрать как при создании ВМ, при изменении и при подключении нового диска к ней.
Если к ВМ были подключены ранее созданные диски, то при удалении ВМ они будут отключены. Данные на диске при этом сохраняются, в дальнейшем этот диск можно подключить к другой ВМ.
Если вы хотите, чтобы диск был удален вместе с ВМ, это необходимо указать в одной из операций: при создании ВМ, при изменении или при подключении диска к ней. Такие диски будут удалены при удалении ВМ.
Нужно ли останавливать виртуальную машину, чтобы сделать снимки дисков? Нужно ли дожидаться завершения создания снимков дисков, прежде чем запускать виртуальную машину?
Останавливать ВМ необязательно. Однако необходимо учитывать, что снимок содержит только те данные, которые записаны на диск в момент создания снимка. Вам необходимо самостоятельно позаботиться о целостности данных. О том, как создать снимок диска читайте в разделе Создать снимок диска.
Создание снимка выполняется асинхронно. Возобновить запись на диск можно сразу после команды создания снимка, не дожидаясь завершения создания снимка.