Ajustar al manual del M1000e, añadir diagramas y docs de operación

Especificaciones tomadas del manual del propietario del gabinete
PowerEdge M1000e (Dell, modelo BMX01, rev. A06, oct. 2019), que corrige
el spec sheet comercial usado hasta ahora.

Hardware:

- Peso máximo 200,5 kg, no 179. Profundidad 75,5 cm
- Seis fuentes y nueve ventiladores obligatorios, se usen 3 blades o 16.
  Toda bahía vacía necesita relleno
- Conector CEI/IEC C20 a 16 A. La fuente de 3.000 W exige 200-240 V
- Irrupción de 55 A por fuente durante 10 ms: un magnetotérmico de curva
  C salta, hace falta curva D
- Temperatura de funcionamiento continuo 10-35 °C
- ECM obligatorio con blades M630 de 120 W o más, o por encima de 30 °C

Red:

- Fabric A (ranuras A1/A2) es la Ethernet integrada de cada blade, así
  que no hacen falta tarjetas intermedias. Fabrics B y C sí las
  exigirían y no se usan
- Pendiente saber si en A1/A2 hay un switch o un módulo de paso a
  través: cambia el montaje de red por completo

Costes recalculados: el suelo fijo del chasis sube de 350 a ~500 W al
contar los nueve ventiladores, los módulos de I/O y las pérdidas de las
seis fuentes. 360 €/mes a 24/7, 59 €/mes por ventanas. Que las fuentes y
los ventiladores sean obligatorios convierte en hecho documentado lo que
antes era estimación: los pilotos parciales en el chasis son el peor
caso posible.

Documentación:

- assets/ con cuatro diagramas SVG propios: arquitectura, chasis, stack
  de software y modos de red
- docs/usabilidad.md: órdenes, flujos de trabajo, problemas conocidos y
  ergonomía del hardware
- Diagramas ASCII del panel frontal, el posterior y la topología de
  fabrics en hardware_m1000e.md
- Eliminada la parte de charla y divulgación, fuera del alcance del repo
This commit is contained in:
s1to 2026-08-08 19:58:25 +02:00
parent 74bfbe9437
commit 7caa240c2e
17 changed files with 1012 additions and 423 deletions

67
assets/red-modos.svg Normal file
View file

@ -0,0 +1,67 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 960 470" width="960" height="470" font-family="ui-monospace, 'DejaVu Sans Mono', Menlo, monospace">
<rect width="960" height="470" fill="#0f1720"/>
<text x="32" y="42" fill="#e6edf3" font-size="22" font-weight="bold" font-family="system-ui, sans-serif">Los dos modos de red</text>
<text x="32" y="65" fill="#7d8590" font-size="12.5">redroid_network_mode en group_vars/all.yml</text>
<!-- PORTMAP -->
<rect x="32" y="88" width="432" height="300" rx="8" fill="#161b22" stroke="#3fb950" stroke-width="1.5"/>
<text x="52" y="116" fill="#3fb950" font-size="15" font-weight="bold">portmap · por defecto</text>
<text x="52" y="136" fill="#7d8590" font-size="11">NAT de Docker. Funciona en cualquier sitio.</text>
<rect x="52" y="152" width="392" height="120" rx="5" fill="#1c2128" stroke="#444c56"/>
<text x="68" y="174" fill="#adbac7" font-size="11.5">blade-02 · 10.0.0.12</text>
<rect x="68" y="186" width="170" height="24" rx="3" fill="#1f6feb" fill-opacity="0.18" stroke="#1f6feb"/>
<text x="78" y="203" fill="#79c0ff" font-size="10.5">redroid-01 (interno)</text>
<rect x="68" y="214" width="170" height="24" rx="3" fill="#1f6feb" fill-opacity="0.18" stroke="#1f6feb"/>
<text x="78" y="231" fill="#79c0ff" font-size="10.5">redroid-02 (interno)</text>
<rect x="68" y="242" width="170" height="24" rx="3" fill="#1f6feb" fill-opacity="0.18" stroke="#1f6feb"/>
<text x="78" y="259" fill="#79c0ff" font-size="10.5">redroid-03 (interno)</text>
<g stroke="#3fb950" stroke-width="1.3" fill="none">
<path d="M 238 198 L 288 198"/><path d="M 238 226 L 288 226"/><path d="M 238 254 L 288 254"/>
</g>
<text x="296" y="202" fill="#adbac7" font-size="10.5">:5555</text>
<text x="296" y="230" fill="#adbac7" font-size="10.5">:5556</text>
<text x="296" y="258" fill="#adbac7" font-size="10.5">:5557</text>
<text x="296" y="180" fill="#7d8590" font-size="10">puertos del blade</text>
<text x="52" y="298" fill="#adbac7" font-size="11">adb → 10.0.0.12:5555, :5556, :5557</text>
<text x="52" y="320" fill="#3fb950" font-size="10.5">✓ No hace falta saber nada de la LAN</text>
<text x="52" y="336" fill="#3fb950" font-size="10.5">✓ redroid_adb_bind_ip limita la escucha</text>
<text x="52" y="356" fill="#d29922" font-size="10.5">✗ Los Android están tras NAT: no son</text>
<text x="52" y="371" fill="#d29922" font-size="10.5"> pares de red entre sí</text>
<!-- MACVLAN -->
<rect x="496" y="88" width="432" height="300" rx="8" fill="#161b22" stroke="#a371f7" stroke-width="1.5"/>
<text x="516" y="116" fill="#a371f7" font-size="15" font-weight="bold">macvlan · para oasis_mobile</text>
<text x="516" y="136" fill="#7d8590" font-size="11">IP real de LAN por el switch de Fabric A.</text>
<rect x="516" y="152" width="392" height="120" rx="5" fill="#1c2128" stroke="#444c56"/>
<text x="532" y="174" fill="#adbac7" font-size="11.5">blade-02 · 10.0.0.12</text>
<rect x="532" y="186" width="200" height="24" rx="3" fill="#a371f7" fill-opacity="0.18" stroke="#a371f7"/>
<text x="542" y="203" fill="#d2a8ff" font-size="10.5">redroid-01 → 10.0.0.20</text>
<rect x="532" y="214" width="200" height="24" rx="3" fill="#a371f7" fill-opacity="0.18" stroke="#a371f7"/>
<text x="542" y="231" fill="#d2a8ff" font-size="10.5">redroid-02 → 10.0.0.21</text>
<rect x="532" y="242" width="200" height="24" rx="3" fill="#a371f7" fill-opacity="0.18" stroke="#a371f7"/>
<text x="542" y="259" fill="#d2a8ff" font-size="10.5">redroid-03 → 10.0.0.22</text>
<g stroke="#a371f7" stroke-width="1.3" fill="none">
<path d="M 732 198 L 800 198"/><path d="M 732 226 L 800 226"/><path d="M 732 254 L 800 254"/>
</g>
<text x="808" y="230" fill="#adbac7" font-size="10.5">LAN</text>
<text x="790" y="180" fill="#7d8590" font-size="10">directo a la red</text>
<text x="516" y="298" fill="#adbac7" font-size="11">adb → 10.0.0.20:5555, .21:5555, .22:5555</text>
<text x="516" y="320" fill="#3fb950" font-size="10.5">✓ Los dos APKs se ven como pares reales</text>
<text x="516" y="336" fill="#3fb950" font-size="10.5">✓ Lo más cerca de "dos móviles en la misma wifi"</text>
<text x="516" y="356" fill="#f85149" font-size="10.5">✗ El anfitrión NO habla con sus propios</text>
<text x="516" y="371" fill="#f85149" font-size="10.5"> contenedores macvlan → coordinador aparte</text>
<!-- Aviso -->
<rect x="32" y="404" width="896" height="48" rx="6" fill="#161b22" stroke="#f85149" stroke-width="1.5"/>
<text x="52" y="424" fill="#f85149" font-size="11.5" font-weight="bold">S1 · adb no tiene autenticación y los contenedores son privilegiados</text>
<text x="52" y="442" fill="#7d8590" font-size="10.5">Quien alcance el puerto 5555 acaba siendo root en el blade. En macvlan, bind_ip no aplica: la única defensa es una VLAN aislada.</text>
</svg>

After

Width:  |  Height:  |  Size: 4.8 KiB