diff --git a/STATUS.md b/STATUS.md index c31be95..61c2f78 100644 --- a/STATUS.md +++ b/STATUS.md @@ -78,26 +78,28 @@ infrastructure, Proxmox cluster ops, and k8s control plane. | Issue | Impact | Status | |-------|--------|--------| +| **UCS + netinfra HA pairs both on tsys4** | tsys4 failure = DNS/DHCP/NTP + LDAP/AD fully dark | **CRITICAL — needs PDM migration** | +| **2 of 3 k3s cnodes on tsys4** | tsys4 failure = etcd quorum lost | **CRITICAL — needs PDM migration** | | Technitium AXFR uses port 53 (occupied by Pi-hole) | Zone transfer via rsync instead of native AXFR | Workaround in place | | `download.proxmox.com` unreachable from sandbox VM | 2 validation tests warn (environmental) | Not a code issue | | tsys4/5 hardware pending | Perf tuning incomplete on 2 hosts | Waiting on physical install | ## Pending (next session priorities) -1. **PDU: rename outlets** in `/etc/powerman/powerman.conf` to match physical - devices (Friday onsite) -2. **k8s workers:** Join wnodes to the k3s cluster (agents, not servers) -2. **k8s: confirm 3 decisions** for future Talos/ITAR cluster: - - Cnode count: 3 (recommended) vs 5 - - Cnode host spread: tsys9 + tsys1 + tsys3 (recommended, 3-host, local-lvm) - - Tailscale pattern: subnet router on `tailscale-router` (recommended) -3. Provisioning: add `tailscale up --accept-dns=false` after resolv.conf deploy -4. DNS: verify Pi-hole forwards knel.net to local Technitium on both nodes +1. **CRITICAL: Migrate HA pairs to separate storage** (PDM, 10 min): + - netinfra-02 (VMID 904): D2 → S3 (tsys4 → tsys5) + - ucs-02 (VMID 902): D5 → S2 (tsys4 → tsys5) +2. **CRITICAL: Fix k3s cnode quorum risk** (PDM, 5 min): + - Move cnode1 (VMID 906) or cnode2 (VMID 705) from tsys4 to tsys5 storage +3. **k8s workers:** Join wnodes to the k3s cluster (agents, not servers) +4. **PDU:** Rename outlets in powerman.conf to match physical devices (Friday) 5. Perf: complete tsys4/5 tuning after hardware install (Friday) 6. tsys2: rebuild from Win10 to Proxmox (k8s-dedicated host) -7. **k8s deferred topics** (tracked for future sessions): ETL tooling - (GDAL/PostGIS/xarray/Dask → RWX vs RWO), HPC scheduler (Argo/Volcano), - per-tenant vcluster policy templates, solar-aware scale-out +7. **k8s deferred topics:** ETL tooling, HPC scheduler, vcluster policy, + solar-aware scale-out + +> **See [`docs/proxmox/AUDIT-2026-07-28.md`](docs/proxmox/AUDIT-2026-07-28.md) +> for the full fresh audit with VM inventory and action items.** ## Infrastructure Summary diff --git a/docs/docmap.md b/docs/docmap.md index d0a0716..60609f1 100644 --- a/docs/docmap.md +++ b/docs/docmap.md @@ -23,6 +23,7 @@ Fleet operations, hardware, performance tuning, storage architecture. | Document | Description | Last Reviewed | |----------|-------------|---------------| | [`proxmox/PROJECT.md`](proxmox/PROJECT.md) | Comprehensive fleet report: 7 hosts, VM inventory, storage, recommendations | 2026-07-27 | +| [`proxmox/AUDIT-2026-07-28.md`](proxmox/AUDIT-2026-07-28.md) | Fresh fleet audit with current VM placements, storage redundancy analysis, pre-k8s action items | 2026-07-28 | | [`proxmox/TODO.md`](proxmox/TODO.md) | Pending physical hardware work (tsys2/4/5 Friday plan) | 2026-07-27 | | [`proxmox/K8S.md`](proxmox/K8S.md) | Kubernetes storage/host analysis (predecessor to [`k8s/`](k8s/)) | 2026-07-27 | diff --git a/docs/proxmox/AUDIT-2026-07-28.md b/docs/proxmox/AUDIT-2026-07-28.md new file mode 100644 index 0000000..75af724 --- /dev/null +++ b/docs/proxmox/AUDIT-2026-07-28.md @@ -0,0 +1,254 @@ +# Fresh Fleet Audit — 2026-07-28 + +> **Supersedes placement data in [`PROJECT.md`](PROJECT.md) §4-§8.** +> The tables in PROJECT.md reflect the 2026-07-27 audit; VMs have since been +> migrated via PDM. This file is the current ground truth. + +**Audit time:** 2026-07-28 19:55 CDT +**Method:** `qm list` + `qm config` on all 7 reachable hosts +**Hosts audited:** pfv-tsys1, pfv-tsys3, pfv-tsys4, pfv-tsys5, pfv-tsys6, pfv-tsys7, pfv-tsys9 +**Hosts offline:** pfv-tsys2 (Win10, pending rebuild), pfv-tsys8 (offline 5+ days) + +--- + +## 1. Host Summary + +| Host | CPU | Threads | RAM (GB) | Local Disk | Role | Tuning | +|------|-----|---------|----------|-----------|------|--------| +| pfv-tsys1 | i7-4770 Haswell | 8 | 31 | HDD 932 GB | Infrastructure | Done | +| pfv-tsys3 | Xeon E3-1535M v5 Skylake | 8 | 31 | **NVMe 477 GB** | Kubernetes | Done | +| pfv-tsys4 | Xeon E3-1246 v3 Haswell | 8 | **15** | 6 disks (HDD+SSD) | Storage (NFS+PBS) | Blocked (NIC+RAM) | +| pfv-tsys5 | Xeon E5620 Westmere | 8 | **94** | 6 disks (HDD+SSD) | Storage+Preprod | Blocked (cable) | +| pfv-tsys6 | 2x Xeon E5530 Nehalem | 16 | 127 | HDD (USB 2.0!) | Kubernetes | Done | +| pfv-tsys7 | 2x Xeon E5-2630 v2 Ivy Bridge | 24 | 191 | HDD (USB 2.0!) | Kubernetes | Done | +| pfv-tsys9 | i5-10500 Comet Lake | 12 | 24 | SSD 250 GB | Infrastructure | Done | + +**Changes since last audit:** +- tsys4 RAM still 15 GB (Friday 64 GB upgrade pending) +- tsys5 RAM is 94 GB (was documented as 96 GB) +- tsys6 RAM is 127 GB (was documented as 128 GB) +- tsys7 RAM is 191 GB (was documented as 192 GB) + +--- + +## 2. VM Fleet Inventory (Running VMs Only) + +### tsys1 — 11 running VMs (Infrastructure) + +| VMID | Name | Cores×Sockets | RAM (MB) | Disk | Storage | NFS Server | +|------|------|--------------|----------|------|---------|-----------| +| 100 | pfv-bms (HomeAssistant) | 2×1 | 4096 | 32 GB | D2 | tsys4 | +| 101 | tsys-ca | 2×1 | 2048 | 32 GB | D2 | tsys4 | +| 103 | **pfv-netinfra-01** | 2×1 | 2048 | 32 GB | D5 | tsys4 | +| 104 | tsys-librenms | 2×1 | 2048 | 50 GB | D2 | tsys4 | +| 105 | tsys-proxmox-datacenter | 2×1 | 2048 | 32 GB | D2 | tsys4 | +| 106 | **pfv-k8s-cnode3** | 2×1 | 4096 | 32 GB | **S3** | **tsys5** | +| 108 | **tsys-ucs-01** | 2×2 | 8000 | 32 GB | D2 | tsys4 | +| 109 | tailscale-router | 2×1 | 2048 | 25 GB | D2 | tsys4 | +| 114 | kali-tsys | 2×1 | 2048 | 32 GB | D2 | tsys4 | +| 117 | tsys-secure-workbench | 2×1 | 4000 | 32 GB | D2 | tsys4 | +| 102 | pfv-k8s-wnode-tsys1 | 4×1 | 4096 | 32 GB | S2 | tsys5 — **STOPPED** | + +### tsys3 — 1 running VM (Kubernetes) + +| VMID | Name | Cores×Sockets | RAM (MB) | Disk | Storage | NFS Server | +|------|------|--------------|----------|------|---------|-----------| +| 313 | **pfv-k8s-wnode-tsys3** | 8×1 | 28000 | 32 GB | D5 | tsys4 | + +### tsys4 — 1 running VM (Storage) + +| VMID | Name | Cores×Sockets | RAM (MB) | Disk | Storage | NFS Server | +|------|------|--------------|----------|------|---------|-----------| +| 400 | pfv-proxmox-backup-server | 2×1 | 2048 | 32 GB | local-lvm | LOCAL | + +### tsys5 — 16 running VMs (Storage + Preprod) + +| VMID | Name | Cores×Sockets | RAM (MB) | Disk | Storage | NFS Server | +|------|------|--------------|----------|------|---------|-----------| +| 509 | **pfv-k8s-wnode-tsys5** | 2×4 | 32000 | 32 GB | D2 | tsys4 | +| 5101 | sectestbed-siem | 2×2 | 10000 | 132 GB | local-nonprod | LOCAL | +| 5105 | sectestbed-awx | 2×2 | 4096 | 288 GB | local-nonprod | LOCAL | +| 5106 | sectestbed-k8s-cnode | 2×2 | 4096 | 32 GB | local-nonprod | LOCAL | +| 5107 | sectestbed-k8s-wnode | 2×2 | 4096 | 32 GB | local-nonprod | LOCAL | +| 5108 | sectestbed-librenms | 2×2 | 4096 | 32 GB | local-nonprod | LOCAL | +| 5109 | sectestbed-netinfra | 2×2 | 4096 | 32 GB | local-nonprod | LOCAL | +| 5111 | ultix-streaming | 2×2 | 9000 | 288 GB | T5-SSD | tsys5 (SSD) | +| 5112 | ultix-offstage | 2×2 | 6000 | 288 GB | local-lvm | LOCAL | +| 6000 | sectestbed-sandbox | 2×2 | 4096 | 32 GB | local-nonprod | LOCAL | +| 51010 | sectestbed-tctc | 2×2 | 4096 | 32 GB | local-nonprod | LOCAL | +| 51011 | sectestbed-cloudron | 2×2 | 4096 | 32 GB | local-nonprod | LOCAL | +| 51012 | sectestbed-hfnoc | 2×2 | 4096 | 32 GB | local-nonprod | LOCAL | +| 51013 | sectestbed-rancherplatform | 2×2 | 4096 | 32 GB | local-nonprod | LOCAL | +| 53100 | tsys-preprod-awx | 2×2 | 9000 | 160 GB | local-nonprod | LOCAL | +| 53101 | tsys-preprod-siem | 2×2 | 12000 | 32 GB | local-nonprod | LOCAL | +| 53102 | tsys-preprod-rancherplatform | 2×2 | 8000 | 32 GB | local-nonprod | LOCAL | + +### tsys6 — 3 running VMs (Kubernetes) + +| VMID | Name | Cores×Sockets | RAM (MB) | Disk | Storage | NFS Server | +|------|------|--------------|----------|------|---------|-----------| +| 100 | **pfv-k8s-wnode-tsys6** | 2×2 | 32000 | 32 GB | D5 | tsys4 | +| 600 | tsys-awx | 2×2 | 12000 | 32 GB | D2 | tsys4 | +| 601 | pfv-k8s-cnode4 | 4×1 | 4096 | 32 GB | D2 | tsys4 | + +### tsys7 — 6 running VMs (Kubernetes) + +| VMID | Name | Cores×Sockets | RAM (MB) | Disk | Storage | NFS Server | +|------|------|--------------|----------|------|---------|-----------| +| 701 | **pfv-k8s-wnode-tsys7** | 4×1 | 32000 | 32 GB | D5 | tsys4 | +| 702 | hfnoc-uisp | 2×2 | 8000 | 100 GB | D2 | tsys4 | +| 703 | rr-middleware | 2×1 | 2048 | 32 GB | D2 | tsys4 | +| 704 | TCTC | 4×1 | 6000 | 32 GB | D2 | tsys4 | +| 705 | **pfv-k8s-cnode2** | 4×1 | 4096 | 32 GB | D2 | tsys4 | +| 706 | pfv-k8s-cnode5 | 4×1 | 4096 | 32 GB | **S2** | **tsys5** | + +### tsys9 — 6 running VMs (Infrastructure) + +| VMID | Name | Cores×Sockets | RAM (MB) | Disk | Storage | NFS Server | +|------|------|--------------|----------|------|---------|-----------| +| 901 | tsys-siem | 2×1 | 8000 | 132 GB | D2 | tsys4 | +| 902 | **tsys-ucs-02** | 2×2 | 8000 | 50 GB | D5 | tsys4 | +| 903 | kali-rd | 2×1 | 2048 | 32 GB | D5 | tsys4 | +| 904 | **pfv-netinfra-02** | 2×1 | 4000 | 32 GB | D2 | tsys4 | +| 905 | **pfv-k8s-wnode-tsys9** | 4×1 | 4096 | 32 GB | **S2** | **tsys5** | +| 906 | **pfv-k8s-cnode1** | 2×1 | 4096 | 32 GB | D5 | tsys4 | + +--- + +## 3. Kubernetes Node Placement + +### 3.1 Active k3s cluster (cnode1/2/3 — deployed this session) + +| Cnode | VMID | Host | Disk | NFS Server | Quorum risk | +|-------|------|------|------|-----------|-------------| +| cnode1 | **906** | tsys9 | D5 | **tsys4** | **HIGH** | +| cnode2 | **705** | tsys7 | D2 | **tsys4** | **HIGH** | +| cnode3 | 106 | tsys1 | S3 | tsys5 | OK | + +**CRITICAL: 2 of 3 active cnodes on tsys4.** tsys4 failure = cnode1 + cnode2 die = 1 of 3 = **QUORUM LOST**. + +**Fix needed:** Move cnode1 or cnode2 to tsys5 storage (S2 or S3). One migration via PDM "Storage Migrate" solves this. + +### 3.2 Inactive cnodes (cnode4/5 — exist but not in k3s cluster) + +| Cnode | VMID | Host | Disk | NFS Server | +|-------|------|------|------|-----------| +| cnode4 | 601 | tsys6 | D2 | tsys4 | +| cnode5 | 706 | tsys7 | S2 | tsys5 | + +### 3.3 Worker nodes (wnodes) + +| Wnode | VMID | Host | Disk | NFS Server | RAM | Status | +|-------|------|------|------|-----------|-----|--------| +| wnode-tsys1 | 102 | tsys1 | S2 | tsys5 | 4 GB | STOPPED | +| wnode-tsys3 | 313 | tsys3 | D5 | tsys4 | 28 GB | Running | +| wnode-tsys5 | 509 | tsys5 | D2 | tsys4 | 32 GB | Running | +| wnode-tsys6 | 100 | tsys6 | D5 | tsys4 | 32 GB | Running | +| wnode-tsys7 | 701 | tsys7 | D5 | tsys4 | 32 GB | Running | +| wnode-tsys9 | 905 | tsys9 | S2 | tsys5 | 4 GB | Running | + +**Storage: 4 wnodes on tsys4, 2 on tsys5.** One wnode per host achieved. + +--- + +## 4. Critical HA Pairs — Storage Redundancy + +### 4.1 netinfra pair — FAILED (both on tsys4) + +| Role | VMID | Host | Disk | NFS Server | +|------|------|------|------|-----------| +| netinfra-01 | 103 | tsys1 | D5 | **tsys4** | +| netinfra-02 | 904 | tsys9 | D2 | **tsys4** | + +**tsys4 failure = DNS/DHCP/NTP goes fully dark.** + +**Fix:** Migrate netinfra-02 (VMID 904) from D2 (tsys4) to S3 (tsys5) via PDM. + +### 4.2 UCS pair — FAILED (both on tsys4) + +| Role | VMID | Host | Disk | NFS Server | +|------|------|------|------|-----------| +| ucs-01 | 108 | tsys1 | D2 | **tsys4** | +| ucs-02 | 902 | tsys9 | D5 | **tsys4** | + +**tsys4 failure = LDAP/AD goes fully dark.** + +**Fix:** Migrate ucs-02 (VMID 902) from D5 (tsys4) to S2 (tsys5) via PDM. + +### 4.3 Corrected placement (after migration) + +| VM | Host | Disk | NFS Server | Failure survival | +|----|------|------|-----------|-----------------| +| netinfra-01 | tsys1 | D5 | tsys4 | tsys4 dies → netinfra-02 alive on tsys5 | +| netinfra-02 | tsys9 | **S3** | **tsys5** | tsys5 dies → netinfra-01 alive on tsys4 | +| ucs-01 | tsys1 | D2 | tsys4 | tsys4 dies → ucs-02 alive on tsys5 | +| ucs-02 | tsys9 | **S2** | **tsys5** | tsys5 dies → ucs-01 alive on tsys4 | + +--- + +## 5. Storage Concentration + +| Storage target | # running VMs | % of fleet | +|---------------|--------------|------------| +| D2 (tsys4 WDC Red 3TB HDD) | 16 | 36% | +| D5 (tsys4 Hitachi 2TB HDD) | 10 | 23% | +| local-nonprod (tsys5 local HDD) | 12 | 27% | +| S2 (tsys5 Seagate 1TB HDD) | 3 | 7% | +| S3 (tsys5 Seagate 1TB HDD) | 1 | 2% | +| T5-SSD (tsys5 Samsung SSD) | 1 | 2% | +| local-lvm (various hosts) | 2 | 5% | + +**26 of 44 running VMs (59%) store their disks on tsys4 NFS exports.** +(Was 68% in the previous audit — improving but still concentrated.) + +--- + +## 6. Pre-k8s Buildout Action Items + +These must be done before or during k8s worker node bringup: + +### 6.1 CRITICAL: Migrate HA pairs to separate storage (PDM, 10 min) + +1. `netinfra-02` (VMID 904): D2 → S3 (tsys4 → tsys5) +2. `ucs-02` (VMID 902): D5 → S2 (tsys4 → tsys5) + +These are PDM "Storage Migrate" operations — no VM rebuild needed. + +### 6.2 CRITICAL: Fix active cnode quorum (PDM, 5 min) + +Move one active cnode from tsys4 to tsys5 storage: +- Best candidate: cnode1 (VMID 906) D5 → S2 (tsys4 → tsys5) +- Result: cnode1 on tsys5, cnode2 on tsys4, cnode3 on tsys5 +- tsys4 failure = cnode2 dies only = 2 of 3 = **quorum OK** + +### 6.3 Join workers to k3s cluster + +Current wnodes exist as VMs but are not joined to the k3s cluster. Need to: +1. Install k3s agent on each wnode (using join token from cnode1) +2. Configure `--node-ip=` on each +3. Label/taint per workload role + +### 6.4 Friday hardware work (still pending) + +- tsys4: PCIe NIC + 64 GB RAM (currently 15 GB) +- tsys5: 2nd ethernet cable + NVMe + D3 SSD relocation +- tsys2: Rebuild from Win10 to Proxmox + +--- + +## 7. Changes Since Previous Audit (2026-07-27) + +| What | Before | After | +|------|--------|-------| +| cnode1 VMID | 107 (tsys1, D5) | **906** (tsys9, D5) | +| cnode2 VMID | 603 (tsys6, D2) | **705** (tsys7, D2) | +| cnode3 storage | D2 (tsys4) | **S3** (tsys5) | +| cnode5 VMID | 602 (tsys6) | **706** (tsys7, S2 tsys5) | +| wnode-tsys1 | not listed | VMID 102 (S2 tsys5, stopped) | +| wnode-tsys3 RAM | 20 GB | **28 GB** | +| tsys-awx (600) | STOPPED | **Running** | +| DellOpenManageEnterprise (500) | not listed | VMID 500 (D7, stopped) | +| sectestbed-librenms (5108) | not listed | Running | +| k3s cluster | not deployed | **3-node HA live** (cnode1/2/3) | +| Console management | manual screen | **ser2net+conman on tsys4** | +| PDU management | manual | **powerman on tsys1** | diff --git a/perf/deploy-and-fix.sh b/perf/deploy-and-fix.sh index cee2915..11bcd03 100755 --- a/perf/deploy-and-fix.sh +++ b/perf/deploy-and-fix.sh @@ -3,7 +3,7 @@ set -uo pipefail HOST="$1" SSH_OPTS=(-o BatchMode=yes -o ConnectTimeout=8 -o ServerAliveInterval=10 -o StrictHostKeyChecking=accept-new) -SCRIPT_DIR="/home/reachableceo/projects/perfopt/scripts" +SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)/scripts" echo "=== Uploading fix script to $HOST ===" scp "${SSH_OPTS[@]}" "$SCRIPT_DIR/fix-bond-nfs.sh" "root@$HOST:/root/fix-bond-nfs.sh" >/dev/null 2>&1 diff --git a/perf/deploy-check.sh b/perf/deploy-check.sh index 262d3d7..6d82096 100755 --- a/perf/deploy-check.sh +++ b/perf/deploy-check.sh @@ -18,7 +18,7 @@ ############################################################################### set -uo pipefail -SCRIPT_DIR="/home/reachableceo/projects/perfopt" +SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)" CHECK_SH="$SCRIPT_DIR/scripts/check.sh" LOG_DIR="$SCRIPT_DIR/returned-logs" mkdir -p "$LOG_DIR" diff --git a/perf/deploy-tuning.sh b/perf/deploy-tuning.sh index d8199a6..b1f82cb 100755 --- a/perf/deploy-tuning.sh +++ b/perf/deploy-tuning.sh @@ -4,7 +4,7 @@ # Default mode is dry-run. Pass --apply to commit. Pass --no-nfs to skip NFS section. set -uo pipefail -SCRIPT="/home/reachableceo/projects/perfopt/scripts/apply-tunings.sh" +SCRIPT="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)/scripts/apply-tunings.sh" SSH_OPTS=(-o BatchMode=yes -o ConnectTimeout=8 -o ServerAliveInterval=10 -o StrictHostKeyChecking=accept-new) MODE="" EXTRA_FLAGS="" diff --git a/perf/finish-host.sh b/perf/finish-host.sh index 381cea5..9577c1a 100755 --- a/perf/finish-host.sh +++ b/perf/finish-host.sh @@ -22,7 +22,7 @@ if [ -z "$HOST" ]; then fi SSH_OPTS=(-o BatchMode=yes -o ConnectTimeout=8 -o ServerAliveInterval=10 -o StrictHostKeyChecking=accept-new) -SCRIPT_DIR="/home/reachableceo/projects/perfopt/scripts" +SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)/scripts" echo "===================================================================" echo " finish-host.sh — $HOST (mode: $MODE)" diff --git a/perf/iperf-full-matrix.sh b/perf/iperf-full-matrix.sh index e2bdc99..ea352e9 100755 --- a/perf/iperf-full-matrix.sh +++ b/perf/iperf-full-matrix.sh @@ -11,7 +11,7 @@ set -uo pipefail SSH_OPTS=(-o BatchMode=yes -o ConnectTimeout=8 -o ServerAliveInterval=10 -o StrictHostKeyChecking=accept-new) -LOG_DIR="/home/reachableceo/projects/perfopt/returned-logs/iperf" +LOG_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)/returned-logs/iperf" mkdir -p "$LOG_DIR" HOSTS=(pfv-tsys1 pfv-tsys3 pfv-tsys4 pfv-tsys5 pfv-tsys6 pfv-tsys7) diff --git a/perf/iperf-storage-tests.sh b/perf/iperf-storage-tests.sh index 22c3f4b..cf2f438 100755 --- a/perf/iperf-storage-tests.sh +++ b/perf/iperf-storage-tests.sh @@ -17,7 +17,7 @@ set -uo pipefail SSH_OPTS=(-o BatchMode=yes -o ConnectTimeout=8 -o ServerAliveInterval=10 -o StrictHostKeyChecking=accept-new) -LOG_DIR="/home/reachableceo/projects/perfopt/returned-logs/iperf" +LOG_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)/returned-logs/iperf" mkdir -p "$LOG_DIR" ALL_HOSTS=(pfv-tsys1 pfv-tsys3 pfv-tsys4 pfv-tsys5 pfv-tsys6 pfv-tsys7) diff --git a/perf/iperf-tsys6-tsys7.sh b/perf/iperf-tsys6-tsys7.sh index 6debd87..6aeb9d7 100755 --- a/perf/iperf-tsys6-tsys7.sh +++ b/perf/iperf-tsys6-tsys7.sh @@ -2,7 +2,7 @@ # iperf-tsys6-tsys7.sh - validate 2Gbps LACP between the two tuned hosts. set -uo pipefail SSH_OPTS=(-o BatchMode=yes -o ConnectTimeout=8 -o ServerAliveInterval=10 -o StrictHostKeyChecking=accept-new) -LOG_DIR="/home/reachableceo/projects/perfopt/returned-logs/iperf" +LOG_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)/returned-logs/iperf" mkdir -p "$LOG_DIR" TSYS6="10.100.100.6" diff --git a/perf/scripts/run-lacp-retrans-cause.sh b/perf/scripts/run-lacp-retrans-cause.sh index e67dbfd..ac54d4a 100644 --- a/perf/scripts/run-lacp-retrans-cause.sh +++ b/perf/scripts/run-lacp-retrans-cause.sh @@ -12,9 +12,9 @@ SSH=(-o BatchMode=yes -o ConnectTimeout=8 -o ServerAliveInterval=10 \ SCP=(-o BatchMode=yes -o ConnectTimeout=8 -o StrictHostKeyChecking=accept-new) RECV="pfv-tsys6"; SEND="pfv-tsys7" -LOCAL_LOG_DIR="/home/reachableceo/projects/perfopt/returned-logs/iperf" +LOCAL_LOG_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/../.." && pwd)/returned-logs/iperf" SCRIPT="lacp-retrans-cause.sh" -LOCAL_SCRIPT="/home/reachableceo/projects/perfopt/scripts/${SCRIPT}" +LOCAL_SCRIPT="$(cd "$(dirname "${BASH_SOURCE[0]}")/../.." && pwd)/scripts/${SCRIPT}" REMOTE_SCRIPT="/root/${SCRIPT}" mkdir -p "$LOCAL_LOG_DIR" diff --git a/perf/scripts/run-lacp-rx-distribution.sh b/perf/scripts/run-lacp-rx-distribution.sh index 3f057da..3957fc5 100755 --- a/perf/scripts/run-lacp-rx-distribution.sh +++ b/perf/scripts/run-lacp-rx-distribution.sh @@ -19,9 +19,9 @@ SCP=(-o BatchMode=yes -o ConnectTimeout=8 -o StrictHostKeyChecking=accept-new) RECV="pfv-tsys6" # receiver (we care most about its RX split) SEND="pfv-tsys7" # sender (control: its TX split) -LOCAL_LOG_DIR="/home/reachableceo/projects/perfopt/returned-logs/iperf" +LOCAL_LOG_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/../.." && pwd)/returned-logs/iperf" SCRIPT="lacp-rx-distribution.sh" -LOCAL_SCRIPT="/home/reachableceo/projects/perfopt/scripts/${SCRIPT}" +LOCAL_SCRIPT="$(cd "$(dirname "${BASH_SOURCE[0]}")/../.." && pwd)/scripts/${SCRIPT}" REMOTE_SCRIPT="/root/${SCRIPT}" mkdir -p "$LOCAL_LOG_DIR" diff --git a/perf/scripts/sw-capture-remote.sh b/perf/scripts/sw-capture-remote.sh index 95bd5d8..59e2858 100755 --- a/perf/scripts/sw-capture-remote.sh +++ b/perf/scripts/sw-capture-remote.sh @@ -51,7 +51,7 @@ esac BAUD=9600 HOST=root@pfv-tsys4 -HERE=/home/reachableceo/projects/perfopt +HERE=$(cd "$(dirname "${BASH_SOURCE[0]}")/../.." && pwd) LOCAL_DRIVER=$HERE/scripts/sw-capture.py LOCAL_CMDS=$HERE/switches/$SWITCH.cmds LOCAL_LOG=$HERE/returned-logs/$SWITCH.log