Red Hat Training
A Red Hat training course is available for RHEL 8
12.4. Criação de volumes de instantâneos pouco previsíveis
O Red Hat Enterprise Linux fornece suporte para volumes de instantâneos pouco fornecidos.
Esta seção fornece uma visão geral dos comandos básicos que você usa para criar e crescer volumes de instantâneos pouco previsíveis. Para informações detalhadas sobre provisão fina de LVM, bem como informações sobre o uso dos comandos e utilitários LVM com volumes lógicos pouco previsíveis, consulte a página de manual lvmthin
(7).
Ao criar um volume fino, não se especifica o tamanho do volume. Se você especificar um parâmetro de tamanho, o snapshot que será criado não será um volume de snapshot fino e não utilizará o pool fino para armazenar dados. Por exemplo, o comando lvcreate -s vg/thinvolume -L10M
não criará um instantâneo fino, mesmo que o volume de origem seja um volume fino.
Podem ser criados instantâneos finos para volumes de origem pouco fornecidos, ou para volumes de origem que não são pouco fornecidos.
Você pode especificar um nome para o volume de instantâneos com a opção --name
do comando lvcreate
. O comando a seguir cria um volume de instantâneo do volume lógico de pouco volume vg001/thinvolume
que é chamado mysnapshot1
.
#lvcreate -s --name mysnapshot1 vg001/thinvolume
Logical volume "mysnapshot1" created #lvs
LV VG Attr LSize Pool Origin Data% Move Log Copy% Convert mysnapshot1 vg001 Vwi-a-tz 1.00g mythinpool thinvolume 0.00 mythinpool vg001 twi-a-tz 100.00m 0.00 thinvolume vg001 Vwi-a-tz 1.00g mythinpool 0.00
Um volume fino tem as mesmas características que qualquer outro volume fino. Você pode independentemente ativar o volume, estender o volume, renomear o volume, remover o volume e até mesmo fotografar o volume.
Por padrão, um volume de instantâneo é pulado durante os comandos normais de ativação. Para informações sobre como controlar a ativação de um volume lógico, consulte Ativação do volume lógico.
Você também pode criar um instantâneo de um volume lógico não previsto. Uma vez que o volume lógico não previsto não está contido dentro de um pool fino, ele é referido como um external origin. Os volumes de origem externa podem ser utilizados e compartilhados por muitos volumes de imagens de origem fina, mesmo de diferentes piscinas finas. A origem externa deve ser inativa e somente de leitura no momento em que o instantâneo com thinly-provisioned é criado.
Para criar um instantâneo de uma origem externa, você deve especificar a opção --thinpool
. O seguinte comando cria um pequeno volume do volume inativo somente de leitura origin_volume
. O nome do volume fino é mythinsnap
. O volume lógico origin_volume
torna-se então a origem externa do volume thin snapshot mythinsnap
no grupo de volume vg001
que utilizará o pool thin existente vg001/pool
. Como o volume de origem deve estar no mesmo grupo de volume que o volume de instantâneos, não é necessário especificar o grupo de volume ao especificar o volume lógico de origem.
# lvcreate -s --thinpool vg001/pool origin_volume --name mythinsnap
Você pode criar um segundo volume de instantâneo do primeiro volume, como no seguinte comando.
# lvcreate -s vg001/mythinsnap --name my2ndthinsnap
Você pode exibir uma lista de todos os antepassados e descendentes de um volume lógico de um pequeno instantâneo especificando os campos de relatório lv_ancestors
e lv_descendants
do comando lvs
.
No exemplo a seguir:
-
stack1
é um volume de origem em grupo de volumevg001
. -
stack2
é um retrato destack1
-
stack3
é um retrato destack2
-
stack4
é um retrato destack3
Além disso:
-
stack5
também é um instantâneo destack2
-
stack6
é um retrato destack5
$ lvs -o name,lv_ancestors,lv_descendants vg001
LV Ancestors Descendants
stack1 stack2,stack3,stack4,stack5,stack6
stack2 stack1 stack3,stack4,stack5,stack6
stack3 stack2,stack1 stack4
stack4 stack3,stack2,stack1
stack5 stack2,stack1 stack6
stack6 stack5,stack2,stack1
pool
Os campos lv_ancestors
e lv_descendants
mostram as dependências existentes, mas não rastreiam as entradas removidas que podem quebrar uma cadeia de dependência se a entrada foi removida do meio da cadeia. Por exemplo, se você remover o volume lógico stack3
desta configuração de amostra, a exibição é a seguinte.
$ lvs -o name,lv_ancestors,lv_descendants vg001
LV Ancestors Descendants
stack1 stack2,stack5,stack6
stack2 stack1 stack5,stack6
stack4
stack5 stack2,stack1 stack6
stack6 stack5,stack2,stack1
pool
Você pode configurar seu sistema para rastrear e exibir os volumes lógicos que foram removidos, e pode exibir toda a cadeia de dependência que inclui esses volumes, especificando os campos lv_ancestors_full
e lv_descendants_full
.