Files
PFVCluster/install-utils-v2.sh
mrcharles 422999bf3c chore: initialize repo with full project state
Performance optimization engagement for a 7-host Proxmox R&D cluster.
Captures the accumulated work across host tuning, network analysis,
fleet assessment, and kubernetes architecture planning.

Contents:
- Host-side tunings (scripts/): CPU governor, swappiness, BBR, NFS
  nconnect, tuned profiles -- complete on 5 of 7 hosts
- Validation + benchmarking scripts: iperf matrix, bond/NFS fixes
- Collected host data (returned-logs/): check.sh output from all 7
  hosts + iperf results, including newly-validated pfv-tsys9
- AGENTS.md: operating context for AI agents
- PROJECT.md: board-ready fleet assessment with VM placement and
  storage redundancy analysis (40 VMs across 7 hosts)
- K8S.md: kubernetes architecture deep-dive covering cnode/wnode
  distribution, StorageClass design, and ETL/HPC workload planning

💘 Generated with Crush

Assisted-by: Crush:glm-5.2
2026-07-27 11:31:29 -05:00

38 lines
1.3 KiB
Bash
Executable File

#!/bin/bash
# install-utils-v2.sh - retry install without nstat package.
set -uo pipefail
SSH_OPTS=(-o BatchMode=yes -o ConnectTimeout=8 -o StrictHostKeyChecking=accept-new)
PKGS="sysstat jq numactl nvme-cli mtr-tiny dnsutils bmon"
for host in pfv-tsys6 pfv-tsys7; do
echo "=== [$host] installing: $PKGS ==="
ssh "${SSH_OPTS[@]}" "root@$host" \
"DEBIAN_FRONTEND=noninteractive apt-get update -qq 2>&1 | tail -2 && \
DEBIAN_FRONTEND=noninteractive apt-get install -y $PKGS 2>&1 | tail -10"
# sysstat enable (path varies by Debian version)
ssh "${SSH_OPTS[@]}" "root@$host" '
if [ -r /etc/default/sysstat ]; then
sed -i "s/^ENABLED=.*/ENABLED=\"true\"/" /etc/default/sysstat
systemctl enable --now sysstat 2>/dev/null
grep ENABLED /etc/default/sysstat
else
# Newer Debian (trixie) — sysstat cron/service auto-enabled
systemctl enable --now sysstat 2>/dev/null || echo "(sysstat auto via cron)"
fi
'
echo ""
done
# Verify
for host in pfv-tsys6 pfv-tsys7; do
echo "=== [$host] verification ==="
ssh "${SSH_OPTS[@]}" "root@$host" '
for p in sysstat jq numactl nvme mtr-tiny dig bmon; do
command -v "$p" >/dev/null 2>&1 && echo " ✓ $p" || echo " ✗ $p"
done
'
echo ""
done