Ir para o conteúdo

Guia de Descomissionamento de Site para Contribuidores

Este guia descreve como descomissionar um Dispositivo DoubleZero (DZD) ou sair de um site: como remover seus dispositivos e links da rede sem interromper os usuários conectados e, em seguida, excluí-los onchain.

O processo é executado em três estágios: limitar o dispositivo 31 dias antes do dia do descomissionamento, notificar os usuários conectados durante uma janela de aviso para que possam migrar e, então, drenar e excluir os links, interfaces e dispositivo no dia do descomissionamento.

⚠️ Coordene com a DoubleZero primeiro: Sempre alinhe com a equipe da DoubleZero antes de descomissionar um dispositivo ou site, e agende sua data e horário de descomissionamento conosco. Executamos algumas etapas do nosso lado nesse período, então precisamos estar agendados. Combine as datas e o plano antes de limitar um dispositivo ou drenar um link.

⚠️ Switches e links DZX: Se o dispositivo que você está descomissionando é um switch DZX, ou possui quaisquer links DZX, identifique os contribuidores afetados o mais cedo possível e notifique-os, pois eles podem precisar mover ou reconstruir seus links antes da sua data. Também crie um evento de manutenção no portal OPS para a data de descomissionamento.


Visão Geral

Quando Ação Quem
31 dias antes Limitar o dispositivo para que novos usuários não possam se conectar (--max-users 0) Contribuidor
14 dias antes Usuários conectados são notificados para migrar para outro dispositivo Equipe DoubleZero
Janela de aviso Usuários se reconectam a outros DZDs Usuários
Dia do descomissionamento Drenar e excluir os links, interfaces e dispositivo Contribuidor

Princípios:

  • Pare novos usuários cedo, mova os existentes gradualmente. Limitar o dispositivo cedo significa que ele apenas perde usuários a partir desse ponto. Usuários existentes continuam funcionando e migram no seu próprio ritmo.
  • Mantenha tudo ativo durante a janela de aviso. Não drene os links ou o dispositivo até o dia do descomissionamento, para que os usuários em migração mantenham o serviço normal.
  • A ordem de desmontagem é imposta pelo contrato. Você não pode excluir um link ou dispositivo enquanto ele estiver ativo, então os passos abaixo drenam primeiro e excluem por último.

⚠️ Aviso curto: Se você tem menos de 31 dias antes da saída, comece imediatamente. Limite o dispositivo agora e encurte as janelas para caber no tempo disponível. A ordem dos passos não muda.


Fase 1 — Limitar o dispositivo (31 dias antes)

Limite o dispositivo para que novos usuários não possam se conectar:

doublezero device update --pubkey <DEVICE_PUBKEY> --max-users 0

Os usuários existentes não são afetados e continuam funcionando. Repita para cada dispositivo sendo descomissionado no site. Os links e o dispositivo permanecem totalmente ativos, então os usuários conectados mantêm o serviço normal.


Fase 2 — Janela de aviso (14 dias antes)

A equipe da DoubleZero notifica os usuários conectados, pedindo que se reconectem a um DZD diferente antes da data de descomissionamento. Coordene com a equipe sobre quem contata quais usuários.

Nada é drenado durante esta janela, então os usuários mantêm o serviço normal. Os usuários se reconectam no seu próprio ritmo. Monitore a contagem de usuários com:

doublezero device list

Fase 3 — Dia do descomissionamento

Antes de começar, identifique exatamente o que precisa ser removido: o dispositivo, os links conectados a ele e as interfaces a serem limpas. Você pode encontrar tudo isso com:

doublezero device list | grep <CONTRIBUTOR_CODE>    # encontre seu dispositivo: seu código e pubkey
doublezero link list | grep <DEVICE_CODE>           # encontre os links conectados ao dispositivo
doublezero device interface list <DEVICE_CODE>      # liste as interfaces no dispositivo a remover

Execute estes passos em ordem. Cada passo desbloqueia o próximo.

⚠️ Antes da exclusão final do dispositivo: Notifique a Fundação DoubleZero antes de executar o último passo. A Fundação remove quaisquer usuários que não migraram a tempo, o que de outra forma bloquearia a exclusão, e completa quaisquer etapas necessárias do lado da fundação.

Faça soft-drain primeiro, depois hard-drain. Veja Drenagem de Links para saber o que cada estado faz.

doublezero link update --pubkey <LINK_PUBKEY> --status soft-drained
# quando o tráfego tiver saído:
doublezero link update --pubkey <LINK_PUBKEY> --status hard-drained

Repita para cada link nos dispositivos sendo removidos.

doublezero link delete --pubkey <LINK_PUBKEY>

Isso libera as interfaces que os links estavam usando.

3. Excluir as interfaces

doublezero device interface delete <DEVICE_CODE> <INTERFACE_NAME>

Repita para cada interface no dispositivo.

4. Drenar o dispositivo

doublezero device update --pubkey <DEVICE_PUBKEY> --status drained

Drenar remove o dispositivo do roteamento e encerra quaisquer sessões de usuário restantes. Também move o dispositivo para fora do seu estado ativo, permitindo que ele seja excluído.

5. Excluir o dispositivo

doublezero device delete --pubkey <DEVICE_PUBKEY>

O dispositivo só pode ser excluído quando não estiver mais ativo, não tiver links referenciando-o e não tiver interfaces restantes, o que os passos anteriores resolvem.


Cancelando ou adiando

Limitar e drenar são reversíveis até que você comece a excluir:

doublezero device update --pubkey <DEVICE_PUBKEY> --max-users <ORIGINAL_VALUE>   # restaurar capacidade
doublezero link update --pubkey <LINK_PUBKEY> --status soft-drained             # de hard-drained
doublezero link update --pubkey <LINK_PUBKEY> --status activated                # de volta ao ativo
doublezero device update --pubkey <DEVICE_PUBKEY> --status activated            # reverter drenagem do dispositivo

Excluir os links, interfaces ou dispositivo é permanente: isso fecha as contas onchain. Só comece a excluir quando a saída estiver confirmada.