Como redimensionar o volume root de uma instância EBS

1
8600

 

Saiba como redimensionar o espaço em disco do volume EBS root de uma instância EC2 com este tutorial passo-a-passo, repleto de imagens.

As instâncias default da Amazon possuem um tamanho pré-definido, como podemos observar na imagem abaixo, onde constatamos que Amazon Linux requer 8 GB de espaço para os arquivos de sistema, enquanto que o Red Hat é mais econômico, ocupando apenas 6 GB.

Root Device Size Amazon EC2

Apesar da maneira mais eficiente para aumentar o espaço se consistir em criar volumes EBS separados e anexá-los à instância, muitas pessoas por um motivo ou outro, precisam usar o mesmo espaço que seria destinado apenas para o sistema.

Na imagem abaixo, vemos o espaço em disco usado por uma instância recém criada com AMI Linux 64 bits. Vamos aprender a incrementar este espaço sem prejuízo dos arquivos nele armazenados.

Verificação do espaço em disco com o comando df -h

Entre no console de gerenciamento do Amazon EC2 e clique na instância cujo volume deseja alterar. Neste exemplo, eu batizei minha instância como “Resize Test”.

No menu suspenso, clique em “Instance Actions” e posteriormente em “Stop”.

Tutorial sobre como redimensionar o volume root de uma instância EBS - Imagem 1

Aguarde a instância parar totalmente, e clique em “Volumes” no menu do lado esquerdo. Você entrará no console de gerenciamento dos Volumes EBS, conforme mostra a figura abaixo.

Identifique o volume pelo ID da instância ou pelo nome. Neste exemplo, o ID é “i-2f1b584b” e o nome é “Resize Test”.

Selecione o volume da instância e depois clique em “More…”. Posteriormente, clique em “Create Snapshot” no menu suspenso.

Tutorial sobre como redimensionar o volume root de uma instância EBS - Imagem 2

Após clicar em “Create Snapshot”, aparecerá a caixa de diálogo abaixo. Não mude o volume pois já foi selecionado automaticamente. Insira um nome qualquer e uma descrição opcional. Clique no botão “Yes, Create”.

Tutorial sobre como redimensionar o volume root de uma instância EBS - Imagem 3

Tendo feito isto, será gerado um snapshot do volume. Snapshot é como um clone exato que vamos usar para criar um outro volume com tamanho maior.

Vamos em frente. No menu do lado esquerdo do console, clique no link “Snapshots” e selecione o snapshot que acabou de ser criado. Ele pode ser identificado pelo nome que você deu no passo anterior. Agora clique no botão “Create Volume”.

Tutorial sobre como redimensionar o volume root de uma instância EBS - Imagem 4

Atenção! Aqui é feito o redimensionamento.

Na caixa de diálogo abaixo, defina o tamanho do novo volume da sua instância. Este valor tem que começar com o tamanho exato do volume anterior, neste exemplo, 8GB e pode ir até no máximo 1 TB (o mesmo que 1.024 GB).

Não altere os dois outros parâmetros e clique no botão “Yes, Create”.

Tutorial sobre como redimensionar o volume root de uma instância EBS - Imagem 5

Mais uma vez, volte ao console de gerenciamento dos volumes EBS, clicando no link “Volumes” situado no menu do lado esquerdo.

Imediatamente você verá um novo volume com o tamanho que você definiu no passo anterior. Neste meu exemplo, 80GB. Em “State”, vemos que o volume está “available”, ou seja “disponível”.

Tutorial sobre como redimensionar o volume root de uma instância EBS - Imagem 6

Agora vamos simplesmente trocar o volume original de 8GB pelo novo volume de 80GB.

No console de gerenciamento dos volumes EBS, identifique o volume associado a instância que deseja modificar. Faça isso através do ID da instância ou do seu nome. Neste mesmo local, com o volume selecionado, clique no botão “More…” e depois em “Detach Volume”.

Tutorial sobre como redimensionar o volume root de uma instância EBS - Imagem 7

Confirme a ação “Detach Volume” na caixa de diálogo que aparecerá, clicando no botão “Yes, Detach”, conforme mostra a imagem abaixo.

Tutorial sobre como redimensionar o volume root de uma instância EBS - Imagem 8

Tendo desassociado o volume original de 8 GB, agora vemos dois volumes disponíveis com status “available” indicados pela bolinha azul.

Observe o volume original (vol-f3b6989f) de 8 GB e o novo volume (vol-59e5cc35) de 80 GB.

Este novo volume de 80 GB tem exatamente as mesmas informações do volume original de 8GB, só que com muito mais espaço livre disponível.

Vamos continuar?

Selecione o novo volume e clique no “botão More…”, depois em “Attach Volume”.

Tutorial sobre como redimensionar o volume root de uma instância EBS - Imagem 9

Na caixa de diálogo abaixo, selecione a instância que está sendo objeto do redimensionamento do volume. No meu exemplo, é a “Resize Teste”.

Tutorial sobre como redimensionar o volume root de uma instância EBS - Imagem 10

Depois, nesta mesma caixa de diálogo, no campo “Device”, digite /dev/sda1 e confirme, clicando no botão “Yes, Attach”.

Tutorial sobre como redimensionar o volume root de uma instância EBS - Imagem 11

Em alguns poucos segundos o volume será associado à instância conforme podemos ver na imagem abaixo. Prova disto é o status “in-use” e a confirmação “attached”.

Tutorial sobre como redimensionar o volume root de uma instância EBS - Imagem 12

Agora volte ao console de gerenciamento das instâncias, clicando no link “Instances” no menu lateral esquerdo.

Selecione a instância que estará parada, clique em “Instance Actions” e depois em “Start”. Confirme na caixa de diálogo que irá abrir e aguarde a instância inicializar.

Tutorial sobre como redimensionar o volume root de uma instância EBS - Imagem 13

Conecte-se via SSH na instância.

O usuário padrão do AMI Linux é “ec2-user”.

Insira o comando:

df –h

O resultado, a princípio desanimador, mostra que o espaço em disco ainda é o mesmo (7,9 GB). Não se preocupe, só é preciso mais um passo.

Tutorial sobre como redimensionar o volume root de uma instância EBS - Imagem 14

Insira o comando:

sudo resize2fs /dev/xvda1

Aguarde com paciência. Dependendo do espaço em disco que você definiu, esta operação poderá demorar mais que alguns segundos. Neste exemplo, com um volume de 80 GB a operação consumiu cerca de 1 minuto.

O resultado pode ser visto abaixo. Após o redimensionamento, o Linux foi capaz de enxergar o tamanho completo do novo volume ( 79 GB).

Note que é normal que haja uma pequena diferença do tamanho do volume e o que o sistema operacional mostra.

Tutorial sobre como redimensionar o volume root de uma instância EBS - Imagem 15

Esta operação preserva os dados da instância, alterando apenas o espaço em disco.

Como bônus, agora, mesmo que esta instância seja terminada, o volume root permanecerá intacto, tal com acontece com um volume EBS quando é associado posteriormente a criação da instância.

Após ter certeza que tudo deu certo, que os arquivos estão no lugar, não se esqueça de deletar o snapshot e o volume original de 8 GB, caso contrário, será cobrado pelo espaço em disco alocado. Porém, você poderá manter qualquer um dos dois como backup.

 

Retirado de Planeta Tecnologia

 

 

 

1 COMENTÁRIO

  1. Legal, aumentar é tranquilo. Mas já cansei de procurar uma forma de diminuir.
    Tinha um volume de 120Gbs e agora preciso diminuí-lo pois estou utilizando bem menos espaço.
    Sabe como fazer para reduzir o espaço de uma unidade?
    Obrigado

DEIXE UMA RESPOSTA

Please enter your comment!
Please enter your name here