Xarxa i inventari
Horizon coneix cada adreça de cada xarxa, els noms que hi apunten, el dispositiu que la fa servir i l'stack que la té reservada. Tot es llegeix lliurement; canviar-ho requereix el rol operator.
Xarxa
Network mostra el mapa d'una xarxa, un bloc /24 cada vegada, amb una casella per adreça. Cada casella indica el seu tipus i color, el seu nom i unes marques del que hi ha: un dispositiu, un stack, un servidor d'Horizon, un dispositiu que comparteix carpetes, una nota o un bloqueig. Una targeta resumeix la xarxa (CIDR, gateway, pool DHCP, dominis i ocupació) i una llegenda permet filtrar per tipus.
En obrir una adreça es veu tot el que Horizon en sap: IP i tipus, MAC, noms, l'stack que la reserva, el dispositiu i els servidors que hi ha, les notes i l'estat de la seva publicació a cada Pi-hole.
Noms
Una adreça té un nom principal (un subdomini d'un dels dominis de la xarxa) i qualsevol nombre d'àlies.
- El nom principal es publica als Pi-hole del domini com a host i com a reserva DHCP segons la seva MAC. Per això, en donar nom a una adreça també se'n demana la MAC (amb un botó per generar-ne una).
- Cada àlies és un CNAME cap al nom principal: un subdomini del mateix nom (
test.hori28.dev.horizon.moon.cat), del domini, o qualsevol hostname. - Cada nom arriba als Pi-hole abans de desar-se: si un Pi-hole el rebutja, no queda res a mitges.
Això substitueix la gestió manual d'IPs i DNS a Pi-hole: crear el registre a Horizon és el que fa que una VM nova rebi la seva IP per DHCP i resolgui per nom.
Reserves
Una adreça amb nom passa per tres estats:
| Estat | Quan |
|---|---|
| available | Lliure per a qualsevol stack |
| reserved | Assignada a un stack, encara que sigui un esborrany |
| in use | El seu stack està desplegat |
Una adreça reservada o en ús no es pot esborrar, i l'avís indica quin stack la té. Eliminar l'stack l'allibera. Les adreces amb un tipus que bloqueja l'assignació, el gateway, el broadcast i el pool DHCP no s'ofereixen mai a un stack.
Anotacions
Una adreça es pot marcar amb un tipus, un nom i notes en Markdown. Amb Ctrl/⌘-clic i Maj-clic se'n seleccionen diverses per editar-les juntes. Clear esborra tot el que hi ha desat en una adreça (anotació, MAC i noms, retirant-los primer de Pi-hole) sempre que res no la faci servir.
Inventari
Inventory llista cada dispositiu de la xarxa: servidors físics, virtuals, NAS, routers, ... Cadascun té categoria, estat, entorn, etiquetes, CPU, memòria i discos, i es pot filtrar per qualsevol d'aquests camps.
- Cada dispositiu pertany a una xarxa i s'hi arriba mitjançant una adreça: un registre amb nom que enllaça, o la seva pròpia IP i MAC.
- Guarda el seu sistema operatiu, CPU, nuclis, memòria, discos i qualsevol altra peça (GPU, targetes de xarxa, ...), a més del fabricant, el model, la data i el preu de compra, un logo i adjunts (enllaços a manuals, factures o runbooks).
- Un dispositiu pot indicar en quin altre s'executa (Runs on), de manera que un host llista el que corre en ell.
Dispositius d'stacks
Cada VM d'un stack crea (o enllaça) el seu propi dispositiu, del tipus Virtual server, que s'executa al dispositiu del seu servidor Proxmox. Mentre l'stack la mantingui, la seva xarxa, adreça, entorn, sistema operatiu i maquinari els defineix l'stack i apareixen bloquejats. En eliminar l'stack el dispositiu es manté i torna a ser editable.
Hosts de Proxmox
Un servidor Proxmox entra a l'inventari en registrar-se. El seu dispositiu mostra a més les dades que informa el node (CPU, sockets, nuclis, memòria, versions de Proxmox i del kernel), que s'actualitzen amb Refresh facts.
Carpetes compartides
Shared folders documenta el que publiquen els dispositius: el nom, el dispositiu que la serveix, la seva ruta, el seu tipus (NFS, SMB, S3, ...), etiquetes i notes. Horizon no canvia res al servidor; és un registre.
- Accés: la llista d'adreces que la poden fer servir, cadascuna en només lectura o lectura i escriptura. Una carpeta també pot ser pública en un dels dos modes.
- Muntatges: quin dispositiu la munta i on. Només es pot muntar des d'una adreça amb accés.
- Stacks: una plantilla pot demanar una carpeta (per exemple, l'NFS de les còpies de seguretat). El formulari només ofereix les carpetes a què l'adreça de la VM té accés en el mode necessari, i en acabar registra el muntatge al dispositiu de la VM.
Abans de desplegar alguna cosa que guarda còpies de seguretat (com PostgreSQL), dona accés d'escriptura a l'adreça de la VM a la carpeta NFS. Si no, Horizon no l'oferirà.
Perquè un dispositiu pugui publicar carpetes, s'activa l'opció shares folders a la seva fitxa.