Como é o LVM, o Volume Lógico pode ser estendido simplesmente adicionando mais discos ( Volumes Físicos = volumes EBS) ao Grupo de Volumes .
-
Crie uma AMI a partir do seu servidor atual, para que você tenha um caminho de volta se as coisas derem errado.
- Crie 3 novos volumes do EBS (por exemplo, 3x 50 GB)
- Crie uma partição LVM em cada uma delas e
pvcreate
da partição
- Adicione os volumes ao Grupo de volumes usando
vgextend
- Estenda o volume lógico do MySQL com
lvresize
e depois estenda o sistema de arquivos (depende do seu tipo de fs, por exemplo, resize2fs
).
- Feito.
Você pode tentar expandir os volumes atuais do EBS ao invés de adicionar 3 novos, mas então você ainda precisará expandir todas as partições, atualizar o VG, expandir o LV e redimensionar o sistema de arquivos. É um pouco mais propenso a um erro, mas deve funcionar da mesma forma.
O benefício de usar vários volumes do EBS é que a largura de banda de IOPS é por volume. Ou seja mais volumes fornecem mais largura de banda de E / S. Pode não ser relevante se o seu servidor MySQL é apenas levemente carregado, mas ainda é bom saber.
Ou use o Amazon Aurora no lugar
Se eu fosse você, migraria seu banco de dados para Amazon Aurora , que é um Banco de dados gerenciado compatível com o MySQL. Não há praticamente necessidade de executar o MySQL auto-gerenciado no EC2, a menos que você faça algo muito especial. Com Aurora você terá:
- Gerenciamento automático de espaço em disco (não há mais falta de espaço, não há mais gerenciamento de volumes do EBS)
- Correção automática de SO e MySQL
- Failover automático em caso de falha do host físico subjacente (como você lida com isso na sua instância atual?)
- Backups automáticos com recuperação point-in-time (ótimo se você acidentalmente
TRUNCATE wrong_table_oops;
;)
- Tudo isso enquanto fornece quase 100% de compatibilidade com o padrão de estoque MySQL
Eu migrei muitos bancos de dados MySQL para o Aurora e, em quase todos os casos, era tão simples quanto mysqldump
do banco de dados antigo e carreguei isso no Aurora (alternativamente use AWS DMS ) e altere o nome do host do banco de dados no aplicativo. Simples assim e você economizará muita sobrecarga de gerenciamento MySQL daqui para frente.
Espero que ajude:)