Jaime Silva Postado Agosto 9, 2015 Compartilhar Postado Agosto 9, 2015 O presente tutorial ensina como converter a partição root de um servidor CentOS 6.x em produção para RAID 1 via software e já foi usado pelo autor em pelo menos 4 servidores, os quais também tem o cPanel instalado. Importante: caso use o CloudLinux, será necessário desistalá-lo e em seguida reiniciar o servidor. Após o procedimento de conversão para RAID, você poderá reinstalá-lo. Este tutorial baseia-se nas seguintes premissas: 1º O sistema operacional não tem uma partição separada para /boot2º A partição root está em /dev/sda1 e a partição do disco secundário a ser usada para espelhamento é /dev/sdb13º Caso use um layout de particionamento diferente, você saberá adaptar este tutorial para as particularidades do seu caso 1. Particione o disco secundário de acordo com sua preferência, porém a partição que será usada como espelho - no nosso caso /dev/sdb1 - deverá ter exatamente o mesmo tamanho em bytes que a partição do sistema - no nosso caso /dev/sda1.Se quiser copiar o layout do disco primário para o secundário, execute:sfdisk -d /dev/sda | sfdisk --force /dev/sdb 2. Crie o dispositivo RAID. Certifique-se de usar o parâmetro “--metadata=0.9″ para garantir que o carregador de boot GRUB funcione:mdadm --create --verbose /dev/md0 --metadata=0.9 --level=1 --raid-devices=2 missing /dev/sdb1 a - Execute cat /proc/mdstat e verifique se a saída do comando será algo comoPersonalities : [raid1]md0 : active raid1 sdb1[1] 33554368 blocks [2/2] [UU] unused devices: <none> b - Crie um arquivo mdadm.conf com a configuração do RAID atual:mdadm --examine --scan >> /etc/mdadm.conf 3. Crie o sistema de arquivos no novo dispositivo RAID:mkfs.ext4 -L 'root' /dev/md0 4. Edite o arquivo /etc/fstab e mude a partição root do sistema operacional (possivelmente a partição atual é /dev/sda1 ou UUID=abcd1234-ef56-ab78-cd12-abcdef123456) para algo como:/dev/md0 / ext4 usrjquota=quota.user,jqfmt=vfsv0 1 1 5. Atualize o initrd e reconstrua o initramfs (faremos uma cópia para o caso de termos algum problema):cp -pf /boot/initramfs-$(uname -r).img /boot/initramfs-$(uname -r).bkpdracut --mdadmconf --add-drivers "raid1 raid0" --filesystems "ext4 ext3 swap tmpfs devpts sysfs proc" --force /boot/initramfs-$(uname -r).img $(uname -r) 6. Edite o menu de boot do GRUB (/boot/grub/grub.conf ou /boot/grub/menu.lst) e atualize a informação sobre a nova partição root, que deve ficar algo como: title CentOS (2.6.32-573.1.1.el6.x86_64) root (hd0,0) kernel /boot/vmlinuz-2.6.32-573.1.1.el6.x86_64 ro root=/dev/md0 nomodeset rd_NO_LUKS KEYBOARDTYPE=pc KEYTABLE=us LANG=en_US.UTF-8 SYSFONT=latarcyrheb-sun16 crashkernel=auto rd_NO_LVM rhgb quiet initrd /boot/initramfs-2.6.32-573.1.1.el6.x86_64.img a - Mude a partição root de root=/dev/sda1 ou root=UUID=abcd1234-ef56-ab78-cd12-abcdef123456 para root=/dev/md0b - Apague qualquer um destes parâmetros de boot: rd_NO_DM rd_NO_MD rn_NO_DM rn_NO_MD Possivelmente deve ter mais de um sistema operacional na lista mas você deve editar apenas o primeiro. 7. Monte o nova partição do sistema em RAID e faça cópia dos arquivos do sistema:mkdir /raid && mount /dev/md0 /raidrsync -aAxXv --exclude={"/dev/*","/proc/*","/sys/*","/tmp/*","/raid"} / /raid O último comando acima exclui a cópia de arquivos dos diretórios /dev, /sys, /proc, /tmp e do próprio ponto de montagem da partição RAID e não copia arquivos de outras partições. Ele copia permissões, proprietários, links simbólicos, dispositivos, ACLs e atributos extendidos. Recomendações:a. Faça cópia de todos os bancos de dados MySQL: mysqldump -u root --all-databases > /backup/todos_bancos_dados.sqlb. Use o rsync no diretório MySQL quando o servidor SQL estiver parado para evitar (?) corrupção de tabelas do tipo InnoDB:service mysql stoprsync -av /var/lib/mysql /raid/var/lib 8. Instale o GRUB na MBR (ou GPT) do disco secundário:grubgrub> root (hd1,0)grub> setup (hd1)grub> quit 9. Reinicie o sistema operacional:shutdown -r now 10. Se ocorreu tudo bem e o sistema iniciou, adicione a partição do disco primário ao RAID (a antiga partição do sistema):mdadm --add /dev/md0 /dev/sda1 Antes, porém, recomendo que faça backup. Digamos que esta partição é /dev/sda1 e haja espaço numa outra partição montada em /backup:mkdir /mnt/sda1 && mount /dev/sda1 /mnt/sda1rsync -avAX /mnt/sda1 /backup 11. Acompanhe o processo de cópia do disco em RAID e somente siga para o passo final quando o espelhamento estiver completo:cat /proc/mdstat 12. Recrie o carregador de boot no disco primário:grubgrub> root (hd0,0)grub> setup (hd0)grub> quit Importante: Se o sistema operacional não reiniciar,1. Entre no modo de recuperação (Rescue Mode na OVH e Hetzner)2. Monte a partição do sistema: /mount /dev/sda1 /media3. Edite o arquivo /media/etc/fstab e coloque a partição primária como sendo novamente /dev/sda1.4. Edite também /media/boot/grub/grub.conf e mude:a. root=/dev/md0 para root=/dev/sda1b. restaure o arquivo initramfs: mv -vf /media/boot/initramfs-$(uname -r).bkp /media/boot/initramfs-$(uname -r).img5. Saia do modo de recuperação e inicie o CentOS novamente. 0 Citar Não há bem nem mal que dure para sempre. Um dia tudo acaba. Link para o comentário Compartilhar em outros sites More sharing options...
Posts Recomendados
Participe da conversa
Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.