Usando todo o espaço no Amazon EC2 - Camada média

1

Atualmente, estou executando uma instância reservada do Amazon EC2 - Medium Tier para hospedar sites de clientes. Recentemente parece que o espaço está começando a ficar baixo em /dev/sda1 - então eu pensei que seria melhor preparar ..

df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/sda1             8.0G  5.6G  2.5G  70% /
none                  848M  116K  848M   1% /dev
none                  853M     0  853M   0% /dev/shm
none                  853M   56K  853M   1% /var/run
none                  853M     0  853M   0% /var/lock
/dev/sda2             335G  195M  318G   1% /mnt

Eu vi esta pergunta: Como montar espaço em / dev / sda2 - que oferece uma solução, mas como você redimensiona uma partição ativa como sda1 para que eu não precise alterar a configuração atual? Ou existem maneiras melhores de utilizar o sda2?

    
por williamsowen 05.08.2011 / 10:53

2 respostas

2

NÃO USE O ESPAÇO EM / mnt! Este é um armazenamento efêmero e não irá persistir através de reinicializações - se você colocar coisas lá dentro, SERÁ PERDIDO. Algumas distribuições linux montam o armazenamento efêmero para você como uma conveniência, use-o para temp ou swap.

Você tem algumas opções.

Aumentar o tamanho da unidade raiz

Você não pode redimensionar / dev / sda1 na hora. Você pode redimensioná-lo no lançamento, no entanto. Isso exigirá tempo de inatividade, mas o que você pode fazer é

  1. Capture instantaneamente a instância existente em uma AMI. Isso deve dar-lhe ami-yyyyyy (eu espero que você esteja fazendo isso ou algo parecido para fazer backups ao longo do tempo!)

    ec2-stop-instances i-xxxxxx

    ec2-create-image --name my-image-name-v1.0 --description "My lovely Web Server" i-xxxxxxx

  2. Execute uma nova instância dessa imagem com um tamanho de unidade raiz maior

    ec2-run-instances -k ssh-key -z us-east-1b -t c1.medium -b "/dev/sda1=:50" ami-yyyyyy

  3. Agora você está executando a instância i-zzzzz. Dependendo de qual Linux você está usando, pode ser necessário redimensionar o sistema de arquivos para obter o espaço adicional. No Ubuntu, na caixa:

    sudo resize2fs /dev/sdf

  4. Troque agora o i-zzzzzz por i-xxxxxx no seu IP elástico ou ELB ou DNS ou no entanto você está anunciando para o mundo.

Adicione um segundo disco

Isso provavelmente é melhor - marginalmente mais caro, mas a melhor prática é NÃO colocar um monte de coisas em seu disco raiz, como se ele fosse preenchido com logs ou arquivos que você vai travar e ter um tempo triste de recuperação .

  1. Crie um volume EBS do tamanho desejado, digamos 20 GB. Isso te dá um volume, vol-yyyyyy.

    ec2-create-volume -z us-east-1b -s 20

  2. Anexe o volume à sua instância

    ec2-attach-volume vol-yyyyyy -i i-xxxxxx -d /dev/sdf

  3. Na instância, crie um sistema de arquivos e monte-o

    sudo mkfs -t ext3 /dev/sdf

    sudo mkdir -p /web

    sudo mount /dev/sdf /web

  4. Mova seu web root para lá.

  5. Adicione a nova unidade permanentemente ao / etc / mnttab

    /dev/sdf /opt/apps ext3 defaults,rw 0 0

  6. Capture sua nova imagem para a AMI como na etapa 1 - sempre uma boa prática.

Isto também tem a vantagem de ser capaz de fazer backup do EBS separadamente apenas capturando o volume, e também se você precisar matar um servidor e abrir outro, você pode separar o volume do / web EBS de um e anexá-lo para o outro, facilitando a migração de dados.

    
por 05.08.2011 / 16:07
-1

Eu associaria as coisas de montagem de /mnt a / , conforme necessário. Não é perfeito, mas é melhor que o nowt e é minimamente invasivo.

    
por 05.08.2011 / 10:57