mrcharles 8124483da8 feat(powerman): manage Cyclades PM10i PDU via powerman on pfv-tsys1
Set up centralized PDU management for a Cyclades AlterPath PM10i (10
controllable AC outlets) connected to pfv-tsys1 via a Prolific USB-to-DB9
serial adapter. powermand is now listening on 0.0.0.0:10101, making the
PDU manageable over the network from any host on the tailnet.

Scripts (powerman/):
- discover.sh: gather USB adapter, powerman state, device definitions
- setup.sh: idempotent setup — udev rule (stable symlink by serial number),
  powerman.conf with 10 outlet nodes, fix powermand dialout group, restart
  service. Overridable via env vars for other hosts/PDU types
- test-pdu.sh: validate control by cycling outlet 10 off then on (8/8 pass)
- status.sh: quick PDU status check

Issues fixed during setup:
- Config pointed at /dev/ttyUSB0 but adapter is at /dev/ttyUSB1 (fixed
  with udev symlink /dev/cyclades-pm10 pinned to adapter serial)
- powermand (user:powerman) lacked dialout group membership to open the
  serial device (fixed with usermod + udev GROUP="dialout")

Validation: outlet 10 turned off (confirmed), turned on (confirmed), then
cycled. All 10 outlets currently ON and manageable.

TODO tracked for Friday: rename outlets from generic (outlet-1..10) to
match physical devices, and change PDU admin password from factory default.

💘 Generated with Crush

Assisted-by: Crush:glm-5.2
2026-07-28 18:22:47 -05:00
2024-10-12 03:38:27 +00:00

PFVCluster

Unified infrastructure repo for the Known Element Enterprises Proxmox R&D cluster.

→ Current Status · → Documentation Index · → Agent Guidelines

Directory Structure

Directory Description
provisioning/ Server provisioning (SetupNewSystem.sh, security hardening, 2FA, NTP/DNS config, SNMP, Dell OMSA)
tests/ Test suite + VM validation harness
dns-cluster-setup/ Technitium DNS cluster replication scripts
perf/ Proxmox performance tuning, fleet audit, iperf, switch diagnostics
netinfra/ pfv-netinfra-01/02 DNS/NTP setup + audit scripts
switches/ Switch configuration captures
docs/ All documentation (see docmap)
vendor/ Vendored KNELShellFramework

Quick Start

Provision a new server

sudo bash provisioning/SetupNewSystem.sh

Validate on the sandbox VM

VM_ID=6000 ./tests/vm-validation.sh all

Deploy DNS cluster

cd dns-cluster-setup/ && ./setup.sh all

Deploy perf tunings

cd perf/ && ./deploy-tuning.sh

Architecture

  • Proxmox hosts: 7 standalone PVE installs managed via PDM
  • DNS: Technitium (authoritative) + Pi-hole (recursive) on pfv-netinfra-01/02
  • NTP: pfv-netinfra-01/02 (redundant, LAN IPs, stratum 2/3)
  • Production: Cloudron VPS in Reston VA (this cluster is R&D only)
  • Backups: Proxmox Backup Server (PBS)
S
Description
All things related to the PFV proxmox/k8s cluster .
Readme AGPL-3.0
6.8 MiB
Languages
Shell 69.6%
Python 25.8%
Perl 4.4%
Makefile 0.2%