Maneira menos complicada de fazer a migração de dados do servidor?

3

Esta talvez seja uma pergunta muito específica / pessoal para S.O. mas aqui está:

Eu herdei um servidor atualmente executando um único disco rígido, que através da configuração padrão do servidor Ubuntu 16.04, está executando seu disco no seguinte esquema de partição:

sda1 : 512 Mb : Boot : primary/physical partition
sda2 : Rest of Disk : Extended Partition
sda5 : Rest of Disk : Logical, Linux LVM Partition

Existe um grupo de volumes no LVM, feito apenas deste disco. Está dividido em:

swap_1 (2.00 GB)
root (remaining space)

O objetivo final é mover o conteúdo (e a estrutura) dessa unidade para duas unidades RAID1 inicializáveis individualmente maiores.

Dito isto, o meu "objetivo" é para cada novo do novo sdb, o sdc é para:

/ dev / md0 será um raid1 entre sdb1 e sdc1, que será formatado e (esperançosamente) uma cópia de sda1. Md0 não será LVM, mas usado diretamente (para que possamos inicializar a partir dele)

/ dev / md1 será um raid1 entre sdb2 e sdc2. / dev / md1 será usado como o único PV para um novo VG, dividido de forma similar ao anterior (2 GB para swap e o restante para armazenamento).

Então, meu processo hipotético envolve a inicialização neste sistema com um CD de recuperação, configurando md0 e md1, criando o LVM no md1 e copiando os dados usando o dd de sda1 para md0 e / dev / vg1 / root para / dev / vg2 / root, respectivamente. E, claro, instalar o grub em / sdb e / sdc.

Os testes iniciais parecem promissores, mas existe uma maneira melhor de se fazer isso?

    
por X14U2NVX 12.10.2016 / 17:09

1 resposta

0

Não parece haver nada particularmente errado (ou complicado) com o que você está fazendo, embora você esteja usando o LVM, você tem outra opção: você pode usar pvmove para mover os dados para o novo array. . A vantagem é que você pode fazer isso on-line, quase eliminando o tempo de inatividade.

Para usar pvmove, você estenderia o grupo de volumes existente ( pvcreate /dev/md1 && vgextend existing-group /dev/md1 ), em seguida, usar pvmove para mover os volumes lógicos ( pvmove --atomic /dev/sda5 /dev/md1 ) e, finalmente, remover sda5 do grupo de volumes ( vgreduce existing-group /dev/sda5 ).

Você pode copiar / inicializar on-line (com dd ), porque não é usado durante a operação normal - basta desmontá-lo primeiro.

De qualquer forma, certifique-se de atualizar seu initramfs - agora ele precisa iniciar o mdraid, isso não aconteceu antes.

Planeje sua próxima reinicialização e tenha um disco de recuperação à mão caso algo dê errado (por exemplo, o initramfs não foi gerado corretamente). E, claro, testando & ler manpages primeiro é uma boa ideia.

    
por 12.10.2016 / 17:40