Usada no script de bootstrap (curl das chaves). Sem barra final.
Lista gravada em config.yaml. Remover máquinas apaga fila, bloqueios e registros ligados no banco.
Gera o guia de onboarding (specs reais das máquinas, IPs, cache, acesso SSH/Jupyter, protocolo) com os dados atuais da base.
| Nome | Host (FQDN) |
|---|
Após incluir nome/host e clicar em Salvar, na máquina nova rode como root o comando abaixo (baixa o script do Checker e marca como executável):
clique em 'Gerar comando SSH' — token fresco (10 min) é embutido
Um caminho por linha, relativos ao diretório do projeto (ex.: keys/id_ed25519_lab).
Cole OpenSSH PEM completo (BEGIN OPENSSH PRIVATE KEY). No salvar, o servidor grava em keys/pasted_*, gera .pub e acrescenta automaticamente aos caminhos. Pode limpar esta caixa após salvar se quiser.
Quando ligado, o bootstrap instala tailscaled na máquina nova e autentica
na tailnet escolhida. A ficha /maquinas mostra o IP Tailscale do último poll.
api_token/authkey (legacy, expira com o usuário). Migre para um OAuth client: cole client_id + client_secret nos campos acima e salve.
Depois de adicionar a máquina acima e salvar, rode o script como root nela. Ele cria/atualiza o usuário configurado em ssh.user, instala permissões típicas (NVIDIA/sudo para nvidia-smi) e importa no authorized_keys as chaves públicas da instância Oracle via HTTP.
clique em "Carregar texto do script aqui embaixo" para ver colorido
| Máquina | Status | Expira | Serviços | Ação |
|---|
| Máquina | Por | Motivo | Expira |
|---|
Baseado no histórico salvo em monitoring. Se estiver vazio, aguarde novas coletas do Checker.
Baseado em processos acima do threshold (CPU) e também em presença via who e nvidia-smi quando disponível.
| Usuário | CPU somada (processos) | # processos | Presença (login) | Presença (GPU) | Última vez |
|---|
| Máquina | Amostras | Última | CPU (média / pico) | GPU mem (pico) | CPU (sparkline) |
|---|
Telemetria por placa (VRAM, utilização, temperatura, potência). Badges: ociosa VRAM alocada sem uso · throttle limitação térmica/elétrica · sem gpu nvidia-smi não respondeu.
Horas em que o usuário segurava ≥1GB de VRAM com a GPU a <10% de uso (squatting) — candidatos a liberar a placa.
Status HTTP dos serviços web em h2.ia.br (checados a cada ciclo). UP = respondeu (HTTP < 500).
| Serviço | Status | HTTP | Latência | Uptime (24h) | URL |
|---|
Volumes das máquinas (df a cada ciclo) + scan profundo noturno de usuários, pastas e tipos de arquivo. Usa o relatório local gerado por cron root na máquina quando disponível (cobertura total); sem ele, faz du/find via SSH (parcial em homes privados) e posterga sozinho se o disco estiver sob carga.
Tipo detectado no poll via lsblk (ROTA/TRAN) — M.2 SATA aparece como SSD SATA (formato não é distinguível em nível de bloco).
| Extensão | Tamanho | Arquivos (>10 MB) |
|---|
| Máquina | Pasta | Montagem | Tamanho |
|---|
| # | Usuário | Espera est. | Ações |
|---|
Estado da rede overlay. Configuração completa (provider/URL/tags) está na aba Infra; aqui você só opera.
| Nome | IP Tailscale | Online | Último visto | Expira em | Tags | Ações |
|---|---|---|---|---|---|---|
| Carregando… | ||||||
Registrar conecta via SSH, instala tailscaled se necessário e faz
tailscale up com authkey fresca (OAuth ou Headscale local). Idempotente.
| Máquina | Host | Status SSH | |
|---|---|---|---|
| — | |||
| ID | Username | Nome completo | Admin | Criado em | Ações |
|---|
| Data/Hora | Admin | Ação | Alvo | Detalhe |
|---|
Cor só onde há severidade. O cooldown por tipo evita repetir a mesma DM; ele começa a contar quando a mensagem chega a alguém.
| Máquina | Início | Fim | Motivo | Aplicado | Ação |
|---|
| Data | Alunos únicos | Total de sessões |
|---|
| Máquina | Mês | Uptime | Quedas | MTTR |
|---|