Управление снапшотами дисков

Снапшоты — это слепки состояния диска. Они хранят разницу между изменяющимися данными на диске виртуальной машины и состоянием диска на момент создания снапшота. Это позволяет копировать диски для создания клона виртуальной машины, изменения типа диска или создания резервной копии. Снапшот не является резервной копией диска виртуальной машины, так как хранится на том же оборудовании и требует доступности основного хранилища для выполнения любой операции.

Создание снапшота

Создание снапшота в панели управления

Для создания снапшота диска в панели управления:

  1. Передите в раздел Диски в проекте.
  2. Откройте меню карточки диска (⋮) и выберите пункт Сделать снапшот.
  3. Либо раскройте карточку диска и перейдите на вкладку Снапшоты и нажмите кнопку Создать снапшот.

Имя снапшота автоматически задается в виде snap-дата создания_время создания, например, snap-14.05.20_14.43.

Создание снапшота с помощью консольных клиентов

Подробно о начале работы через консольные клиенты читайте в статье.

Для создания снапшота с помощью консольного клиента введите команду:

openstack volume snapshot create --volume <volume ID> <snapshot name>

Большое количество снапшотов замедляет работу диска. Создать можно только один снапшот — квота snapshots_per_volume установлена в 1. При попытке создания более одного снапшота будет выведено сообщение об ошибке:

SnapshotPerVolumeLimitExceeded: Maximum number of snapshots allowed per volume 08ed209f-5e7f-465c-b1e1-221b850298db (1) exceeded.
Quota: snapshots_per_volume_fast.ru-2b (HTTP 413)

Просмотр снапшотов

Просмотр снапшотов в панели управления

Для просмотра снапшота:

  1. Перейдите в раздел Диски в проекте.
  2. Разверните карточку необходимого диска и перейдите на вкладку Снапшоты.

Отобразится список существующих снапшотов с именем и датой создания.

Просмотр снапшотов с помощью консольных клиентов

Для просмотра снапшота конкретного диска введите команду:

openstack volume snapshot list --volume <volume>

Для просмотра списка всех снапшотов:

openstack volume snapshot list

Ответ будет выглядеть следующим образом:

+--------------------------------------+---------------------+-------------+-----------+------+
| ID                                   | Name                | Description | Status    | Size |
+--------------------------------------+---------------------+-------------+-----------+------+
| cb74e550-fa96-4a9c-b685-ecb078966339 | test_snapshot       | None        | available |    5 |
| 39dc0cb2-6818-4b12-88fc-b2d139335a75 | snap-26.03.20_13.22 | None        | available |   25 |
+--------------------------------------+---------------------+-------------+-----------+------+

Для фильтрации списка всех снапшотов:

openstack volume snapshot list --long -c <ID> -c <Name> -c <Status> -c <Size> -c <Volume>

Ответ будет выглядеть следующим образом:

+--------------------------------------+---------------------+-----------+------+----------------------------+
| ID                                   | Name                | Status    | Size | Volume                     |
+--------------------------------------+---------------------+-----------+------+----------------------------+
| cb74e550-fa96-4a9c-b685-ecb078966339 | test_snapshot       | available |    5 | VOLUME_NAME                |
| 39dc0cb2-6818-4b12-88fc-b2d139335a75 | snap-26.03.20_13.22 | available |   25 | disk-for-Latoya-#1         |
+--------------------------------------+---------------------+-----------+------+----------------------------+

Для просмотра информации о снапшоте введите:

openstack volume snapshot show <snapshot>

Ответ будет выглядеть следующим образом:

+--------------------------------------------+--------------------------------------+
| Field                                      | Value                                |
+--------------------------------------------+--------------------------------------+
| created_at                                 | 2020-04-28T01:22:04.000000           |
| description                                | None                                 |
| id                                         | cb74e550-fa96-4a9c-b685-ecb078966339 |
| name                                       | test_snapshot                        |
| os-extended-snapshot-attributes:progress   | 100%                                 |
| os-extended-snapshot-attributes:project_id | 04d92ef9fe254caaa90d6ecd2849c1cf     |
| properties                                 |                                      |
| size                                       | 5                                    |
| status                                     | available                            |
| updated_at                                 | 2020-04-28T01:22:05.000000           |
| volume_id                                  | 08ed209f-5e7f-465c-b1e1-221b850298db |
+--------------------------------------------+--------------------------------------+

Изменение параметров снапшота

Для снапшотов доступно только изменение имени.

Изменение параметров снапшота в панели управления

Для изменения имени снапшота в панели упраления:

  1. Перейдите в раздел Диски в проекте.
  2. Раскройте карточку диска и перейдите на вкладку Снапшоты.
  3. Введите в поле Имя новое название.

Изменение параметров снапшота с помощью консольных клиентов

Для изменения имени снапшота введите:

openstack volume snapshot set --description <new name> <snapshot>

Создание диска из снапшота

Создание диска из снапшота в панели управления

Для создания диска из снапшота в панели управления:

  1. Перейдите в раздел Диски в проекте.
  2. Раскройте карточку диска и перейдите на вкладку Снапшоты.
  3. Откройте контекстное меню (⋮) и выберите пункт Создать диск из этого снапшота.
  4. В открывшемся окне заполните поля и нажмите кнопку Создать.

Новый диск отобразится в списке дисков проекта.

Создание диска из снапшота с помощью консольных клиентов

Тип диска может быть fast, basic, universal или iso. Вводить тип диска <type> надо в формате <Тип Диска>.<Название Зоны>, например, fast.ru-2a.

Для просмотра типа использующегося диска введите команду openstack volume type list.

Для создания диска из снапшота введите:

openstack volume create --snapshot <snapshot> --type <type> <volume>

Удаление снапшотов

Большое количество снапшотов замедляет работу диска. После выполнения операций со cнапшотом рекомендуется его удалить. Для долговременного хранения состояния диска создайте из снапшота диск.

Удаление снапшота в панели управления

Для удаления снапшота в панели управления:

  1. Перейдите в раздел Диски в проекте.
  2. Раскройте карточку диска и перейдите на вкладку Снапшоты.
  3. Откройте контекстное меню (⋮) и выберите пункт Удалить.

Снапшоты, ассоциированные с дисками, могут быть удалены, если при удалении диска будет выбрана опция Удалить снапшоты этого диска. Без предварительного удаления снапшотов удаление диска недоступно.

Примечание: при удалении облачного сервера выбор опции Удалить диски этого сервера приведёт к удалению дисков сервера и их снапшотов.

Удаление снапшота с помощью консольных клиентов

После завершения работы со снапшотом необходимо его удалить, чтобы была возможность создать новый снапшот, а также из-за того, что снапшоты замедляют работу диска.

Для удаления снапшота:

openstack volume snapshot delete <snapshot>

Клонирование облачного сервера

Для быстрого клонирования облачного сервера:

  1. Создайте новый снапшот диска или выберите один из существующих.
  2. На этапе создания сервера в разделе Источник перейдите на вкладку Снапшоты.
  3. Выберите нужный снапшот и завершите создание сервера.