Eu configurei um novo servidor (meu primeiro com esta versão do Linux). Instalei um par de HDDs SATA de 160 GB em branco (um Seagate e um WDC, mas com exatamente o mesmo número de setores LBA) em uma máquina antiga, e decidi instalar o Scientific Linux 7.0 (remarcado RHEL) em um RAID 1 espelhada).
O primeiro problema foi que eu não consegui descobrir como instalar o SL / RHEL (Anaconda) para configurar as duas unidades para o RAID1. Então inicializei de um CD do PartedMagic e usei-o para fazer o particionamento.
Eu particionei as duas unidades de forma idêntica. Cada unidade possui uma grande partição para que o RAID1 + ext4 seja montado em /
, uma pequena partição (atualmente não usada) para RAID1 + ext3 seja montada em /safe
e uma partição de 3GB Linux Swap. Eu usei fdisk
para alterar os tipos de partições RAID em cada unidade para FD e mdadm
para criar as matrizes RAID:
mdadm --create --verbose /dev/md0 --raid-devices=2 --level=1 /dev/sda1 /dev/sdb1
mdadm --create --verbose /dev/md1 --raid-devices=2 --level=1 /dev/sda2 /dev/sdb2
Depois encerrei a inicialização do SL DVD e tentei instalar novamente. Desta vez, o instalador reconheceu os arrays RAID1, formatou-os para ext4 & ext3, respectivamente, e instalado sem problemas.
Neste ponto, tudo parecia bem. Eu desliguei, liguei de novo, e tudo deu certo. Até aí tudo bem.
Então eu testei a funcionalidade RAID1: desliguei o computador, removi uma das unidades e tentei inicializá-lo. Eu esperava que ele exibisse algumas mensagens de erro sobre a degradação da matriz RAID e, em seguida, viesse para a tela de login normal. Mas não funcionou. Em vez disso eu peguei:
Welcome to emergency mode! After logging in, type "journalctl -xb" to view
system logs, "systemctl reboot" to reboot, "systemctl default" to try again
to boot into default mode.
Give root password for maintenance
(or type Control-D to continue):
A mesma coisa acontece independentemente de qual unidade está faltando.
Isso não é bom! A finalidade das unidades espelhadas é garantir que o servidor continue em execução se uma das unidades falhar.
Ctrl-D só me faz voltar a repetir a mesma tela " Welcome to emergency mode
". O mesmo acontece ao digitar minha senha de root e, em seguida, " systemctl default
".
Então eu tentei uma experiência. No menu de inicialização eu pressionei e para editar os parâmetros de inicialização do kernel, e mudei " rhgb quiet
" para " bootdegraded=true
" e então inicializei. Sem alegria.
Isso me permite ver mais mensagens de status voando, mas não permitiu que a máquina inicializasse normalmente quando faltava uma unidade. Ele ainda parou na mesma tela " Welcome to emergency mode
". A seguir, vi a unidade Seagate removida e a unidade WDC restante. As últimas linhas se parecem com as seguintes (exceto que "...." denota onde me cansei de digitar):
[ OK ] Started Activation of DM RAID sets.
[ OK ] Reached target Encrypted Volumes.
[ 14.855860] md: bind<sda2>
[ OK ] Found device WDC_WD1600BEVT-00A23T0.
Activating swap /dev/disk/by-uuid/add41844....
[ 15.190432] Adding 3144700k swap on /dev/sda3. Priority:-1 extents:1 across:3144700k FS
[ OK ] Activated swap /dev/disk/by-uuid/add41844....
[ TIME ] Timed out waiting for device dev-disk-by\x2duuid-a65962d\x2dbf07....
[DEPEND] Dependency failed for /safe.
[DEPEND] Dependency failed for Local File Systems.
[DEPEND] Dependency failed for Mark the need to relabel after reboot.
[DEPEND] Dependency failed for Relabel all file systems, if necessary.
[ 99.299068] systemd-journald[452]: Received request to flush runtime journal from PID 1
[ 99.3298059] type=1305 audit(1415512815.286:4): audit_pid=588 old=0 auid=4294967295 ses=4294967295 subj=system_u:system_r:auditd_t:s0 res=1
Welcome to emergency mode! After logging in, type "journalctl -xb" to view
system logs, "systemctl reboot" to reboot, "systemctl default" to try again
to boot into default mode.
Give root password for maintenance
(or type Control-D to continue):
Portanto, parece que a instalação em unidades espelhadas RAID1 apenas dobrará a chance de uma falha de unidade derrubar o servidor (já que há duas unidades em vez de uma). Isso não é o que eu esperava conseguir com drives espelhados.
Alguém sabe como fazer o boot & executar "normalmente" (com uma matriz RAID1 degradada) quando uma unidade de disco rígido falhar?
Duas outras notas:
-
Sou novo no RHEL / SL / CentOS 7, portanto, na tela "Software Selection", durante a instalação do SL, tive que fazer algumas suposições. Eu escolhi:
"General Purpose System" +
Servidor FTP,
Servidor de Arquivo e Armazenamento,
Office Suite e Produtividade,
Hypervisor de virtualização,
Ferramentas de virtualização e
Ferramentas de desenvolvimento
-
Estou vendo alguns erros aparentemente inócuos:
ATA
x : softreset failed (device not ready)
O " x " depende de quais unidades estão instaladas. Eu recebo mais desses erros com duas unidades instaladas do que com apenas uma.