rhel6 kickstart provisionamento de um par de SSDs como um LVM distribuído como / data

3

Eu estou fazendo algo parecido com isso e a formatação do sistema de arquivos está demorando muito, então estou achando que tenho algo errado.

sda está girando e sdb, sdc e sdd são SSD.

clearpart --drives=sda,sdb,sdc,sdd --initlabel
part swap --recommended --ondisk=sda
part / --size=4096 --grow --ondisk=sda
part pv.11 --size=100 --grow --ondisk=sdb
part pv.12 --size=100 --grow --ondisk=sdc
part pv.13 --size=100 --grow --ondisk=sdd
volgroup datavg --pesize=4096 pv.11 pv.12 pv.13
logvol /data --fstype=ext4 --name=datalv --vgname=datavg --size=100 --grow --percent=100 raid.11 raid.12 raid.13

Perguntas:

  1. Devo passar opções ext4?
  2. A minha faixa de 4M está correta?
  3. Devo ajustar mais alguma coisa no LVM?

O objetivo:

  1. distribua três discos SSD para obter desempenho sob uma carga do Cassandra.
  2. Suporte TRIM
  3. use as unidades corretamente para prolongar a vida útil

Obrigado!

Alan

    
por alan laird 25.06.2012 / 23:36

2 respostas

1

Se por 'stripe' você quer dizer o tamanho do seu PE, estamos falando de duas coisas diferentes aqui. Uma extensão física é apenas o tamanho de um bloco de armazenamento com o qual você pode estender seu volume lógico. Uma faixa é um bloco de armazenamento dividido em vários dispositivos de armazenamento. A extensão física não tem esse requisito.

O que eu acho que aconteceria, seria para o seu LV abranger todos os três discos, mas de uma maneira que preencha o disco sdb primeiro, depois o sdc e finalmente o sdd.

Não tenho certeza se o LVM é a maneira mais lógica de fazer isso. Pessoalmente, eu iria para um RAID de software definido com o mdadm. Isso tornaria um conjunto real de RAID e não um LV que abranja três discos.

Além disso: não há como saber se sua faixa de 4MiB tem o tamanho certo sem mais informações. O tamanho ideal de uma faixa é determinado pelo tamanho do tamanho médio da solicitação, que é o tamanho médio de uma solicitação de leitura do conjunto de discos. O que você precisa fazer é executar uma carga típica nessa máquina e usar SAR ou algo semelhante para medir o tamanho médio da solicitação. Em seguida, reinstale a máquina (ou apenas reformate o conjunto de RAID) e use esse tamanho médio de solicitação dividido por dois (!) A como o tamanho de um bloco de dados. O terceiro disco armazenará seus blocos de paridade (supondo que você esteja criando um conjunto de RAID 5). O tamanho da sua faixa será então (tamanho médio do repositório / 2) * 3, com dois fragmentos de dados e um bloco de paridade, todo o tamanho de (tamanho médio do repositório / 2).

Espero que esteja dizendo isso certo :) Estou ficando cansado. Eu vou passar por isso novamente amanhã para ver se eu faço algum sentido:)

Geralmente, o tamanho médio da solicitação seria da ordem de kilobytes, não de megabytes, mas não há como saber isso para sua situação específica sem medir.

Dito isso, tenho pouca experiência com o uso do LVM para esquemas semelhantes a RAID.

    
por 26.06.2012 / 00:43
1

Acabei fazendo algo assim:

# Partition clearing information
clearpart --drives=sda,sdb,sdc,sdd --initlabel
part swap --recommended --ondisk=sda
part / --size=4096 --grow --ondisk=sda
# create the ssd partitions
part pv.11 --size=100 --grow --ondisk=sdb
part pv.12 --size=100 --grow --ondisk=sdc
part pv.13 --size=100 --grow --ondisk=sdd

%post
vgcreate cassvg /dev/sdb1 /dev/sdc1 /dev/sdd1
lvcreate -l 100%FREE --stripes 3 --stripesize 4096 --name casslv cassvg
mkfs.ext4 -b 4096 -E stride=128,stripe-width=128 /dev/cassvg/casslv
mkdir -p /cache/cassandra/storage
echo "/dev/mapper/cassvg-casslv     /cache/cassandra/storage ext4   discard, noatime,nodiratime 1 2" >> /etc/fstab

Mudei o volume e a criação lógica para a seção% post para evitar um problema com o novo ambiente de kickstart initramfs em centos6.2. Criar o volume e a lógica na% pós-etapa cria-os com o nome do host correto para que sejam montados corretamente no tempo de execução.

Existem maneiras sofisticadas de lidar com o problema do initramfs, mas pareceu-me uma lacuna quando pude movê-las para% post para o volume de dados desse aplicativo.

    
por 09.08.2012 / 20:16

Tags