Aumentando o tamanho da raiz de uma instância EBS de volta ec2

1

Eu sou bonito para novos serviços da web amazon. Eu tenho algumas instâncias do Ubuntu 10.04 em execução, mas hoje, quando eu tentei acessar a minha instância, eu recebi um erro dizendo "espaço em disco insuficiente na raiz". Eu consegui fazer o login depois de alguns minutos e removi todos os arquivos indesejados. Na descrição da instância, é mencionado que uma instância grande tem 850 GB de armazenamento, mas, para a raiz, é de apenas 8 GB. Me deparei com este artigo para aumentar o tamanho da raiz mas os comandos são executados a partir de um linux shell eu acho e eu tenho configuração de ferramentas ec2 na minha máquina windows.

Alguém poderia me dizer como executar esses comandos mencionados no artigo em um shell do Windows? Poucas perguntas que eu tenho sobre o EC2 em geral:

  1. qual é a diferença entre o armazenamento de 850 GB disponível para a grande instância e os 8 GB atribuídos?
  2. eu li que eu posso desanexar um volume de uma instância que foi mal e anexá-lo a um nova instância, como faço isso? E os dados salvos estarão disponíveis? neste volume?
por Nithin 19.12.2011 / 11:21

3 respostas

1

Existem várias possibilidades ao lidar com armazenamento na AWS.

Primeiro, há armazenamento de instâncias (os 850 GB que você está falando). Esse armazenamento é conectado à sua instância do EC2. Não pode ser movido ou recuperado para outra instância depois que a instância é eliminada. Isso é útil para armazenar coisas de baixa importância. (Arquivos do SO, arquivos a serem processados, ...). Quando a instância desaparece, seus dados também desaparecem.

Depois, há blocos EBS. São como discos rígidos que você pode anexar a qualquer instância do EC2 que mantenha seus dados persistentes, independentemente de a instância do EC2 ficar inativa ou não. Quando você precisar da unidade para outra instância, apenas desconecte-a e reconecte-a. O tamanho de um bloco EBS é predefinido. Quando você ficar sem espaço, adicione outro. O redimensionamento não é realmente possível (a menos que você use o modo hacky descrito no link que você forneceu).

Por fim, você pode usar um balde S3. Você pode armazenar quantos dados quiser nesses intervalos. Funciona um pouco como o EBS, mas não possui uma implementação real do sistema de arquivos. Alguns sites usam isso para hospedar suas imagens, etc.

Então, para o seu problema:

Você deve ser capaz de executá-los usando as ferramentas ec2. Q1 e amp; 2 Acho que me referi acima. Como sempre com a AWS. Não se apegue ao EC2-instaces. Quando eles ficarem ruins, livre-se deles e configure um novo usando uma imagem pré-fabricada e anexando seus blocos EBS.

    
por 19.12.2011 / 11:51
3

você pode encontrar uma explicação bem detalhada aqui: link

A Instância Grande tem 850 GB de tamanho de armazenamento e essa é dividida em dois volumes de 420 GB, mais 10 GB ou partição raiz. Os dois grandes volumes não são "ativados" no lançamento. Isso acontece quando você inicia as AMIs apoiadas pelo EBS.

    
por 19.12.2011 / 12:00
2

O armazenamento de 850 GB é efêmero - ele não persiste quando a instância é interrompida / terminada; você não incorrerá em nenhuma cobrança por ele (nem por E / S nem por armazenamento provisionado). Para o m1.large, os dois volumes geralmente aparecem como /dev/xvdb e /dev/xvdc . Para instâncias que têm uma raiz do EBS, o armazenamento efêmero é adicionado somente se incluído explicitamente (ou seja, com --block-device-mapping ) na AMI ( ec2-register ) ou no comando de inicialização ( ec2-run-instances ). Se uma instância não tiver o armazenamento adicionado, ela não poderá ser adicionada a ela (sem iniciar uma nova instância).

Dos comandos mencionados no artigo, todos aqueles que começam com ec2- * (ou seja, as ferramentas de API) podem ser executados de qualquer lugar (por exemplo, sua máquina do Windows ou outra instância ou a instância em questão). Enquanto os outros precisam ser executados na própria instância (via SSH).

Em vez de usar as ferramentas da API, você pode usar o console da AWS para realizar as mesmas tarefas (interromper, desconectar, capturar instantâneos, criar volume EBS, anexar) - mas será necessário executar o resize2fs diretamente na própria instância. / p>

Vale a pena observar que, por padrão, a maioria dos volumes de EBS de raiz não está definida para persistir após o término da instância (enquanto todos os volumes de EBS que você anexa manualmente persistirão por padrão). Você pode alterar esse comportamento usando: ec2-modify-instance-attribute INSTANCE_ID -b "MOUNT_POINT=VOLUME_ID:false" (o 'falso' especifica para não excluir no término). Você pode determinar se um volume do EBS será ou não excluído na finalização com ec2-describe-instance-attribute INSTANCE_ID -v -b (ou usando o console da AWS).

Enquanto o volume do EBS existir, todos os dados nele persistirão. Se uma instância 'ficar ruim' (supondo que não seja um problema com sua configuração), e o volume do EBS ainda existir, você poderá anexá-lo a outra instância, como volume raiz ou como um volume adicional, e deverá funcionar sem problema. É aconselhável, no entanto, que você tenha alguns instantâneos de seus volumes de EBS (eles não estão acima de falha) e que você separe seus dados do software (ou seja, use vários volumes do EBS).

Para colocar seus dados importantes em um volume do EBS (presumivelmente você já o possui no volume raiz), é possível anexar um segundo volume do EBS e montar -o para vincular os locais do volume raiz ao volume adicional. Apesar de um volume de raiz de armazenamento de instância estar disponível, o uso de uma raiz de EBS é preferível em termos de portabilidade e capacidade de recuperação.

    
por 19.12.2011 / 13:44

Tags