Temos uma instância AWS EC2 que possui um SSD EBS gp3 montado com cerca de 70 GB. Às vezes, fazemos algumas ordens scp para copiar novos arquivos para este EBS, mas no resto do tempo, a instância fará apenas operações de leitura no EBS.
Esta instância recebe solicitações da internet, e para cada solicitação ela deve ler 2.000 arquivos (1.000 de ~ 60kb e 1.000 de ~ 414b). Agora queremos incluir esta instância em um grupo de escalonamento automático. O que devemos fazer com este EBS? Pelo que li, posso:
- Crie as novas instâncias com um novo EBS que copia o EBS original cada vez que são criadas -> Ele copia GB e faz IOPS que no final significa gastar $ + tempo para copiar o EBS.
- Use EBS com vários anexos -> custos mais altos de armazenamento (é GB provisionado, não geral)
- Utilize o EFS. Menor velocidade e maior latência. Preço mais alto que o EBS, mas quando vários forem criados será mais barato.
- Use o NFS em uma microinstância com um grupo de escalonamento automático com min:1 max:1 para evitar falhas e anexe o EBS sempre que ele for criado.
- Utilize o GlusterFS. Acho que é muito caro na AWS. É isso?
Não creio que a longo prazo nunca teremos mais de 100 GB compartilhados. Qual você acha que é a melhor abordagem neste cenário? Estava pensando em 5), mas por causa dos custos estava pensando em 4).
Responder1
O EFS normalmente seria usado neste cenário, é feito para ser um armazenamento de rede compartilhado. Você também pode usar o EBS com vários anexos se o custo ou o desempenho do EFS não funcionarem para você.
1/4/5 não são boas opções IMHO. Use serviços em vez de servidores.