Gestão de Armazenamento
Nunca mais fique sem disco. Expanda um repositório cheio enquanto os seus contentores continuam a correr, devolva blocos eliminados ao pool e ensine a máquina a fazer os dois automaticamente.
Ver o tutorial
Um pool, repositórios em crescimento
Cada repositório é um ficheiro num pool de armazenamento partilhado. Os repositórios crescem online; eliminar dados dentro de um repositório não liberta nada por si só. O trim é o que devolve blocos ao pool.
Expandir online, sem tempo de inatividade
rdc term connect --machine <machine-name> --repository data-app --command 'dd if=/dev/zero of=big.bin bs=1M count=1200 status=none && df -h .' Preencha o repository com dados até o filesystem ficar cheio.
rdc repo expand --name data-app --machine <machine-name> --size 4G Expanda o repository online: o container LUKS e o filesystem crescem com os containers em execução.
rdc term connect --machine <machine-name> --repository data-app --command 'df -h .' Verifique o filesystem de dentro do repo: o novo tamanho já está ativo.
Recuperar com trim
rdc term connect --machine <machine-name> --repository data-app --command 'rm big.bin && df -h .' Exclua os dados dentro do repository: note que o pool ainda não diminui.
rdc repo trim --name data-app --machine <machine-name> Execute o repo trim para devolver os blocos liberados ao pool compartilhado: online, sem downtime.
Colocar no piloto automático
rdc repo policy set --machine <machine-name> --name data-app --auto-grow true --max-quota 8G --grow-step 25% --auto-trim true Defina uma política de tamanho: crescimento automático com um limite explícito, mais trim agendado.
rdc repo policy get --machine <machine-name> --name data-app Leia a política efetiva de volta: crescimento e trim agora são automáticos.
A máquina expande agora o repositório quando ultrapassa o limiar (até ao teto explícito definido) e aplica o trim de acordo com o calendário, gerido pelo temporizador storage-maintain, sem cron próprio.
A vista de saúde
rdc machine query --name <machine-name> --storage-health Verifique a saúde do armazenamento da máquina: uso por repo, estado do pool e economia de reflinks CoW.
Uso por repositório, estado do pool e quanto a partilha copy-on-write poupa, num único comando.
Concluído
Dezoito tutoriais: instalar, ligar, implementar, editar em qualquer lugar, criar forks sem receio, manter segredos em segurança, fazer backup a sério, passar para produção, monitorizar, versionar, migrar, sincronizar e nunca ficar sem disco. Os seus servidores voltaram a ser seus.