Posso detectar informações de RAID por hardware de dentro do Linux?

7

Quando estou dentro do Linux, posso obter as seguintes informações de lsblk (unidades irrelevantes removidas da saída):

NAME  MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
sda     8:0    0   298G  0 disk 
sdb     8:16   0   2.7T  0 disk

Quando eu puxo manualmente as unidades para fora do servidor, posso dizer que estou usando fisicamente as seguintes unidades:

0  Seagate 320GB
1  Seagate 320GB
2  Hitachi 1TB
3  Hitachi 1TB
4  Hitachi 1TB
5  Hitachi 1TB
6  [empty]
7  [empty]

Como há mais armazenamento físico no servidor do que o espaço disponível no Linux, isso significa que estou usando obviamente algum tipo de sistema RAID. Com um pouco de matemática, muitas vezes consigo descobrir que tipo de sistema RAID está sendo usado.

Existe uma maneira de detectar se estou usando RAID de hardware dentro do Linux , e descobrir todas as informações sobre ele (como tipo de RAID, unidades disponíveis) > sem desligando o servidor, puxando fisicamente as unidades e lendo suas etiquetas?

Essas informações podem ser coletadas de dentro do Linux ou o ponto de RAID de hardware torna o sistema subjacente "invisível" para o sistema operacional?

    
por IQAndreas 02.09.2015 / 22:15

5 respostas

11

Como obter as informações do RAID vai depender inteiramente do controlador RAID que você está usando. Muitas vezes, os fabricantes terão ferramentas que podem ser baixadas de seu site, que podem ser usadas para consultar o controlador RAID e obter essas informações.

Para descobrir qual controlador RAID você está usando, tente um dos seguintes comandos:

lspci

# lspci -knn | grep 'RAID bus controller'
08:00.0 RAID bus controller [0104]: 3ware Inc 9690SA SAS/SATA-II RAID PCIe [13c1:1005] (rev 01)

Aqui, as informações que procuramos são "3ware Inc 9690SA SAS / SATA-II RAID PCIe"

.

lsscsi

O comando não está disponível no Debian e no Ubuntu, mas um sudo apt-get install lsscsi rápido irá buscá-lo nos repositórios. Note que, se você não estiver usando um controlador RAID, o fabricante e o número do modelo do seu disco rígido aparecerão aqui.

# lsscsi
[2:0:0:0]    disk    AMCC     9690SA-8I  DISK  4.08  /dev/sda 
[2:0:1:0]    disk    AMCC     9690SA-8I  DISK  4.08  /dev/sdb 

Aqui vemos que o fabricante é "AMCC" e o número do modelo da placa RAID é "9690SA-8I" . Uma pesquisa rápida no Google mostra que este cartão também é conhecido como "AMCC 3Ware 9690SA-8I" .

lshw

Um terceiro método (que fornece um pouco de dados de saída) é usar o comando lshw . Execute lshw -class disk como root para exibir apenas os detalhes sobre os discos rígidos (que incluem informações de RAID).

Encontrando as ferramentas do controlador RAID

Agora que temos o fabricante e o número do modelo, deve ser possível encontrar as ferramentas em seu website ou, pelo menos, fornecer ao Google detalhes sobre como encontrar e usar as ferramentas para esse controlador específico.

Se o fabricante aparecer nessa lista, veja estas respostas para obter mais detalhes sobre como obter as informações de RAID para sua placa:

por 03.09.2015 / 11:17
3

Execute algo como lspci -knn | grep 'RAID bus controller' .

Usando essa saída, o Google (por exemplo) para LSI Logic / Symbios Logic MegaRAID SAS 2208 .

Localizar usa o utilitário storcli para interrogar o controlador RAID.

Faça o download e instale-o.

storcli64 show fornece o modelo do controlador especificamente e o índice do controlador, o número de grupos de unidades e as unidades virtuais.

storcli64 /c0/d0 show mostra seu primeiro controlador, primeiro grupo de unidades. Diz que você atacou os níveis, incluindo o aninhamento.

storcli64 /c0/eall/sall show all mostra todas as informações sobre todos os discos.

Mais dados de referência para esses comandos podem ser encontrados aqui:

link

Deve ser tudo que você precisa fazer. Basta usar a introspecção de hardware normal no Linux, depois no Google, baixar e instalar os utilitários que o acompanham.

@ As sugestões e comentários do Gene são absolutamente precisos.

Essa resposta é totalmente específica para a saída obtida do comando lspci e a capacidade de sua pesquisa no Google identificar o fabricante e obter a ferramenta de linha de comando correta.

Mas isso mostra que você pode obter tudo isso de um servidor, em uma linha de comando, sem parar a máquina, abrir o gabinete e extrair unidades, o que espero ser útil.

    
por 03.09.2015 / 01:28
2

Esta não é uma resposta única e não fornece todas as informações que você precisa, mas em um controlador RAID de hardware da Adaptec que usamos, ela deu algum acesso às unidades por meio de dispositivos / dev / sg1 / dev / sg2, etc. Poderíamos executar smartctl -a / dev / sg1 para obter muitas informações sobre a unidade física, incluindo fabricante, número do modelo, interface, número de série, tamanho e outros dados. / p>

Quanto a descobrir qual controlador está sendo usado, eu concordo com o comentário de Gene sobre o dmidecode, o dmesg e o lspci - esses seriam os meus primeiros a tentar também.

    
por 03.09.2015 / 00:56
0

3ware

Isto foi testado nos seguintes controladores RAID: 9690SA-8I

Por favor, deixe-me saber nos comentários se funcionou para o seu controlador específico, ou se as instruções precisam de atualização para o seu modelo.

Download

Primeiro, você precisa fazer o download da ferramenta tw_cli . Isso pode ser encontrado no site da Avago Technologies *:

* Não se preocupe, não é um site de terceiros; A 3ware foi comprada pela AMCC e depois vendida para a LSI Corporation, que mais tarde se tornou parte da Avago [ fonte ] . Para respaldar isso, observe que 3ware.com redireciona para a página relevante em avagotech.com .

Digite tw_cli na barra de pesquisa e navegue até encontrar um download chamado CLI Linux - from the 10.2.2.1/9.5.5.1 code sets (o número da versão mais recente pode ser diferente do que está listado aqui)

Extraia o arquivo zip e, em x86 ou x86_64 , você encontrará o binário tw_cli de que precisa. Salve este binário no seu servidor ou computador.

executando tw_cli

NOTA: (1) O utilitário de linha de comando pode precisar ser executado como root. (2) Execute-o como qualquer outro binário, adicionando-o ao caminho ou executando-o diretamente do diretório atual com ./tw_cli .

Primeiro, execute tw_cli show para listar quais controladores RAID estão disponíveis em seu sistema:

# tw_cli show
Ctl   Model        (V)Ports  Drives   Units   NotOpt  RRate   VRate  BBU
------------------------------------------------------------------------
c2    9690SA-8I    6         6        2       0       1       1      Charging 

Aqui podemos ver que há um controlador conectado, com o id de c2 (lembre-se desse id!), que tem 6 drives físicos conectados. Para obter mais detalhes sobre quais unidades estão conectadas à unidade, execute tw_cli /c2 show (substituindo /c2 pelo ID do seu controlador):

# tw_cli /c2 show
Unit  UnitType  Status         %RCmpl  %V/I/M  Stripe  Size(GB)  Cache  AVrfy
------------------------------------------------------------------------------
u0    RAID-1    OK             -       -       -       298.013   Ri     ON     
u1    RAID-5    OK             -       -       64K     2793.94   Ri     ON     

VPort Status         Unit Size      Type  Phy Encl-Slot    Model
------------------------------------------------------------------------------
p0    OK             u0   298.09 GB SATA  0   -            ST3320613AS         
p1    OK             u0   298.09 GB SATA  1   -            ST3320613AS         
p2    OK             u1   931.51 GB SATA  2   -            Hitachi HDS721010CL 
p3    OK             u1   931.51 GB SATA  3   -            Hitachi HDS721010CL 
p4    OK             u1   931.51 GB SATA  4   -            Hitachi HDS721010CL 
p5    OK             u1   931.51 GB SATA  5   -            Hitachi HDS721010CL 

O primeiro grupo mostra as configurações RAID sendo usadas. O segundo grupo mostra quais unidades estão atualmente fisicamente conectadas ao servidor.

Neste caso em particular, tenho duas configurações de RAID:

  • u0 - > As unidades p0 e p1 são ambas unidades de 300 GB do mesmo fabricante, configuradas para usar o RAID-1 (espelhos exatos entre si)
  • u1 - > Eu tenho quatro unidades Hitachi de 1 TB ( p2 a p5 ) configuradas usando RAID-5 ("uma das unidades" é usada para garantir que os dados sejam preservados se qualquer uma das outras unidades falhar). Isto significa (como podemos ver a partir do topo), u1 tem 3TB (ou melhor, 2793.94 GB ) de dados utilizáveis.

Ainda mais informações sobre o status e a integridade das unidades podem ser encontradas executando tw_cli /c2/u0 show ou tw_cli /c2/p0 show . Mais detalhes e comandos podem ser encontrados em páginas man .

    
por 03.09.2015 / 10:50
0

Para criar um perfil de armazenamento, eu faria o seguinte antes de executar lspci ou baixar qualquer coisa.

# cat /etc/fstab         What partitions get mounted at boot?

# sudo pvs               Are you running LVM? List the physical volumes

# cat /proc/mdstat       List software RAID devices & status

# for D in /dev/sd?; do parted $D print; done
                         If hardware RAID is being used, the "Model" field will list
                         the Mfr. name, otherwise the hard drive Mfr.
    
por 29.02.2016 / 18:56