Atualização da nuvem (strongctl upgrade)
O strongctl upgrade aplica atualizações de correção numa nuvem StrongLinux, ou seja, versões novas dos pacotes dentro da mesma série OpenStack (2026.1). A nuvem continua no ar durante a atualização: as VMs seguem rodando e as APIs continuam atendendo.
Mudança de série (por exemplo 2026.1 → 2027.1, o caminho SLURP) não é coberta: o comando recusa quando o major de algum serviço OpenStack muda.
Canais
Os pacotes vêm do repositório apt da StrongLinux:
| Canal | Conteúdo |
|---|---|
stronglinux-1.0 | versões do lançamento |
stronglinux-1.0-updates | correções aprovadas (passaram pelo M3 e pelo Tempest no pipeline) |
stronglinux-1.0-security | correções de segurança |
stronglinux-1.0-proposed | candidatos, só para teste |
Os canais que a nuvem usa ficam em stronglinux_apt_suites no /etc/strongctl/globals.yml. Para testar candidatos, acrescente stronglinux-1.0-proposed à lista.
Passo a passo
- Atualize primeiro o próprio strongctl, porque os papéis e modelos novos vêm com ele (o
strongctl upgraderecusa rodar se houver versão nova dele):apt update && apt install --only-upgrade strongctl - Veja o que muda em cada nó (não altera nada):
strongctl upgrade --listar - Atualize:
strongctl upgrade
O que o comando faz
- Pré-checagem: roda o
verify, e a nuvem precisa estar saudável. Use--sem-verificarsó se souber o que está fazendo. - Fontes apt em todos os nós (papel
common). Depois levanta, por nó, os pacotesstronglinux-*com versão nova e recusa mudança de série. - Controllers, um de cada vez. Para cada um:
- atualiza os pacotes, mantendo as configurações locais (
--force-confold); o postinst de cada serviço reinicia só as units que já estavam rodando; - espera as units habilitadas voltarem ao ar e o Keystone responder;
- com HA, espera o Galera ficar
Synced.
Com HA, o HAProxy tira do balanceamento o controller que está reiniciando.
- atualiza os pacotes, mantendo as configurações locais (
- Demais nós (computação, rede e armazenamento), em lotes. O tamanho do lote é dado por
--serial; o padrão é 25% dos nós. - Deploy: grava a configuração nova, roda as migrações de esquema (
db sync, uma vez por nuvem) e reinicia o que mudou. - Migrações online de dados do nova e do cinder (
online_data_migrations, até concluir). - Verify final.
Rodar strongctl upgrade de novo sem pacotes novos não altera nada (changed=0).
Pacotes do Ubuntu
O strongctl upgrade cuida dos pacotes da StrongLinux. Os pacotes do Ubuntu (OVS/OVN, MariaDB, RabbitMQ, libvirt, kernel) seguem a política de atualização do sistema. Para atualizações que reiniciam o OVS, o libvirt ou o kernel, atualize um nó por vez e, nos computes, migre as VMs antes.
Validação
O teste tests/lxd/run-smoke.sh strongctl-upgrade faz um ciclo completo:
- Implanta uma nuvem all-in-one com o canal estável.
- Cria uma VM com IP flutuante e um volume.
- Inclui o canal proposed e roda
strongctl upgrade, medindo o tempo todo:- ping no IP flutuante;
- emissão de token a cada 5 s.
- Confere depois do upgrade:
- as versões novas instaladas;
- a VM no ar;
- uma VM nova;
- o segundo upgrade sem mudanças;
- o Tempest smoke.